:root{--bg:#f5f2eb;--ink:#332c26;--muted:#756b60;--line:#d9d1c5;--accent:#9c8067;--serif:'Italiana',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--ease:cubic-bezier(.22,.61,.36,1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.7 var(--sans);-webkit-font-smoothing:antialiased}img{display:block;width:100%;height:auto;object-fit:cover}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08;letter-spacing:-.035em}h1{font-size:clamp(50px,6vw,88px);margin-bottom:30px}h2{font-size:clamp(38px,4.2vw,62px);margin-bottom:26px}h3{font-size:32px}h4{font:500 10px var(--sans);letter-spacing:.15em;text-transform:uppercase}em{font-style:normal;color:var(--accent)}p{color:var(--muted)}[hidden]{display:none!important}::selection{background:#d7bfa7;color:var(--ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.wrap{width:min(1280px,calc(100% - 112px));margin:auto}.eyebrow{font:500 9px/1.8 var(--sans);letter-spacing:.19em;text-transform:uppercase;color:var(--muted);margin-bottom:28px}.skip-link{position:fixed;top:-100px;left:20px;background:var(--ink);color:white;padding:12px;z-index:200}.skip-link:focus{top:10px}.reading-progress{height:2px;position:fixed;top:0;left:0;width:100%;transform:scaleX(0);transform-origin:left;background:var(--accent);z-index:110;pointer-events:none}header{height:100px;border-bottom:1px solid var(--line);position:relative;z-index:40;background:var(--bg)}header nav{height:100%;max-width:1500px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:0 56px;gap:30px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand svg{width:44px;height:44px}.brand>span{font-family:var(--serif);font-size:26px;line-height:1}.brand small{display:block;font:500 6px var(--sans);letter-spacing:.24em;margin-top:8px}.nav-links{display:flex;align-items:center;gap:32px;font-size:11px}.nav-links a{position:relative}.nav-links a:after{content:'';height:1px;background:var(--ink);position:absolute;bottom:-5px;left:0;right:0;transform:scaleX(0);transform-origin:left;transition:transform .35s}.nav-links a:hover:after,.nav-links a[aria-current]:after{transform:scaleX(1)}.nav-links a:last-child{border:1px solid var(--ink);padding:12px 22px}.nav-links a:last-child:after{display:none}.menu-toggle{display:none}.button,button:not(.menu-toggle){display:inline-flex;align-items:center;justify-content:center;gap:26px;padding:16px 25px;background:var(--ink);color:var(--bg);border:1px solid var(--ink);font-size:12px;line-height:1.5;transition:background .3s,color .3s,transform .3s}.button:hover,button:not(.menu-toggle):hover{background:#675341;border-color:#675341;transform:translateY(-2px)}.button span{font-size:20px;transition:transform .3s}.button:hover span{transform:translate(3px,-3px)}.button.ghost{background:transparent;color:var(--ink)}.text-link{display:inline-flex;align-items:center;gap:25px;font-size:12px;border-bottom:1px solid var(--ink);padding:10px 0;transition:color .25s,gap .25s}.text-link:hover{gap:34px;color:var(--accent)}.editorial-hero{display:grid;grid-template-columns:1fr 1fr;min-height:760px;position:relative;max-width:1600px;margin:auto;padding:48px 56px 55px;gap:0}.hero-copy{position:relative;z-index:2;padding:25px 0 0}.hero-copy>.eyebrow{font-size:8px;margin-bottom:42px}.hero-copy h1{font-size:clamp(68px,7.1vw,110px);line-height:1.02;letter-spacing:-.045em;margin:0 -100px 28px 0;position:relative}.headline-line{display:block;overflow:hidden;padding-bottom:.05em;margin-bottom:-.05em}.headline-line>span{display:block}.headline-line .accent{color:var(--accent)}.hero-description{font-size:13px;line-height:1.85;margin-top:28px}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:32px}.hero-note{font-size:10px;line-height:1.6;color:var(--muted)}.scroll-cue{display:flex;align-items:center;gap:18px;font-size:8px;letter-spacing:.15em;margin-top:60px;color:var(--muted)}.scroll-cue>span{height:34px;width:34px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:17px}.hero-visual{position:relative;margin:0 0 0 22px;overflow:hidden;min-width:0;background:#e7dbcb}.hero-visual>img{height:100%;position:absolute;inset:0;object-position:65% center}.visual-caption{position:absolute;bottom:25px;left:25px;color:white;font-size:8px;letter-spacing:.16em;text-shadow:0 1px 10px #000}.hero-monogram{position:absolute;right:30px;top:28px;color:white;font:64px var(--serif);border:1px solid #ffffff99;border-radius:50%;width:110px;height:110px;display:flex;align-items:center;justify-content:center;gap:3px}.hero-monogram span{font-size:14px}.hero-side-note{position:absolute;right:18px;top:50%;writing-mode:vertical-rl;font-size:7px;letter-spacing:.17em;color:var(--muted)}.approach{display:grid;grid-template-columns:.5fr 1.5fr;gap:60px;padding:100px 0;border-top:1px solid var(--line)}.approach h2{font-size:48px;line-height:1.2}.approach-bottom{display:grid;grid-template-columns:1.2fr 1fr;gap:50px;align-items:end;margin-top:30px}.approach-bottom p{font-size:13px;margin-bottom:0}.approach-bottom .text-link{justify-self:end;white-space:nowrap}.section{padding:100px 0}.catalog{background:#ece7de}.section-title{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px}.section-title h2{margin-bottom:0}.section-title>p{font-size:12px;max-width:330px}.filters{display:flex;gap:30px;flex-wrap:wrap;border-bottom:1px solid #c9c0b3;margin-bottom:40px}.filters button{background:none!important;border:none!important;color:var(--muted);padding:16px 0;position:relative;font-size:11px;transform:none!important}.filters button[aria-pressed=true]{color:var(--ink)}.filters button[aria-pressed=true]:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--ink)}.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:50px 28px}.service-card{min-width:0}.service-image{position:relative;display:block;overflow:hidden}.service-image img{aspect-ratio:1.2;transition:transform 1s var(--ease),filter .7s}.service-card:hover .service-image img{transform:scale(1.045);filter:saturate(.8)}.image-index{position:absolute;top:14px;left:14px;background:#f5f2ebe6;font-size:7px;letter-spacing:.12em;padding:6px 9px}.circle-arrow{position:absolute;bottom:15px;right:15px;width:40px;height:40px;background:var(--bg);border-radius:50%;display:grid;place-items:center;font-size:20px;transition:transform .4s}.service-card:hover .circle-arrow{transform:rotate(45deg)}.service-copy{padding:25px 0 0}.service-copy .eyebrow{font-size:8px;margin-bottom:13px}.service-copy h3{font-size:32px;min-height:70px;margin-bottom:18px}.service-copy>p:not(.eyebrow){font-size:12px;min-height:82px}.service-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:20px;border-top:1px solid #c9c0b3}.service-bottom span{font-size:9px;color:var(--muted)}.service-bottom b{font-size:13px;display:block;color:var(--ink);font-weight:500}.service-bottom small{font-size:9px}.service-bottom a{font-size:10px;border-bottom:1px solid var(--ink);padding-bottom:4px}.image-note{font-size:10px;color:var(--muted);margin:30px 0 0}.method{background:var(--ink);color:var(--bg)}.method-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:100px}.method p{color:#bcb1a4}.method em{color:#c6ac91}.method-heading h2{font-size:80px;line-height:1.05}.method-heading>p:not(.eyebrow){font-size:13px;max-width:300px}.method .text-link{border-color:#c6ac91}.method-steps{padding-top:25px}.method-steps article{display:flex;gap:35px;padding:35px 0;border-top:1px solid #63564a}.step-number{font:30px var(--serif);color:#c6ac91}.method-steps h3{font-size:34px;margin-bottom:14px}.method-steps p{font-size:13px;max-width:380px;margin-bottom:0}.editorial-story{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;padding:110px 0;border-bottom:1px solid var(--line)}.story-image{overflow:hidden}.story-image img{aspect-ratio:.95;object-fit:cover}.story-copy h2{font-size:54px}.story-copy>p:not(.eyebrow){font-size:14px;max-width:400px}.faq-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px}.faq-layout h2{font-size:47px}details{border-top:1px solid var(--line);padding:24px 0}details:last-child{border-bottom:1px solid var(--line)}summary{font-size:13px;list-style:none;cursor:pointer;position:relative;padding-right:30px}summary:after{content:'+';position:absolute;right:0;top:0;color:var(--accent);font-size:19px}details[open] summary:after{content:'−'}details p{margin:20px 0 0;font-size:12px}.cta-band{text-align:center;padding:100px 0;background:#e8dfd2;position:relative;overflow:hidden}.cta-band:before{content:'';position:absolute;inset:40px auto auto 50%;width:600px;height:600px;border:1px solid #c6b5a350;border-radius:50%;transform:translateX(-50%);pointer-events:none}.cta-band .wrap{position:relative}.cta-band h2{font-size:clamp(52px,6.5vw,94px)}.cta-band em{color:#8f745c}.cta-band .button{margin-top:15px}.cta-note{font-size:10px;margin:22px 0 0}footer{padding:70px 56px 25px}.footer-inner{max-width:1280px;margin:auto;display:grid;grid-template-columns:1.1fr 1fr .55fr;gap:70px}.footer-brand p{font-size:11px;max-width:310px;margin-top:25px}.footer-col ul{list-style:none;padding:0;color:var(--muted);font-size:11px}.footer-col li{margin-bottom:12px}.footer-col a:hover{color:var(--ink)}.footer-bottom{max-width:1280px;margin:50px auto 0;border-top:1px solid var(--line);padding-top:24px;display:flex;justify-content:space-between;gap:25px;font-size:9px;color:var(--muted)}.footer-legal{display:flex;gap:18px;flex-wrap:wrap}.breadcrumbs{width:min(1280px,calc(100% - 112px));display:flex;flex-wrap:wrap;gap:10px;margin:25px auto;font-size:10px;color:var(--muted)}.page-intro{padding:45px 0 70px}.page-intro h1{max-width:900px}.page-intro+.catalog .section-title{display:none}.product-hero{width:min(1280px,calc(100% - 112px));margin:45px auto 80px;display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:start}.product-media{overflow:hidden}.product-media img{aspect-ratio:.92}.product-info h1{font-size:60px}.product-info>.eyebrow{font-size:8px}.product-price-main{font-size:24px;color:var(--ink);margin-bottom:0}.product-price-unit,.product-price-note{font-size:11px;margin-bottom:12px}.price-extras-block{padding:15px 0;border-block:1px solid var(--line);margin:20px 0}.price-extras-heading{margin-bottom:8px}.product-price-extras{margin:0;padding-left:18px;font-size:11px;color:var(--muted)}.product-short{font-size:14px}.duration{font-size:11px;margin:24px 0}.product-cta{display:flex;gap:12px;flex-wrap:wrap}.product-body{width:min(1280px,calc(100% - 112px));margin:0 auto 40px;display:grid;grid-template-columns:1.4fr 1fr;gap:70px}.product-content h2{font-size:44px}.product-content p{font-size:14px;line-height:1.9}.product-side-card{background:#ece7de;padding:30px;margin-bottom:20px}.product-side-card h3{font-size:30px}.product-side-card p,.product-features{font-size:12px;color:var(--muted)}.product-features{padding-left:18px}.product-features li{padding-bottom:8px}.related{width:min(1280px,calc(100% - 112px));margin:70px auto}.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.related-card{background:#ece7de}.related-card img{aspect-ratio:1.4}.related-card>div{padding:25px}.related-card h3{font-size:28px}.related-card .price{font-size:12px}.inner-page{padding-bottom:70px}.inner-page>h1{margin-top:25px}.inner-page>p{max-width:800px}.inner-page .how,.inner-page .values{display:grid;grid-template-columns:repeat(3,1fr);list-style:none;padding:0;gap:35px;margin:45px 0}.how li,.values li{border-top:1px solid var(--line);padding-top:25px}.how h3,.values h3{font-size:30px}.how p,.values p{font-size:13px}.num{font-family:var(--serif);font-size:30px;color:var(--accent);display:block;margin-bottom:20px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px;margin:40px 0}.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:25px}dt{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--accent)}dd{font-size:12px;margin:7px 0 0;overflow-wrap:anywhere}.map-panel{background:#ece7de;padding:30px;display:flex;flex-direction:column;align-items:start;justify-content:center}.map-panel p{font-size:12px}.map-panel iframe{width:100%;height:300px;border:0}.local-notice,.selected-service{background:#ece7de;padding:20px;font-size:12px;border-left:2px solid var(--accent)}form{margin-top:35px;max-width:900px}fieldset{border:1px solid var(--line);padding:30px;display:grid;grid-template-columns:1fr 1fr;gap:24px}legend{font-family:var(--serif);font-size:30px;padding:0 12px}label{display:flex;flex-direction:column;gap:8px;font-size:12px;color:var(--muted)}input,select,textarea{font:14px var(--sans);width:100%;min-width:0;padding:15px;background:var(--bg);border:1px solid #bdb3a6;border-radius:0;color:var(--ink)}textarea{resize:vertical}label:has(textarea),label.check,fieldset>button{grid-column:1/-1}label.check{flex-direction:row;align-items:start;gap:12px}.check input{width:18px;height:18px;flex-shrink:0;accent-color:var(--ink)}.form-status{font-size:12px;margin-top:15px}.cookie-banner{position:fixed;bottom:18px;left:18px;z-index:100;width:390px;max-width:calc(100% - 36px);background:var(--bg);padding:22px;border:1px solid var(--line);box-shadow:0 8px 40px #332c2620}.cookie-banner strong{font-family:var(--serif);font-size:24px;font-weight:400}.cookie-banner p{font-size:11px;margin:8px 0 14px}.actions{display:flex;gap:7px;flex-wrap:wrap}.actions button{font-size:10px;padding:9px 12px}.actions a{font-size:9px;text-decoration:underline;width:100%;margin-top:3px}dialog{width:520px;max-width:calc(100% - 30px);padding:30px;background:var(--bg);border:1px solid var(--line);color:var(--ink)}dialog h2{font-size:34px}dialog p{font-size:12px}dialog::backdrop{background:#332c2680}dialog .actions{margin-top:25px}#cookie-fab{position:fixed;bottom:12px;left:12px;z-index:50;font-size:9px;padding:6px 10px;background:var(--bg);color:var(--muted);border-color:var(--line)}#cookie-error:empty{display:none}.reveal{opacity:1;transform:none}
/* Motion is enabled only after observers are successfully installed. */
.motion-ready [data-motion]{opacity:0;transform:translateY(25px);transition:opacity .85s var(--ease),transform 1s var(--ease);transition-delay:var(--stagger,0ms)}.motion-ready [data-motion].in-view{opacity:1;transform:none}.motion-ready [data-image-reveal]{clip-path:inset(0 0 18% 0);opacity:.3;transition:clip-path 1.2s var(--ease),opacity 1s}.motion-ready [data-image-reveal].in-view{clip-path:inset(0);opacity:1}.motion-ready [data-image-reveal] img{transform:scale(1.08);transition:transform 1.6s var(--ease)}.motion-ready [data-image-reveal].in-view img{transform:scale(1)}.motion-ready .headline-line>span{animation:line-in 1.15s var(--ease) both}.motion-ready .headline-line:nth-child(2)>span{animation-delay:.14s}.motion-ready .headline-line:nth-child(3)>span{animation-delay:.28s}.motion-ready .hero-enter{animation:soft-in .9s var(--ease) .45s both}.motion-ready .hero-visual{animation:photo-in 1.4s var(--ease) both}.motion-ready .hero-visual>img{animation:photo-scale 2.2s var(--ease) both}@keyframes line-in{from{transform:translateY(110%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes soft-in{from{transform:translateY(15px);opacity:0}to{transform:none;opacity:1}}@keyframes photo-in{from{clip-path:inset(8% 0 8% 0);opacity:.3}to{clip-path:inset(0);opacity:1}}@keyframes photo-scale{from{transform:scale(1.10)}to{transform:scale(1)}}
@media(min-width:1600px){.editorial-hero{min-height:830px}.hero-copy{padding-top:45px}}
@media(max-width:1050px){.wrap,.breadcrumbs,.product-hero,.product-body,.related{width:calc(100% - 64px)}header nav{padding:0 32px}.nav-links{gap:18px;font-size:10px}.editorial-hero{padding:35px 32px 45px;min-height:660px}.hero-copy h1{font-size:76px}.hero-copy>.eyebrow{max-width:260px}.hero-visual{margin-left:10px}.hero-side-note{right:10px}.hero-description{max-width:290px;font-size:12px}.hero-copy h1{margin-right:-120px}.hero-monogram{width:85px;height:85px;font-size:48px}.approach{gap:35px;grid-template-columns:.5fr 1.5fr}.approach h2{font-size:40px}.approach-bottom{gap:30px}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.method-grid,.editorial-story{gap:55px}.faq-layout{gap:40px}.product-hero,.product-body{gap:35px}.product-info h1{font-size:46px}.footer-inner{gap:35px}.contact-grid{gap:30px}.contact-details{grid-template-columns:1fr}.service-copy>p:not(.eyebrow){min-height:60px}}
@media(max-width:700px){header{height:80px}header nav{padding:0 22px}.brand svg{width:36px;height:36px}.brand>span{font-size:23px}.brand small{font-size:5px}.menu-toggle{display:flex;gap:12px;border:0;background:none;color:var(--ink);font-size:11px;padding:10px 0}.nav-links{display:none;position:absolute;top:79px;left:0;right:0;background:var(--bg);padding:20px 22px;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:8px;font-size:13px}.nav-links.open{display:flex}.nav-links a{padding:12px 0}.nav-links a:last-child{text-align:center}.wrap,.breadcrumbs,.product-hero,.product-body,.related{width:calc(100% - 44px)}.editorial-hero{grid-template-columns:1fr;padding:35px 22px 30px;gap:35px}.hero-copy{padding:0}.hero-copy>.eyebrow{font-size:7px;max-width:none;margin-bottom:30px;letter-spacing:.12em}.hero-copy h1{font-size:clamp(57px,15vw,88px);margin-right:0;line-height:1.06;margin-bottom:22px}.hero-description{font-size:12px;max-width:100%;margin-top:20px}.hero-actions{margin-top:24px}.hero-actions .button{padding:14px 23px}.hero-note{font-size:9px}.scroll-cue{margin-top:30px;font-size:7px;letter-spacing:.1em}.hero-visual{min-height:330px;margin:0}.hero-visual img{object-position:60% center}.hero-monogram{width:75px;height:75px;top:20px;right:20px;font-size:42px}.hero-monogram span{font-size:10px}.visual-caption{font-size:7px;bottom:20px;left:20px}.hero-side-note{display:none}.approach{grid-template-columns:1fr;gap:0;padding:55px 0}.approach h2{font-size:35px}.approach-bottom{grid-template-columns:1fr;gap:15px;margin-top:25px}.approach-bottom .text-link{justify-self:start}.section{padding:60px 0}.section-title{display:block}.section-title>p{margin-top:25px;font-size:12px}.section-title h2{font-size:39px}.eyebrow{font-size:8px;margin-bottom:22px}.filters{gap:0 22px;margin-bottom:30px}.filters button{font-size:10px;padding:12px 0}.services-grid{grid-template-columns:1fr;gap:40px}.service-copy h3{min-height:0;font-size:35px}.service-copy>p:not(.eyebrow){min-height:0;font-size:12px}.service-bottom a{font-size:11px}.service-bottom b{font-size:15px}.service-image img{aspect-ratio:1.3}.method-grid{grid-template-columns:1fr;gap:30px}.method-heading h2{font-size:65px}.method-steps{padding-top:0}.method-steps article{padding:25px 0;gap:25px}.method-steps h3{font-size:32px}.editorial-story{grid-template-columns:1fr;gap:40px;padding:60px 0}.story-image img{aspect-ratio:1.1}.story-copy h2{font-size:43px}.story-copy>p:not(.eyebrow){font-size:13px}.faq-layout{grid-template-columns:1fr;gap:15px}.faq-layout h2{font-size:38px}.cta-band{padding:65px 0}.cta-band h2{font-size:52px}.cta-band .eyebrow{font-size:7px}.cta-note{font-size:9px}footer{padding:50px 22px 35px}.footer-inner{grid-template-columns:1fr;gap:25px}.footer-brand p{max-width:100%}.footer-bottom{flex-direction:column;margin-top:25px;gap:20px;padding-bottom:20px}.footer-legal{gap:12px 18px}.page-intro{padding:25px 0 45px}.page-intro h1{font-size:48px}.product-hero{grid-template-columns:1fr;gap:32px;margin-top:30px;margin-bottom:50px}.product-media img{aspect-ratio:1.2}.product-info h1{font-size:48px}.product-info>.eyebrow{font-size:7px}.product-body{grid-template-columns:1fr;gap:10px}.product-content h2{font-size:38px}.product-content p{font-size:13px}.product-side-card{padding:25px}.related-grid{grid-template-columns:1fr}.related{margin:50px auto}.related h2{font-size:36px}.inner-page>h1{font-size:47px}.inner-page .how,.inner-page .values{grid-template-columns:1fr;gap:25px}.contact-grid{grid-template-columns:1fr}.contact-details{grid-template-columns:1fr 1fr;gap:25px 18px}dd{font-size:11px}.map-panel{padding:22px}fieldset{grid-template-columns:1fr;padding:20px;gap:20px}.cookie-banner{padding:18px;max-width:calc(100% - 24px);left:12px;bottom:12px}.cookie-banner .actions button{font-size:9px;padding:8px 10px}.breadcrumbs{font-size:9px}.button{gap:18px}.inner-page{padding-bottom:45px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready [data-motion],.motion-ready [data-image-reveal]{opacity:1!important;transform:none!important;clip-path:none!important}.motion-ready [data-image-reveal] img{transform:none!important}}
@media(min-width:701px) and (max-width:1050px){.hero-copy h1{font-size:clamp(54px,7.2vw,76px);margin-right:0}}
