@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/393d45a2251e223a-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/8715d2ed531152f4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/c48b38fe8bb532f3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/48410f3df60da620-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7b89a4fd5e90ede0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/393d45a2251e223a-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8715d2ed531152f4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/c48b38fe8bb532f3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/48410f3df60da620-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/7b89a4fd5e90ede0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/393d45a2251e223a-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/8715d2ed531152f4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/c48b38fe8bb532f3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/48410f3df60da620-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/7b89a4fd5e90ede0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/393d45a2251e223a-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/8715d2ed531152f4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/c48b38fe8bb532f3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/48410f3df60da620-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/7b89a4fd5e90ede0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond Fallback;src:local("Times New Roman");ascent-override:95.27%;descent-override:29.59%;line-gap-override:0.00%;size-adjust:96.98%}.__className_07d15b{font-family:Cormorant Garamond,Cormorant Garamond Fallback;font-style:normal}.__variable_07d15b{--font-heading:"Cormorant Garamond","Cormorant Garamond Fallback"}@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7ab938503e4547a1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/13971731025ec697-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/7ab938503e4547a1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/13971731025ec697-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/7ab938503e4547a1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/13971731025ec697-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/7ab938503e4547a1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/13971731025ec697-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:DM Sans Fallback;src:local("Arial");ascent-override:94.90%;descent-override:29.66%;line-gap-override:0.00%;size-adjust:104.53%}.__className_0eeb07{font-family:DM Sans,DM Sans Fallback;font-style:normal}.__variable_0eeb07{--font-body:"DM Sans","DM Sans Fallback"}:root{--color-primary:#B8956A;--color-secondary:#C4A882;--color-accent:#D4B896;--color-background:#FAF7F2;--color-surface:#F0E8DE;--color-text:#2C2420;--color-text-muted:#8B7E74;--color-border:#E8D5C0;--color-error:#D4443B;--color-white:#FFFFFF;--color-dark:#1A1614;--font-heading-fallback:"Cormorant Garamond",Georgia,serif;--font-body-fallback:"DM Sans",Arial,sans-serif;--radius-button:8px;--radius-card:12px;--shadow-soft:0 20px 50px rgba(44,36,32,0.08);--container:1200px}*{box-sizing:border-box}html{overflow-x:clip;scroll-behavior:smooth}[id]{scroll-margin-top:96px}body{margin:0;background:var(--color-background);color:var(--color-text);font-family:var(--font-body),var(--font-body-fallback);font-size:16px;line-height:1.65;text-rendering:optimizeLegibility}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}img{max-width:100%}main{min-height:60vh}h1,h2,h3{color:var(--color-text);font-family:var(--font-heading),var(--font-heading-fallback);font-weight:500;line-height:1.05;margin:0}h1{font-size:clamp(3rem,7vw,6.75rem)}h2{font-size:clamp(2.3rem,4.5vw,4.6rem)}h3{font-size:clamp(1.55rem,2.2vw,2rem)}p{margin:0}.button{align-items:center;border-radius:var(--radius-button);display:inline-flex;font-weight:600;justify-content:center;min-height:48px;padding:.85rem 1.35rem;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.button:hover{transform:translateY(-1px)}.button--primary{background:var(--color-primary);color:var(--color-white)}.button--primary:hover{background:#a78158}.button--light{color:var(--color-dark)}.button--light,.icon-button{background:var(--color-white)}.icon-button{align-items:center;border:1px solid var(--color-border);border-radius:var(--radius-button);color:var(--color-text);cursor:pointer;display:inline-flex;height:44px;justify-content:center;width:44px}.site-header{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:rgba(250,247,242,.94);border-bottom:1px solid rgba(232,213,192,.74);position:-webkit-sticky;position:sticky;top:0;z-index:50}.site-header__inner{align-items:center;display:grid;grid-gap:1.5rem;gap:1.5rem;grid-template-columns:auto 1fr auto;margin:0 auto;max-width:var(--container);min-height:86px;padding:0 1.5rem}.site-header__brand{align-items:center;color:var(--color-text);display:inline-flex;gap:.75rem;min-width:max-content}.site-header__brand-mark{align-items:center;display:inline-flex;flex:0 0 auto;height:64px;justify-content:center;overflow:visible;width:48px}.site-header__brand-icon{height:58px;object-fit:contain;opacity:.92;width:auto}.site-header__brand-copy{display:grid;grid-gap:.16rem;gap:.16rem;line-height:1}.site-header__brand-name{font-family:var(--font-heading),var(--font-heading-fallback);font-size:2rem;font-weight:600;line-height:1}.site-header__brand-detail{color:var(--color-primary);font-size:.68rem;font-weight:800;letter-spacing:.28em;text-transform:uppercase}.desktop-nav{align-items:center;display:flex;gap:1.5rem;justify-content:center}.desktop-nav__item{color:var(--color-text-muted);font-size:.95rem;font-weight:600;position:relative}.desktop-nav__item>a{display:inline-flex;padding:1.7rem 0}.desktop-nav__item:hover{color:var(--color-text)}.desktop-nav__dropdown{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-soft);display:none;gap:.65rem;left:50%;min-width:190px;padding:.9rem;position:absolute;top:calc(100% - .25rem);transform:translateX(-50%)}.desktop-nav__item:hover .desktop-nav__dropdown{display:grid}.site-header__actions{align-items:center;display:flex;gap:.85rem}.language-switcher{align-items:center;border:1px solid var(--color-border);border-radius:var(--radius-button);display:inline-flex;overflow:hidden}.language-switcher__link{color:var(--color-text-muted);font-size:.78rem;font-weight:700;line-height:1;padding:.63rem .7rem}.language-switcher__link[aria-current=page]{background:var(--color-surface);color:var(--color-text)}.mobile-nav{display:none}.mobile-nav__layer{inset:0;overflow:hidden;overflow:clip;pointer-events:none;position:fixed;transition:visibility 0s linear .22s;visibility:hidden;z-index:60}.mobile-nav__layer.is-open{transition:visibility 0s;visibility:visible}.mobile-nav__overlay{background:rgba(26,22,20,.28);inset:0;opacity:0;pointer-events:none;position:absolute;transition:opacity .18s ease}.mobile-nav__overlay.is-open{opacity:1;pointer-events:auto}.mobile-nav__drawer{background:var(--color-background);border-left:1px solid var(--color-border);box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:2rem;height:100%;max-width:min(380px,88vw);padding:1.1rem;pointer-events:auto;position:absolute;right:0;top:0;transform:translateX(100%);transition:transform .22s ease;width:100%}.mobile-nav__drawer.is-open{transform:translateX(0)}.mobile-nav__top{align-items:center;display:flex;justify-content:space-between}.mobile-nav__links{display:grid;grid-gap:1.1rem;gap:1.1rem}.mobile-nav__link-group>a{color:var(--color-text);display:inline-flex;font-family:var(--font-heading),var(--font-heading-fallback);font-size:2rem;line-height:1.1}.mobile-nav__children{display:grid;grid-gap:.55rem;gap:.55rem;margin-top:.65rem;padding-left:1rem}.mobile-nav__children a{color:var(--color-text-muted);font-family:var(--font-body),var(--font-body-fallback);font-size:1rem}.mobile-nav__children a,.mobile-nav__link-group>a,.mobile-nav__top .language-switcher__link{align-items:center;min-height:44px}.mobile-nav__cta{margin-top:auto}.site-footer{background:var(--color-dark);color:rgba(255,255,255,.78)}.site-footer__inner{display:grid;grid-gap:2rem;gap:2rem;grid-template-columns:minmax(0,1.3fr) minmax(160px,.7fr) minmax(160px,.7fr);margin:0 auto;max-width:var(--container);padding:4rem 1.5rem}.site-footer__name{color:var(--color-white);font-family:var(--font-heading),var(--font-heading-fallback);font-size:2rem;line-height:1;margin-bottom:1.4rem}.site-footer__contact-item,.site-footer__links,.site-footer__social,.site-footer__social a{display:grid;grid-gap:.7rem;gap:.7rem}.site-footer__contact-item,.site-footer__social a{align-items:start;grid-template-columns:20px 1fr}.site-footer__contact-item,.site-footer__links a,.site-footer__social a{color:rgba(255,255,255,.72)}.section{padding:clamp(4.25rem,9vw,7rem) 1.5rem}.section--background{background:var(--color-background)}.section--surface{background:var(--color-surface)}.section-inner{margin:0 auto;max-width:var(--container)}.section-inner--narrow{max-width:820px}.section-heading{margin-bottom:2rem}.section-kicker{display:grid;grid-gap:1rem;gap:1rem;margin-bottom:2.5rem;max-width:760px}.contact-cta__description,.section-kicker p{color:var(--color-text-muted);font-size:1.1rem}.hero-block{align-items:center;background:var(--color-surface);display:grid;min-height:clamp(560px,calc(100svh - 82px),720px);overflow:hidden;padding:6rem 1.5rem;position:relative}.hero-block__media{inset:0;position:absolute;z-index:0}.hero-block__image{object-fit:cover;z-index:0}.hero-block__image--mobile{display:none}.hero-block__overlay{background:linear-gradient(90deg,rgba(26,22,20,.84),rgba(26,22,20,.76) 50%,rgba(26,22,20,.54) 78%,rgba(26,22,20,.14)),linear-gradient(0deg,rgba(26,22,20,.36),rgba(26,22,20,.05) 55%);inset:0;position:absolute;z-index:1}.hero-block:not(.hero-block--image) .hero-block__overlay{display:none}.hero-block__content{display:grid;grid-gap:1.75rem;gap:1.75rem;max-width:var(--container);position:relative;width:100%;z-index:2}.hero-block__copy{display:grid;grid-gap:1rem;gap:1rem}.hero-block--image .hero-block__subheading,.hero-block--image h1{color:var(--color-white);text-shadow:0 3px 24px rgba(0,0,0,.48)}.hero-block--image h1{font-size:clamp(2.6rem,5.4vw,5.4rem);max-width:790px}.hero-block--fr h1{max-width:1040px}.hero-block--de h1{white-space:pre-line}.hero-block__subheading{font-family:var(--font-body),var(--font-body-fallback);font-size:clamp(1rem,1.45vw,1.18rem);font-weight:500;line-height:1.65}.hero-block--image .hero-block__subheading{-webkit-border-start:1px solid rgba(255,255,255,.68);border-inline-start:1px solid rgba(255,255,255,.68);color:rgba(255,255,255,.9);max-width:560px;-webkit-padding-start:1.1rem;padding-inline-start:1.1rem}.hero-block:not(.hero-block--image) .hero-block__subheading{-webkit-border-start:1px solid var(--color-primary);border-inline-start:1px solid var(--color-primary);color:var(--color-text-muted);max-width:560px;-webkit-padding-start:1.1rem;padding-inline-start:1.1rem}.hero-block .button{font-size:1.1rem;justify-self:start;letter-spacing:.03em;padding:1rem 2.5rem}.rich-text{color:var(--color-text-muted);display:grid;grid-gap:1.25rem;gap:1.25rem}.rich-text h2,.rich-text h3{color:var(--color-text);margin-top:1rem}.rich-text ol,.rich-text ul{margin:0;padding-left:1.3rem}.rich-text--compact{font-size:.98rem;margin-top:1rem}.icon-list{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:repeat(3,minmax(0,1fr))}.icon-list__item{background:rgba(255,255,255,.56);border-radius:var(--radius-card);display:grid;grid-gap:.8rem;gap:.8rem;padding:1.4rem}.icon-list__icon{align-items:center;background:var(--color-background);border-radius:var(--radius-button);color:var(--color-primary);display:inline-flex;height:48px;justify-content:center;width:48px}.icon-list__item p{color:var(--color-text-muted)}.services-grid{display:grid;grid-gap:1.25rem;gap:1.25rem;grid-template-columns:repeat(3,minmax(0,1fr))}.service-card{background:var(--color-surface);border-radius:var(--radius-card);display:grid;min-height:100%;overflow:hidden;transition:box-shadow .18s ease,transform .18s ease}.service-card:hover{box-shadow:var(--shadow-soft);transform:translateY(-2px)}.service-card__media{aspect-ratio:4/3;display:block;position:relative}.service-card__media img{object-fit:cover}.service-card__body{color:var(--color-text-muted);display:grid;grid-gap:.75rem;gap:.75rem;padding:1.35rem}.service-card__title{color:var(--color-text);font-family:var(--font-heading),var(--font-heading-fallback);font-size:1.7rem;line-height:1.05}.service-card__learn-more,.service-card__price{color:var(--color-primary);font-weight:700}.service-card__learn-more{margin-top:.25rem}.service-categories-grid{display:grid;grid-gap:1.25rem;gap:1.25rem;grid-template-columns:repeat(2,minmax(0,1fr))}.service-category-card{background:var(--color-surface);border-radius:var(--radius-card);color:var(--color-text-muted);display:grid;min-height:100%;overflow:hidden}.service-category-card--available{transition:box-shadow .18s ease,transform .18s ease}.service-category-card--available:hover{box-shadow:var(--shadow-soft);transform:translateY(-2px)}.service-category-card--featured{align-items:stretch;grid-column:1/-1;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr)}.service-category-card--featured .service-card__media{aspect-ratio:auto;min-height:340px}.service-category-card--featured .service-card__body{align-content:center;padding:clamp(1.75rem,4vw,3.5rem)}.service-category-card--featured .service-card__title{font-size:clamp(2.35rem,4vw,4rem)}.service-category-card--coming-soon{background:var(--color-background);border:1px solid var(--color-border)}.service-category-card--coming-soon .service-card__media img{filter:saturate(.55);opacity:.72}.service-category-card__badge{color:var(--color-primary);font-size:.76rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.service-detail{background:var(--color-background);padding:clamp(3.25rem,7vw,6.5rem) 1.5rem}.service-detail__inner{display:grid;grid-gap:clamp(2rem,5vw,4rem);gap:clamp(2rem,5vw,4rem);margin:0 auto;max-width:var(--container)}.service-detail__back{align-items:center;color:var(--color-primary);display:inline-flex;font-weight:700;gap:.55rem;width:-moz-fit-content;width:fit-content}.service-detail__hero{align-items:center;display:grid;grid-gap:clamp(2rem,5vw,4.5rem);gap:clamp(2rem,5vw,4.5rem);grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr)}.service-detail__hero--text-only{grid-template-columns:minmax(0,820px)}.service-detail__media{aspect-ratio:16/11;border-radius:var(--radius-card);box-shadow:var(--shadow-soft);overflow:hidden;position:relative}.service-detail__media img{object-fit:cover}.service-detail__intro{display:grid;grid-gap:1.4rem;gap:1.4rem}.service-detail__lead{color:var(--color-text-muted);font-size:clamp(1.08rem,1.6vw,1.25rem)}.service-detail__facts{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.service-detail__facts div{background:var(--color-surface);border-radius:var(--radius-card);padding:1rem 1.1rem}.service-detail__facts dt{color:var(--color-text-muted);font-size:.82rem;font-weight:700;margin-bottom:.3rem;text-transform:uppercase}.service-detail__facts dd{color:var(--color-text);font-family:var(--font-heading),var(--font-heading-fallback);font-size:1.55rem;line-height:1.1;margin:0}.service-detail__cta{gap:.55rem;justify-self:start}.service-detail__content{background:var(--color-surface);border-radius:var(--radius-card);margin-left:auto;margin-right:auto;max-width:900px;padding:clamp(1.5rem,4vw,3rem);width:100%}.service-detail__rich-text{color:var(--color-text)}.faq-list{display:grid;grid-gap:.85rem;gap:.85rem}.faq-list__item{background:var(--color-background);border-radius:var(--radius-card);padding:1.1rem 1.25rem}.faq-list__item summary{color:var(--color-text);cursor:pointer;font-weight:700;list-style:none}.faq-list__item summary::-webkit-details-marker{display:none}.faq-list__item summary:after{color:var(--color-primary);content:"+";float:right;font-size:1.2rem}.faq-list__item[open] summary:after{content:"-"}.section--contact{background:var(--color-surface)}.contact-cta{align-items:start;display:grid;grid-gap:2rem 3rem;gap:2rem 3rem;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr)}.contact-cta>div:first-child{display:grid;grid-gap:1.2rem;gap:1.2rem}.contact-cta .button{justify-self:start;padding-inline:2.5rem}.contact-cta__details{background:var(--color-white);border-radius:var(--radius-card);display:grid;grid-gap:1rem;gap:1rem;padding:1.5rem}.contact-cta__details a,.contact-cta__details p{align-items:start;color:var(--color-text-muted);display:grid;grid-gap:.7rem;gap:.7rem;grid-template-columns:22px 1fr}.contact-cta__details svg{color:var(--color-primary);margin-top:.18rem}.image-text{align-items:start;display:grid;grid-gap:clamp(2rem,6vw,5rem);gap:clamp(2rem,6vw,5rem);grid-template-columns:repeat(2,minmax(0,1fr))}.image-text--left .image-text__media{order:-1}.image-text__media{aspect-ratio:4/3;border-radius:16px;overflow:hidden;position:relative}.image-text__media img{object-fit:cover}.image-text__content{display:grid;grid-gap:1.2rem;gap:1.2rem}.cta-banner{border-block:1px solid rgba(232,213,192,.62);padding:clamp(3rem,7vw,4.75rem) 1.5rem;position:relative}.cta-banner--light{background:linear-gradient(90deg,rgba(255,255,255,.68),rgba(250,247,242,.2) 48%,rgba(232,213,192,.46)),var(--color-background);border-color:rgba(184,149,106,.24);box-shadow:inset 0 1px 0 rgba(255,255,255,.78),inset 0 -1px 0 rgba(184,149,106,.18);padding-block:clamp(2.6rem,5vw,3.75rem)}.cta-banner--light:after{background:linear-gradient(90deg,transparent 8%,rgba(184,149,106,.32),transparent 92%);bottom:0;content:"";height:2px;inset-inline:0;position:absolute}.cta-banner--dark{border-color:rgba(250,247,242,.12);background:var(--color-dark)}.cta-banner__inner{align-items:center;display:grid;grid-gap:clamp(1.5rem,5vw,4rem);gap:clamp(1.5rem,5vw,4rem);grid-template-columns:minmax(0,700px) auto;justify-content:center;max-width:1040px}.cta-banner__inner>div{display:grid;grid-gap:.75rem;gap:.75rem;max-width:700px}.cta-banner--light .cta-banner__inner{gap:clamp(1.4rem,3.6vw,3rem);grid-template-columns:minmax(0,620px) auto;max-width:920px}.cta-banner--light .cta-banner__inner>div{max-width:620px}.cta-banner h2{font-size:clamp(2rem,3.4vw,3.25rem);text-wrap:balance}.cta-banner .button{justify-self:start;white-space:nowrap}.cta-banner p{color:rgba(44,36,32,.72);font-size:1.1rem}.cta-banner--dark h2{color:var(--color-white)}.cta-banner--dark p{color:rgba(250,247,242,.78)}.booking-section{background:var(--color-surface);padding:clamp(3.5rem,8vw,6.5rem) 1.5rem}.booking-shell{display:grid;grid-gap:2rem;gap:2rem;margin:0 auto;max-width:var(--container)}.booking-shell--success{max-width:780px}.booking-intro{display:grid;grid-gap:1rem;gap:1rem;max-width:820px}.booking-intro p{color:var(--color-text-muted);font-size:1.1rem}.booking-eyebrow{color:var(--color-primary);font-size:.8rem;font-weight:700;text-transform:uppercase}.booking-steps{display:grid;grid-gap:.8rem;gap:.8rem;grid-template-columns:repeat(5,minmax(0,1fr));list-style:none;margin:0;padding:0}.booking-steps li{align-items:center;background:rgba(255,255,255,.52);border:1px solid rgba(232,213,192,.72);border-radius:var(--radius-button);color:var(--color-text-muted);display:flex;gap:.7rem;min-height:58px;padding:.75rem}.booking-steps span{align-items:center;background:var(--color-white);border:1px solid var(--color-border);border-radius:999px;display:inline-flex;flex:0 0 auto;font-size:.85rem;font-weight:700;height:30px;justify-content:center;width:30px}.booking-steps p{font-size:.9rem;font-weight:700}.booking-steps li.is-active,.booking-steps li.is-complete{background:var(--color-white);border-color:var(--color-primary);color:var(--color-text)}.booking-steps li.is-active span,.booking-steps li.is-complete span{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-white)}.booking-layout{align-items:start;display:grid;grid-gap:1.25rem;gap:1.25rem;grid-template-columns:minmax(0,1fr) minmax(280px,.35fr)}.booking-panel,.booking-side,.booking-success{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:0 18px 45px rgba(44,36,32,.06)}.booking-panel{display:grid;grid-gap:1.8rem;gap:1.8rem;min-height:520px;padding:clamp(1.25rem,3vw,2rem)}.booking-step{display:grid;grid-gap:1.35rem;gap:1.35rem}.booking-side h2,.booking-step h2,.booking-success h1{font-size:clamp(2rem,3vw,3.1rem)}.booking-service-grid{display:grid;grid-gap:.85rem;gap:.85rem;grid-template-columns:repeat(2,minmax(0,1fr))}.booking-button,.booking-days button,.booking-service-option,.booking-slots button{cursor:pointer}.booking-service-option{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-button);color:var(--color-text);display:grid;grid-gap:1rem;gap:1rem;min-height:142px;padding:1rem;text-align:left;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease}.booking-service-option.is-selected,.booking-service-option:hover{background:#fffaf4;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(184,149,106,.14)}.booking-service-option strong{display:block;font-family:var(--font-heading),var(--font-heading-fallback);font-size:1.45rem;font-weight:600;line-height:1.1}.booking-service-option small{color:var(--color-primary);display:block;font-size:.8rem;font-weight:700;margin-top:.35rem}.booking-service-option__facts{color:var(--color-text-muted);display:grid;grid-gap:.25rem;gap:.25rem;font-size:.93rem}.booking-calendar-grid{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.booking-month{border:1px solid var(--color-border);border-radius:var(--radius-button);padding:1rem}.booking-month h3{font-size:1.55rem;margin-bottom:1rem}.booking-days,.booking-weekdays{display:grid;grid-gap:.35rem;gap:.35rem;grid-template-columns:repeat(7,minmax(0,1fr))}.booking-weekdays span{color:var(--color-text-muted);font-size:.76rem;font-weight:700;text-align:center}.booking-days button,.booking-days span{align-items:center;aspect-ratio:1;display:inline-flex;justify-content:center;min-width:0}.booking-days button{background:var(--color-white);border:1px solid transparent;border-radius:var(--radius-button);color:var(--color-text);font-size:.95rem;font-weight:700}.booking-days button.is-selected,.booking-days button:hover{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(184,149,106,.14)}.booking-days button.is-selected{background:var(--color-primary);color:var(--color-white)}.booking-days button:disabled{background:#f7f0e8;border-color:transparent;box-shadow:none;color:rgba(139,126,116,.42);cursor:not-allowed}.booking-slots{display:flex;flex-wrap:wrap;gap:.7rem}.booking-slots button{align-items:center;background:var(--color-white);border:1px solid var(--color-border);border-radius:999px;color:var(--color-text);display:inline-flex;font-weight:700;gap:.45rem;min-height:44px;padding:.55rem .95rem}.booking-slots button.is-selected,.booking-slots button:hover{background:#fffaf4;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(184,149,106,.14)}.booking-slots button.is-selected{background:var(--color-primary);color:var(--color-white)}.booking-contact-form label{display:grid;grid-gap:.45rem;gap:.45rem}.booking-contact-form label>span{align-items:center;color:var(--color-text);display:inline-flex;font-weight:700;gap:.45rem}.booking-contact-form label>span svg{color:var(--color-primary)}.booking-contact-form input{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-button);color:var(--color-text);min-height:50px;padding:.7rem .85rem;width:100%}.booking-button:focus-visible,.booking-contact-form input:focus,.booking-contact-form input:focus-visible,.booking-days button:focus-visible,.booking-service-option:focus-visible,.booking-slots button:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(184,149,106,.2);outline:none}.booking-contact-form input[aria-invalid=true]{border-color:var(--color-error)}.booking-contact-form small,.booking-error{color:var(--color-error)}.booking-contact-form small{font-size:.86rem;font-weight:700}.booking-error{align-items:center;display:flex;font-weight:700;gap:.55rem}.booking-empty{color:var(--color-text-muted)}.booking-actions{align-items:center;display:flex;gap:.8rem;justify-content:flex-end;margin-top:auto}.booking-button{border:1px solid transparent}.booking-button:disabled{cursor:not-allowed;opacity:.54;transform:none}.booking-button--secondary{background:transparent;border-color:var(--color-primary);color:var(--color-primary)}.booking-side{display:grid;grid-gap:1rem;gap:1rem;padding:1.25rem;position:-webkit-sticky;position:sticky;top:102px}.booking-side>svg,.booking-success>svg{color:var(--color-primary)}.booking-summary-list{display:grid;grid-gap:.85rem;gap:.85rem;margin:0}.booking-summary-list div{border-top:1px solid var(--color-border);display:grid;grid-gap:.15rem;gap:.15rem;padding-top:.85rem}.booking-summary-list dt{color:var(--color-text-muted);font-size:.78rem;font-weight:700;text-transform:uppercase}.booking-summary-list dd{color:var(--color-text);font-weight:700;margin:0;overflow-wrap:anywhere}.booking-success{display:grid;grid-gap:1.4rem;gap:1.4rem;padding:clamp(1.5rem,4vw,2.5rem);text-align:left}.booking-success p{color:var(--color-text-muted);font-weight:700}.error-state,.not-found-page{background:var(--color-surface);display:grid;min-height:calc(100svh - 82px);padding:clamp(4rem,9vw,7rem) 1.5rem;place-items:center}.error-state__inner,.not-found-page__inner{background:rgba(255,255,255,.62);border:1px solid rgba(232,213,192,.82);border-radius:var(--radius-card);box-shadow:var(--shadow-soft);display:grid;grid-gap:1.25rem;gap:1.25rem;max-width:780px;padding:clamp(1.5rem,5vw,3.5rem);text-align:center;width:100%}.not-found-page__eyebrow{color:var(--color-primary);font-size:.8rem;font-weight:700;text-transform:uppercase}.error-state__inner h1,.not-found-page__inner h1{font-size:clamp(2.5rem,6vw,5rem)}.error-state__inner>p,.not-found-page__inner>p:not(.not-found-page__eyebrow){color:var(--color-text-muted);font-size:clamp(1rem,2vw,1.16rem);margin:0 auto;max-width:580px}.error-state__actions,.not-found-page__actions{align-items:center;display:flex;flex-wrap:wrap;gap:.8rem;justify-content:center;margin-top:.5rem}@media (max-width:960px){.site-header__inner{grid-template-columns:auto 1fr}.desktop-nav,.site-header__actions>.language-switcher,.site-header__cta{display:none}.site-header__actions{justify-content:end}.mobile-nav{display:block}.contact-cta,.icon-list,.image-text,.service-categories-grid,.service-category-card--featured,.service-detail__hero,.services-grid{grid-template-columns:1fr}.image-text--left .image-text__media{order:0}.service-category-card--featured .service-card__media{align-self:start;aspect-ratio:4/3;min-height:auto}.cta-banner__inner{align-items:start;grid-template-columns:1fr;justify-content:stretch}.cta-banner--light .cta-banner__inner{grid-template-columns:1fr;max-width:var(--container)}.booking-steps{grid-template-columns:repeat(5,minmax(48px,1fr))}.booking-steps li{justify-content:center}.booking-steps p{display:none}.booking-calendar-grid,.booking-layout,.booking-service-grid{grid-template-columns:1fr}.booking-side{position:static}}@media (min-width:720px){.hero-block--fr h1{font-size:clamp(2.8rem,5.4vw,5.8rem)}}@media (max-width:640px){.site-header__inner{min-height:72px;padding:0 1rem}.site-header__brand{gap:.6rem}.site-header__brand-mark{height:48px;width:38px}.site-header__brand-icon{height:44px}.site-header__brand-name{font-size:1.55rem}.site-header__brand-detail{font-size:.6rem;letter-spacing:.22em}.hero-block,.section{padding-left:1rem;padding-right:1rem}.hero-block{min-height:620px}.hero-block__overlay{background:linear-gradient(180deg,rgba(26,22,20,.72),rgba(26,22,20,.5) 46%,rgba(26,22,20,.36)),linear-gradient(90deg,rgba(26,22,20,.4),rgba(26,22,20,.08))}.hero-block--mobile-overlay .hero-block__image--desktop{display:none}.hero-block--mobile-overlay .hero-block__image--mobile{display:block}.hero-block--mobile-stacked{display:grid;grid-template-rows:auto auto;min-height:0;padding:0 0 3.25rem}.hero-block--mobile-stacked .hero-block__media{aspect-ratio:4/3;inset:auto;position:relative}.hero-block--mobile-stacked .hero-block__overlay{display:none}.hero-block--mobile-stacked .hero-block__content{padding:2.25rem 1rem 0}.hero-block--image.hero-block--mobile-stacked h1{color:var(--color-text);text-shadow:none}.hero-block--image.hero-block--mobile-stacked .hero-block__subheading{border-inline-start-color:var(--color-primary);color:var(--color-text-muted);text-shadow:none}h1{font-size:2.35rem}.hero-block--image h1{font-size:2.15rem}h2{font-size:1.85rem}.site-footer__inner{grid-template-columns:1fr;padding:3rem 1rem}.contact-cta__details a,.site-footer__contact-item,.site-footer__links a,.site-footer__social a{min-height:44px;align-content:center}.contact-cta .button{justify-self:stretch}.mobile-nav__link-group>a{font-size:1.75rem}.service-detail{padding-left:1rem;padding-right:1rem}.service-detail__facts{grid-template-columns:1fr}.service-detail__back{min-height:44px}.booking-section{padding-left:1rem;padding-right:1rem}.booking-steps{gap:.45rem}.booking-steps li{min-height:48px;padding:.45rem}.booking-steps span{height:28px;width:28px}.booking-panel{min-height:auto}.booking-month{padding:.75rem}.booking-days button{font-size:.85rem}.booking-actions{align-items:stretch;flex-direction:column-reverse}.booking-button{width:100%}.error-state,.not-found-page{padding-left:1rem;padding-right:1rem}.error-state__actions,.not-found-page__actions{align-items:stretch;flex-direction:column}}