:root{--ivory:#fefaf7;--cream:#f7f1ec;--paper:#fffdfb;--charcoal:#504b47;--charcoal-deep:#383431;--taupe:#817b74;--taupe-light:#aaa692;--terracotta:#d39a8b;--terracotta-dark:#a96357;--terracotta-soft:#f0d9d2;--olive:#9a987f;--olive-dark:#66664f;--olive-soft:#e8e7dd;--success:#667a63;--border:rgba(80,75,71,.16);--display:"Cormorant Garamond",Georgia,serif;--body:"Manrope",system-ui,sans-serif;--shadow:0 18px 50px rgba(80,75,71,.08);--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-xl:24px;--container:1220px}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--charcoal);background:var(--ivory);font-family:var(--body);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}img{display:block;width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{color:inherit}p{margin:0}h1,h2,h3{margin:0;color:var(--charcoal-deep);font-family:var(--display);font-weight:500;line-height:.98;text-wrap:balance}h1{font-size:clamp(3.65rem,7vw,6.8rem);letter-spacing:-.045em}h2{font-size:clamp(2.65rem,5vw,4.6rem);letter-spacing:-.035em}h3{font-size:clamp(1.65rem,2.5vw,2.25rem);letter-spacing:-.02em;line-height:1.08}.container{width:min(calc(100% - 48px),var(--container));margin-inline:auto}.section{padding-block:clamp(88px,10vw,140px)}.eyebrow{color:var(--terracotta-dark);font-size:.72rem;font-weight:700;letter-spacing:.17em;line-height:1.4;text-transform:uppercase}.skip-link{position:fixed;top:-80px;left:24px;z-index:1000;padding:12px 18px;background:var(--charcoal-deep);color:var(--ivory);border-radius:var(--radius-sm)}.skip-link:focus{top:16px}:focus-visible{outline:2px solid var(--terracotta-dark);outline-offset:4px}
.site-header{position:sticky;top:0;z-index:100;background:rgba(254,250,247,.92);border-bottom:1px solid transparent;backdrop-filter:blur(16px);transition:border-color 250ms ease,box-shadow 250ms ease}.site-header.is-scrolled{border-color:var(--border);box-shadow:0 4px 24px rgba(80,75,71,.045)}.header-inner{min-height:88px;display:grid;grid-template-columns:190px 1fr auto;align-items:center;gap:34px}.brand{display:inline-flex;width:184px;height:64px;align-items:center;overflow:hidden}.brand img{height:110px;width:auto;object-fit:contain;transform:translateY(1px)}.desktop-nav{display:flex;justify-content:center;gap:clamp(16px,2vw,32px)}.desktop-nav a{position:relative;color:var(--charcoal);font-size:.83rem;font-weight:600}.desktop-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:var(--terracotta);transition:right 250ms ease}.desktop-nav a:hover::after,.desktop-nav a:focus-visible::after{right:0}.header-action{padding:11px 16px;color:var(--terracotta-dark);border:1px solid rgba(169,99,87,.4);border-radius:var(--radius-sm);font-size:.78rem;font-weight:700;transition:background 250ms ease,color 250ms ease}.header-action:hover{background:var(--terracotta);color:var(--paper)}.menu-toggle{display:none;width:44px;height:44px;padding:10px;border:0;background:transparent}.menu-toggle span{display:block;height:1px;margin:6px 0;background:var(--charcoal);transition:transform 250ms ease,opacity 250ms ease}.menu-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-nav{position:fixed;inset:88px 0 0;z-index:99;padding:36px 24px;background:var(--ivory)}.mobile-nav:not([hidden]){display:flex;flex-direction:column;align-items:stretch}.mobile-nav>a:not(.btn){padding:16px 4px;border-bottom:1px solid var(--border);font-family:var(--display);font-size:1.75rem}.mobile-nav .btn{margin-top:28px}
.btn{min-height:50px;display:inline-flex;align-items:center;justify-content:center;padding:13px 22px;border:1px solid transparent;border-radius:var(--radius-md);font-size:.82rem;font-weight:700;line-height:1.2;transition:transform 250ms ease,background 250ms ease,border-color 250ms ease,color 250ms ease}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--terracotta);color:var(--paper)}.btn-primary:hover{background:var(--terracotta-dark)}.btn-secondary{color:var(--charcoal);background:transparent;border-color:rgba(80,75,71,.32)}.btn-secondary:hover{color:var(--terracotta-dark);border-color:var(--terracotta);background:var(--paper)}.button-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.button-row.centered{justify-content:center}.text-link{display:inline-flex;align-items:center;gap:8px;color:var(--terracotta-dark);font-size:.82rem;font-weight:700}.text-link span{transition:transform 250ms ease}.text-link:hover span{transform:translateX(4px)}
.hero{position:relative;overflow:hidden;padding-block:clamp(70px,8vw,112px) clamp(96px,11vw,150px)}.hero::before{content:"";position:absolute;width:520px;aspect-ratio:1;right:-300px;top:-170px;border:1px solid rgba(154,152,127,.18);border-radius:50%}.hero-grid{display:grid;grid-template-columns:minmax(0,.88fr) minmax(460px,1.12fr);align-items:center;gap:clamp(60px,8vw,120px)}.hero-copy{position:relative;z-index:2}.hero-copy .eyebrow{margin-bottom:24px}.hero-copy h1 em{color:var(--terracotta-dark);font-weight:500}.hero-lead{max-width:590px;margin:32px 0;color:var(--taupe);font-size:clamp(1.05rem,1.5vw,1.22rem);line-height:1.75}.trust-list{display:flex;flex-wrap:wrap;gap:12px 24px;margin:30px 0 0;padding:0;list-style:none;color:var(--taupe);font-size:.76rem}.trust-list li{display:flex;align-items:center;gap:8px}.trust-list li::before{content:"";width:5px;height:5px;background:var(--olive);border-radius:50%}.hero-visual{position:relative;min-height:650px}.hero-main-image{position:absolute;inset:0 14% 0 17%;margin:0;overflow:hidden;border-radius:48% 48% var(--radius-xl) var(--radius-xl);background:var(--cream)}.hero-main-image img{height:100%;object-fit:cover}.hero-detail-image{position:absolute;z-index:2;margin:0;overflow:hidden;border:7px solid var(--ivory);background:var(--cream);box-shadow:var(--shadow)}.hero-detail-image img{height:100%;object-fit:cover}.hero-detail-top{width:180px;height:210px;top:36px;right:0;border-radius:50% 50% var(--radius-lg) var(--radius-lg)}.hero-detail-bottom{width:210px;height:155px;left:0;bottom:40px;border-radius:var(--radius-lg)}.hero-note{position:absolute;right:8px;bottom:45px;max-width:125px;color:var(--olive-dark);font-family:var(--display);font-size:1.2rem;line-height:1.05;transform:rotate(-4deg)}
.brand-intro{padding-block:72px;border-block:1px solid var(--border);background:var(--paper)}.intro-grid{display:grid;grid-template-columns:230px minmax(0,800px);justify-content:space-between;gap:48px}.intro-grid h2{font-size:clamp(2.4rem,4.5vw,4rem)}.intro-grid p:last-child{max-width:700px;margin-top:24px;color:var(--taupe)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:54px}.section-heading .eyebrow{margin-bottom:14px}.section-heading h2{max-width:720px}.category-grid{display:grid;grid-template-columns:1.1fr .9fr;grid-template-rows:repeat(2,minmax(300px,auto));gap:22px}.category-card{background:var(--paper);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.category-card>a{height:100%;display:grid;grid-template-columns:45% 55%}.category-card-large{grid-row:1/3}.category-card-large>a{grid-template-columns:1fr;grid-template-rows:62% 38%}.category-image{overflow:hidden;background:var(--cream)}.category-image img{height:100%;object-fit:cover;transition:transform 500ms ease}.category-card:hover .category-image img{transform:scale(1.035)}.category-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(26px,4vw,46px)}.category-copy h3{margin:10px 0 22px}.category-label{color:var(--olive-dark);font-size:.68rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.personalization{background:var(--cream)}.personalization-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(480px,1.15fr);gap:clamp(70px,9vw,140px)}.personalization-intro .eyebrow{margin-bottom:15px}.personalization-intro>p:not(.eyebrow){max-width:520px;margin:27px 0 30px;color:var(--taupe)}.steps{margin:0;padding:0;list-style:none}.steps li{display:grid;grid-template-columns:92px 1fr;gap:24px;padding:30px 0;border-top:1px solid var(--border)}.steps li:last-child{border-bottom:1px solid var(--border)}.step-number{color:var(--terracotta);font-family:var(--display);font-size:3.4rem;line-height:.9}.steps h3{font-size:2rem}.steps p{max-width:520px;margin-top:8px;color:var(--taupe)}
.feature-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(70px,9vw,130px)}.feature-collage{position:relative;min-height:620px}.feature-collage::before{content:"";position:absolute;inset:8% 0 0 10%;background:var(--olive-soft);border-radius:48% 48% var(--radius-xl) var(--radius-xl)}.feature-collage img{position:absolute;object-fit:cover}.feature-primary{inset:0 16% 14% 0;height:86%;border-radius:48% 48% var(--radius-xl) var(--radius-xl)}.feature-secondary{width:220px;height:250px;right:0;bottom:0;border:7px solid var(--ivory);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.feature-copy .eyebrow{margin-bottom:16px}.feature-copy>p:not(.eyebrow){margin:28px 0;color:var(--taupe)}.feature-list{margin:0 0 30px;padding:0;list-style:none;border-top:1px solid var(--border)}.feature-list li{padding:14px 0 14px 24px;border-bottom:1px solid var(--border);position:relative;font-size:.9rem}.feature-list li::before{content:"";position:absolute;left:2px;top:24px;width:6px;height:6px;border-radius:50%;background:var(--olive)}
.gallery-section{background:var(--paper)}.editorial-gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:260px 260px;gap:16px}.editorial-gallery figure{margin:0;overflow:hidden;border-radius:var(--radius-md)}.editorial-gallery img{height:100%;object-fit:cover;transition:transform 500ms ease}.editorial-gallery figure:hover img{transform:scale(1.03)}.gallery-tall{grid-row:span 2}.gallery-wide{grid-column:span 2}.atelier{position:relative;background:var(--olive-soft);overflow:hidden}.atelier-grid{min-height:470px;display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:clamp(50px,8vw,120px)}.atelier-mark{height:420px;display:flex;align-items:center;justify-content:center;opacity:.7;overflow:hidden}.atelier-mark img{width:420px;max-width:90%}.atelier-copy{max-width:660px}.atelier-copy .eyebrow{margin-bottom:16px}.atelier-copy p:not(.eyebrow){margin-top:20px;color:var(--taupe)}.atelier-copy .text-link{margin-top:28px}
.faq-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(60px,9vw,140px)}.faq-grid>div:first-child>p:last-child{max-width:390px;margin-top:24px;color:var(--taupe)}.accordion{border-top:1px solid var(--border)}.accordion details{border-bottom:1px solid var(--border)}.accordion summary{position:relative;padding:24px 48px 24px 0;cursor:pointer;list-style:none;font-family:var(--display);font-size:1.55rem;line-height:1.2}.accordion summary::-webkit-details-marker{display:none}.accordion summary::after{content:"+";position:absolute;right:4px;top:18px;color:var(--terracotta-dark);font-family:var(--body);font-size:1.6rem;font-weight:300}.accordion details[open] summary::after{content:"−"}.accordion details p{max-width:680px;padding:0 48px 24px 0;color:var(--taupe);font-size:.92rem}.closing-cta{padding-block:clamp(90px,11vw,145px);text-align:center;background:var(--cream);border-top:1px solid var(--border)}.closing-inner{position:relative;display:flex;flex-direction:column;align-items:center}.closing-symbol{width:70px;height:70px;margin-bottom:24px;object-fit:contain}.closing-cta h2{max-width:800px;margin:14px auto 24px}.closing-cta p:not(.eyebrow){max-width:620px;color:var(--taupe)}.closing-cta .button-row{margin-top:30px}
.site-footer{padding-top:74px;color:rgba(254,250,247,.78);background:var(--charcoal-deep)}.footer-grid{display:grid;grid-template-columns:1.7fr repeat(3,1fr);gap:48px;padding-bottom:62px}.footer-brand img{width:190px;height:80px;object-fit:contain;filter:brightness(0) invert(1);opacity:.88}.footer-brand p{margin-top:12px;color:var(--paper);font-family:var(--display);font-size:1.4rem}.footer-brand span{color:rgba(254,250,247,.52);font-size:.78rem}.footer-grid h2{margin-bottom:18px;color:var(--paper);font-family:var(--body);font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.footer-grid>div:not(.footer-brand){display:flex;flex-direction:column;align-items:flex-start;gap:10px;font-size:.82rem}.footer-grid a:hover{color:var(--terracotta-soft)}.footer-bottom{padding-block:22px;border-top:1px solid rgba(254,250,247,.12);font-size:.72rem;color:rgba(254,250,247,.45)}.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:90;width:52px;height:52px;display:grid;place-items:center;color:var(--paper);background:var(--success);border:4px solid var(--ivory);border-radius:50%;box-shadow:0 12px 30px rgba(80,75,71,.2);transition:transform 250ms ease}.whatsapp-float:hover{transform:translateY(-3px)}.whatsapp-float svg{width:24px;fill:currentColor}
@media(max-width:1050px){.header-inner{grid-template-columns:180px 1fr auto}.desktop-nav{display:none}.header-action{justify-self:end}.menu-toggle{display:block}.hero-grid{grid-template-columns:1fr 1fr;gap:50px}.hero-visual{min-height:560px}.category-card>a{grid-template-columns:1fr;grid-template-rows:55% 45%}.personalization-grid,.feature-grid{gap:70px}.footer-grid{grid-template-columns:1.4fr repeat(3,1fr);gap:28px}}
@media(max-width:800px){.container{width:min(calc(100% - 36px),var(--container))}.section{padding-block:82px}.header-inner{min-height:78px;grid-template-columns:1fr auto}.brand{width:168px;height:58px}.brand img{height:100px}.header-action{display:none}.mobile-nav{inset-block-start:78px}.hero{padding-block:56px 88px}.hero-grid{grid-template-columns:1fr}.hero-copy{max-width:680px}.hero-visual{min-height:640px;max-width:620px;width:100%;margin-inline:auto}.intro-grid,.personalization-grid,.feature-grid,.atelier-grid,.faq-grid{grid-template-columns:1fr}.intro-grid{gap:20px}.category-grid{grid-template-columns:1fr;grid-template-rows:auto}.category-card-large{grid-row:auto}.category-card>a,.category-card-large>a{min-height:560px;grid-template-columns:1fr;grid-template-rows:60% 40%}.personalization-grid,.feature-grid,.atelier-grid,.faq-grid{gap:54px}.feature-collage{min-height:600px;max-width:620px}.editorial-gallery{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,230px)}.gallery-wide{grid-column:span 2}.atelier-mark{height:300px}.atelier-mark img{width:320px}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:span 2}}
@media(max-width:520px){.container{width:min(calc(100% - 28px),var(--container))}h1{font-size:clamp(3.2rem,16vw,4.5rem)}h2{font-size:clamp(2.45rem,13vw,3.6rem)}.section{padding-block:68px}.button-row .btn{width:100%}.trust-list{display:grid;grid-template-columns:1fr 1fr;gap:8px 14px}.hero-visual{min-height:500px}.hero-main-image{inset:0 8%}.hero-detail-top{width:125px;height:150px;right:-4px}.hero-detail-bottom{width:150px;height:116px;left:-4px;bottom:20px}.hero-note{display:none}.section-heading{align-items:flex-start;flex-direction:column;margin-bottom:36px}.category-card>a,.category-card-large>a{min-height:510px;grid-template-rows:58% 42%}.category-copy{padding:26px}.steps li{grid-template-columns:64px 1fr;gap:14px}.step-number{font-size:2.7rem}.feature-collage{min-height:460px}.feature-primary{right:10%}.feature-secondary{width:150px;height:180px}.editorial-gallery{grid-template-rows:repeat(3,190px);gap:10px}.accordion summary{font-size:1.35rem}.footer-grid{grid-template-columns:1fr;gap:34px}.footer-brand{grid-column:auto}.whatsapp-float{right:14px;bottom:14px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}

/* Brand, complete catalogue and location */
.header-inner{min-height:112px;grid-template-columns:220px 1fr auto}
.brand{width:230px;height:100px;overflow:hidden;padding:0}
.brand img{width:230px;height:auto;max-height:none;object-fit:contain;transform:translateY(-14px)}
.mobile-nav{inset-block-start:112px}
.catalog-nav{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:-42px;padding:26px 30px;background:var(--paper);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow)}
.catalog-nav>div{display:flex;align-items:center;flex-wrap:wrap;gap:9px 14px}.catalog-nav strong{width:100%;color:var(--charcoal-deep);font-family:var(--display);font-size:1.35rem;font-weight:600}.catalog-nav a{padding:6px 10px;color:var(--taupe);background:var(--cream);border-radius:999px;font-size:.7rem;font-weight:700}.catalog-nav a:hover,.catalog-nav a:focus-visible{color:var(--terracotta-dark);background:var(--terracotta-soft)}
.catalog-sections{padding-top:50px}.collection-section{scroll-margin-top:125px;padding-block:clamp(70px,8vw,108px);border-bottom:1px solid var(--border)}.collection-section:nth-child(even){background:var(--paper)}.collection-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,400px);align-items:end;gap:40px;margin-bottom:38px}.collection-heading .eyebrow{margin-bottom:12px}.collection-heading h2{font-size:clamp(2.6rem,4.5vw,4.2rem)}.collection-heading>p{color:var(--taupe);font-size:.88rem}
.asset-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.asset-grid-compact{grid-template-columns:repeat(4,minmax(0,1fr))}.asset-grid-small{grid-template-columns:repeat(2,minmax(0,340px));justify-content:start}.catalog-item{min-width:0;padding:0;overflow:hidden;cursor:zoom-in;background:var(--cream);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:none;transition:transform 250ms ease,box-shadow 250ms ease}.catalog-item:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.catalog-item img{width:100%;height:clamp(210px,24vw,310px);object-fit:cover}.asset-grid-compact .catalog-item img{height:clamp(190px,20vw,265px)}.asset-grid-small .catalog-item img{height:min(360px,35vw)}
.collection-empty{background:var(--cream)!important}.collection-empty .container{padding:32px;border-left:3px solid var(--terracotta);background:rgba(255,253,251,.6);border-radius:0 var(--radius-md) var(--radius-md) 0}.collection-empty .collection-heading{margin-bottom:20px}.subcollection+.subcollection{margin-top:48px;padding-top:45px;border-top:1px solid var(--border)}.subcollection h3{margin-bottom:20px}.collection-divider{padding-block:clamp(80px,9vw,120px);text-align:center;background:var(--charcoal-deep)}.collection-divider h2{margin:10px 0 20px;color:var(--paper)}.collection-divider p:last-child{max-width:620px;margin-inline:auto;color:rgba(254,250,247,.68)}.collection-highlight{background:var(--olive-soft)!important}.collection-link{margin-top:28px}
.lightbox-dialog{width:auto;max-width:calc(100vw - 40px);max-height:calc(100vh - 40px);padding:0;overflow:visible;background:transparent;border:0}.lightbox-dialog::backdrop{background:rgba(38,34,31,.88);backdrop-filter:blur(5px)}.lightbox-dialog figure{margin:0;padding:12px;background:var(--paper);border-radius:var(--radius-md);box-shadow:0 30px 90px rgba(0,0,0,.4)}.lightbox-dialog img{width:auto;height:auto;max-width:min(88vw,1200px);max-height:78vh;object-fit:contain}.lightbox-dialog figcaption{max-width:760px;padding:12px 8px 4px;color:var(--taupe);font-size:.78rem}.lightbox-close{position:absolute;z-index:2;top:-18px;right:-18px;width:44px;height:44px;display:grid;place-items:center;cursor:pointer;color:var(--paper);background:var(--charcoal-deep);border:2px solid var(--paper);border-radius:50%;font-size:1.6rem;line-height:1}
.inclusion-home{background:var(--olive-soft)}.inclusion-home .feature-collage::before{background:var(--terracotta-soft)}.map-section{background:var(--cream);border-top:1px solid var(--border)}.map-grid{display:grid;grid-template-columns:minmax(300px,.62fr) minmax(0,1.38fr);align-items:center;gap:clamp(45px,7vw,90px)}.map-copy .eyebrow{margin-bottom:14px}.map-copy p:not(.eyebrow){margin:22px 0 28px;color:var(--taupe)}.map-frame{min-height:430px;overflow:hidden;background:var(--paper);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.map-frame iframe{display:block;width:100%;height:430px;border:0}.collection-shortcuts{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}.collection-shortcuts a{padding:9px 13px;color:var(--olive-dark);background:var(--olive-soft);border-radius:999px;font-size:.7rem;font-weight:700}.collection-shortcuts a:hover{color:var(--paper);background:var(--olive-dark)}
@media(max-width:1050px){.header-inner{grid-template-columns:215px 1fr auto}.brand{width:215px;height:94px}.brand img{width:215px;transform:translateY(-13px)}.desktop-nav{display:none}}
@media(max-width:800px){.header-inner{min-height:88px}.brand{width:170px;height:80px}.brand img{width:170px;transform:translateY(-10px)}.mobile-nav{inset-block-start:88px}.catalog-nav{grid-template-columns:1fr;margin-top:-24px}.collection-heading,.map-grid{grid-template-columns:1fr}.asset-grid,.asset-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr))}.asset-grid-small{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-item img,.asset-grid-compact .catalog-item img,.asset-grid-small .catalog-item img{height:clamp(190px,44vw,300px)}.map-frame,.map-frame iframe{min-height:380px;height:380px}}
@media(max-width:520px){.catalog-nav{padding:22px 18px}.catalog-nav>div{gap:8px}.collection-heading{gap:16px;margin-bottom:28px}.asset-grid,.asset-grid-compact,.asset-grid-small{gap:10px}.catalog-item img,.asset-grid-compact .catalog-item img,.asset-grid-small .catalog-item img{height:46vw}.collection-empty .container{padding:24px 20px}.lightbox-dialog{max-width:calc(100vw - 24px)}.lightbox-close{top:-15px;right:-8px}.map-frame,.map-frame iframe{min-height:330px;height:330px}}

/* Internal pages */
[aria-current="page"]{color:var(--terracotta-dark)}
.breadcrumb{display:flex;gap:9px;align-items:center;margin-bottom:34px;color:var(--taupe);font-size:.72rem}.breadcrumb a:hover{color:var(--terracotta-dark)}
.page-hero{padding-block:clamp(70px,9vw,120px);background:var(--cream);border-bottom:1px solid var(--border)}.page-hero-olive{background:var(--olive-soft)}.page-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(400px,.78fr);align-items:center;gap:clamp(60px,9vw,120px)}.page-hero .eyebrow{margin-bottom:18px}.page-hero h1{font-size:clamp(3.8rem,6.8vw,6.5rem)}.page-lead{max-width:670px;margin:28px 0 32px;color:var(--taupe);font-size:clamp(1.03rem,1.5vw,1.2rem)}.page-hero-image{height:570px;margin:0;overflow:hidden;border-radius:48% 48% var(--radius-xl) var(--radius-xl);background:var(--paper)}.page-hero-image img{height:100%;object-fit:cover}
.heading-note{max-width:420px;color:var(--taupe);font-size:.86rem}.product-section{background:var(--ivory)}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px 22px}.product-grid-two{grid-template-columns:repeat(2,minmax(0,460px));justify-content:center;gap:30px}.product-card{overflow:hidden;background:var(--paper);border:1px solid var(--border);border-radius:var(--radius-lg)}.product-card>img{aspect-ratio:4/3;object-fit:cover;background:var(--cream);transition:transform 450ms ease}.product-card:hover>img{transform:scale(1.025)}.product-card>div{padding:25px 26px 28px}.product-card h3{margin:12px 0 10px;font-size:2rem}.product-card p{min-height:54px;color:var(--taupe);font-size:.84rem}.product-card .text-link{margin-top:18px}.pill{display:inline-flex;padding:5px 9px;color:var(--olive-dark);background:var(--olive-soft);border-radius:999px;font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.soft-section{padding-block:clamp(82px,9vw,120px);background:var(--cream);border-block:1px solid var(--border)}.process-strip{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(60px,8vw,120px)}.process-strip ol{margin:0;padding:0;list-style:none;border-top:1px solid var(--border)}.process-strip li{display:grid;grid-template-columns:65px 1fr;gap:20px;padding:24px 0;border-bottom:1px solid var(--border)}.process-strip li>span,.help-grid span{color:var(--terracotta);font-family:var(--display);font-size:2.3rem}.process-strip h3{font-size:1.7rem}.process-strip p{margin-top:6px;color:var(--taupe);font-size:.86rem}.content-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(60px,9vw,150px)}.content-split>div:last-child{padding-top:20px}.content-split>div:last-child p{margin-bottom:18px;color:var(--taupe)}.content-split .text-link{margin-top:8px}
.gallery-hero{padding-block:clamp(72px,9vw,120px) clamp(80px,10vw,140px);text-align:center}.gallery-hero .breadcrumb{justify-content:center}.gallery-hero .eyebrow{margin-bottom:18px}.gallery-hero h1 em{color:var(--terracotta-dark);font-weight:500}.gallery-hero .page-lead{margin-inline:auto}.gallery-page{padding-bottom:clamp(95px,11vw,150px)}.gallery-masonry{columns:3;column-gap:18px}.gallery-masonry figure{break-inside:avoid;margin:0 0 18px;overflow:hidden;border-radius:var(--radius-md);background:var(--cream)}.gallery-masonry img{transition:transform 450ms ease}.gallery-masonry figure:hover img{transform:scale(1.02)}.gallery-masonry figcaption{padding:13px 15px;color:var(--taupe);font-size:.68rem;letter-spacing:.07em;text-transform:uppercase}
.contact-hero{padding-block:clamp(72px,9vw,120px) clamp(70px,8vw,105px);text-align:center}.contact-hero .breadcrumb{justify-content:center}.contact-hero .eyebrow{margin-bottom:18px}.contact-hero .page-lead{margin-inline:auto}.contact-section{padding-bottom:clamp(90px,11vw,150px)}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(55px,8vw,110px);align-items:start}.contact-options>div:first-child{margin-bottom:38px}.contact-options>div:first-child .eyebrow{margin-bottom:15px}.contact-options>div:first-child p:last-child{margin-top:22px;color:var(--taupe)}.contact-option{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:18px;padding:22px 0;border-top:1px solid var(--border)}.contact-option:last-child{border-bottom:1px solid var(--border)}.contact-option:hover strong{color:var(--terracotta-dark)}.contact-icon{color:var(--terracotta);font-family:var(--display);font-size:1.65rem}.contact-option div{display:flex;flex-direction:column}.contact-option strong{font-family:var(--display);font-size:1.5rem;font-weight:500;transition:color 250ms ease}.contact-option small{color:var(--taupe);font-size:.75rem}.contact-location{grid-template-columns:42px 1fr}.form-card{padding:clamp(30px,5vw,58px);background:var(--paper);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow)}.form-card>.eyebrow{margin-bottom:13px}.form-card>p:not(.eyebrow){margin:20px 0 30px;color:var(--taupe);font-size:.86rem}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:18px}.field label{font-size:.74rem;font-weight:700}.field input,.field select,.field textarea{width:100%;padding:13px 14px;color:var(--charcoal);background:var(--ivory);border:1px solid rgba(80,75,71,.28);border-radius:var(--radius-sm);outline:0}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--terracotta-dark);box-shadow:0 0 0 3px rgba(211,154,139,.18)}.field small,.form-note{color:var(--taupe);font-size:.68rem}.form-card button{width:100%;margin-top:5px}.form-note{margin-top:12px;text-align:center}.form-feedback{margin-bottom:14px;padding:10px 12px;color:var(--terracotta-dark);background:var(--terracotta-soft);border-radius:var(--radius-sm);font-size:.76rem}.contact-help{text-align:center}.contact-help h2{margin:14px auto 48px}.help-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;text-align:left}.help-grid>div{padding:28px;background:var(--paper);border:1px solid var(--border);border-radius:var(--radius-md)}.help-grid h3{margin:14px 0 9px;font-size:1.7rem}.help-grid p{color:var(--taupe);font-size:.82rem}
@media(max-width:900px){.page-hero-grid{grid-template-columns:1fr}.page-hero-image{height:min(650px,100vw);max-width:620px}.product-grid{grid-template-columns:repeat(2,1fr)}.process-strip,.content-split,.contact-grid{grid-template-columns:1fr}.gallery-masonry{columns:2}.contact-options{max-width:650px}.help-grid{grid-template-columns:1fr}}
@media(max-width:560px){.page-hero{padding-block:55px 75px}.page-hero-image{height:115vw;max-height:560px}.product-grid,.product-grid-two{grid-template-columns:1fr}.product-card p{min-height:0}.gallery-masonry{columns:1}.field-row{grid-template-columns:1fr}.form-card{padding:26px 20px}.process-strip li{grid-template-columns:52px 1fr}}

/* Accessibility as a central brand differentiator */
.category-card-accessibility{border-color:rgba(102,122,99,.42);box-shadow:0 16px 44px rgba(102,122,99,.1)}.category-card-accessibility .category-image{background:var(--paper)}.category-card-accessibility .category-image img{object-fit:contain;padding:16px;transform:none}.category-card-accessibility:hover .category-image img{transform:scale(1.015)}.category-card-accessibility .category-label{color:var(--success)}
.accessibility-hero-image{background:var(--paper);border:1px solid rgba(102,122,99,.22)}.accessibility-hero-image img{object-fit:contain;padding:28px}.accessibility-product-grid .product-card>img{object-fit:contain;padding:14px;background:var(--paper)}.accessibility-gallery .catalog-item{background:var(--paper)}.accessibility-gallery .catalog-item img{object-fit:contain;padding:10px;background:var(--paper)}
.accessibility-spotlight{position:relative;overflow:hidden;color:rgba(254,250,247,.76);background:var(--charcoal-deep)}.accessibility-spotlight::before{content:"";position:absolute;width:650px;aspect-ratio:1;right:-330px;top:-290px;border:1px solid rgba(232,231,221,.13);border-radius:50%}.accessibility-spotlight .eyebrow{color:var(--terracotta-soft)}.spotlight-header{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,390px);align-items:end;gap:clamp(50px,8vw,120px);margin-bottom:clamp(52px,7vw,84px)}.spotlight-header .eyebrow{grid-column:1/-1}.spotlight-header h2{max-width:820px;color:var(--paper);font-size:clamp(3.25rem,6.2vw,6.4rem);letter-spacing:-.045em}.spotlight-header>p:last-child{padding-bottom:8px;color:rgba(254,250,247,.68);font-size:1rem}
.spotlight-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);align-items:center;gap:clamp(50px,7vw,100px)}.spotlight-collage{display:grid;grid-template-columns:1.35fr .65fr;grid-template-rows:repeat(3,160px);gap:12px}.spotlight-image{margin:0;overflow:hidden;background:var(--paper);border:1px solid rgba(254,250,247,.18);border-radius:var(--radius-md)}.spotlight-image-main{grid-row:1/4}.spotlight-image img{width:100%;height:100%;padding:8px;object-fit:contain}.spotlight-kicker{color:var(--paper);font-family:var(--display);font-size:clamp(1.65rem,2.8vw,2.35rem);line-height:1.15}.spotlight-points{margin:30px 0;padding:0;list-style:none;border-top:1px solid rgba(254,250,247,.16)}.spotlight-points li{display:grid;grid-template-columns:48px 1fr;gap:16px;padding:20px 0;border-bottom:1px solid rgba(254,250,247,.16)}.spotlight-points span{color:var(--terracotta-soft);font-family:var(--display);font-size:1.65rem}.spotlight-points strong{display:block;color:var(--paper);font-family:var(--display);font-size:1.45rem;font-weight:500}.spotlight-points p{margin-top:4px;color:rgba(254,250,247,.6);font-size:.78rem}.accessibility-spotlight .btn-secondary{color:var(--paper);border-color:rgba(254,250,247,.38)}.accessibility-spotlight .btn-secondary:hover{color:var(--charcoal-deep);background:var(--paper)}
@media(max-width:900px){.spotlight-header,.spotlight-grid{grid-template-columns:1fr}.spotlight-header{gap:24px}.spotlight-header h2{max-width:760px}.spotlight-header>p:last-child{max-width:620px}.spotlight-collage{grid-template-rows:repeat(3,140px)}.spotlight-copy{max-width:650px}}
@media(max-width:560px){.category-card-accessibility .category-image img{padding:10px}.accessibility-hero-image img{padding:16px}.spotlight-header h2{font-size:clamp(3rem,14vw,4.35rem)}.spotlight-collage{grid-template-columns:1fr 1fr;grid-template-rows:240px 150px 150px}.spotlight-image-main{grid-column:1/-1;grid-row:auto}.spotlight-image:nth-child(4){grid-column:1/-1}.spotlight-points li{grid-template-columns:40px 1fr}.accessibility-spotlight .button-row .btn{width:100%}}

/* Robust mobile navigation: full viewport panel, including short screens */
.mobile-nav{width:100vw;height:calc(100vh - 112px);max-height:calc(100vh - 112px);height:calc(100dvh - 112px);max-height:calc(100dvh - 112px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-bottom:calc(36px + env(safe-area-inset-bottom));isolation:isolate}
@media(max-width:800px){.mobile-nav{height:calc(100vh - 88px);max-height:calc(100vh - 88px);height:calc(100dvh - 88px);max-height:calc(100dvh - 88px)}}
@media(max-width:1050px) and (max-height:720px){.mobile-nav{padding-top:18px;padding-bottom:calc(20px + env(safe-area-inset-bottom))}.mobile-nav>a:not(.btn){padding:11px 4px;font-size:1.45rem}.mobile-nav .btn{margin-top:18px}}
