:root{--paper:#efe8dc;--ink:#352a25;--accent:#854a3a;--champagne:#d7c3a0;--white:#fffdf8;--muted:#685c53;--line:#d9ccbc;--space:clamp(22px,4.5vw,76px);font-family:"Source Sans 3","Avenir Next","Segoe UI",sans-serif;color:var(--ink);background:var(--white);font-synthesis:none;scroll-behavior:smooth}

*{box-sizing:border-box}
body{margin:0;font-size:17px;line-height:1.6;padding-bottom:78px}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}
a:hover{text-decoration-thickness:2px}
button,input,textarea,select{font:inherit}
button,a,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
img{display:block;max-width:100%;height:auto}
svg{width:23px;height:23px;flex:none}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-weight:600;letter-spacing:-.035em;line-height:1.12}
h1{font-size:clamp(40px,5.4vw,76px)}
h2{font-size:clamp(30px,3.4vw,48px)}
h3{font-size:23px;letter-spacing:-.02em}
p+p{margin-top:18px}
p{max-width:68ch}
ul,ol{padding-left:23px}
li+li{margin-top:12px}
[hidden]{display:none!important}
:focus-visible{outline:3px solid var(--accent);outline-offset:5px}
::selection{background:var(--champagne);color:var(--ink)}
.wrap{width:min(1440px,calc(100% - var(--space)*2));margin-inline:auto}
.section{padding-block:clamp(52px,7vw,100px)}
.measure{max-width:65ch}
.lead{font-size:clamp(18px,1.6vw,22px);line-height:1.6}
.quiet-label{font-size:15px;color:var(--muted);margin-bottom:20px}
.text-link{font-weight:600;display:inline-block}
.skip-link{position:absolute;z-index:100;left:20px;top:-90px;padding:12px 18px;background:var(--ink);color:white}
.skip-link:focus{top:12px}
.actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:30px}
.button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:12px 22px;border:1px solid transparent;border-radius:4px;text-decoration:none;font-size:16px;font-weight:600;line-height:1.4;text-align:center;transition:background .18s,color .18s,border-color .18s}
.button:hover{text-decoration:none}
.button-primary{color:white;background:var(--accent)}
.button-primary:hover{background:#65372c}
.button-line{background:transparent;border-color:#8a7868;color:var(--ink)}
.button-line:hover{border-color:var(--ink);background:#f4eee4}
.button:disabled{opacity:.6;cursor:wait}

.site-header{border-bottom:1px solid #e7ddcf;background:var(--white)}
.header-inner{width:min(1540px,calc(100% - var(--space)*2));margin:auto;display:flex;align-items:center;justify-content:space-between;gap:28px;padding-block:24px}
.brand{display:block;flex:0 0 185px}
.brand-logo{width:185px;height:auto}
.site-header nav{display:flex;align-items:center;gap:clamp(16px,2.3vw,36px)}
.site-header nav a{font-size:15px;text-decoration:none;white-space:nowrap}
.site-header nav a:hover{color:var(--accent)}
.site-header .button{font-size:15px;min-height:43px;padding:11px 17px;white-space:nowrap}
.home-hero{display:grid;grid-template-columns:.82fr 1.35fr;gap:clamp(20px,4vw,70px);align-items:center;padding-block:64px 50px}
.hero-copy h1{font-size:clamp(40px,4.7vw,68px);max-width:11.2ch;letter-spacing:-.045em}
.hero-copy p{margin-top:26px;color:#685c53;max-width:34ch;font-size:19px}
.hero-copy .actions{gap:12px}
.hero-photo{margin-right:calc(var(--space)*-1)}
.hero-photo img{width:100%;height:auto}
.route-bar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr}
.route-bar>a{display:flex;align-items:baseline;gap:24px;text-decoration:none;padding-block:24px}
.route-bar>a:last-child{border-left:1px solid var(--line);padding-left:40px}
.route-bar strong{font-size:17px;font-weight:600}
.route-bar span{font-size:15px;color:var(--muted)}
.route-bar>a:hover span{color:var(--accent)}
.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:38px}
.section-heading>p{max-width:31ch;color:var(--muted)}
.section-heading .actions{margin:0}
.featured-formats{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:28px;align-items:end}
.format-link{display:block;text-decoration:none}
.format-link:hover h3{color:var(--accent)}
.format-card img{width:100%;aspect-ratio:1;object-fit:contain;background:var(--paper)}
.format-caption{padding-top:21px}
.format-caption h3{font-size:21px;line-height:1.25;letter-spacing:-.025em}
.format-caption p{font-size:15px;color:var(--muted);margin-top:7px;line-height:1.5}
.format-text{border-top:1px solid var(--line);min-height:170px;padding-top:20px;display:flex;align-items:center}
.format-text .format-caption{padding-top:0}
.format-text h3{font-size:24px}
.occasion-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px 36px}
.occasion-link{display:block;text-decoration:none}
.occasion-link img{width:100%;aspect-ratio:4/3;object-fit:contain;background:var(--paper)}
.occasion-link h3{font-size:29px;margin-top:24px}
.occasion-link p{margin-top:9px;max-width:35ch;color:var(--muted);font-size:17px}
.occasion-link:hover h3{color:var(--accent)}
.occasion-text{border-top:1px solid var(--line);padding-block:8px 20px;min-height:160px}
.fit-section{background:#efe6d7;padding-block:64px}
.fit-grid{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:clamp(30px,6vw,90px)}
.fit-grid img{width:100%;height:auto}
.fit-copy>p{margin-top:23px}
.fit-copy>.text-link{margin-top:26px}
.fit-copy>img{margin-top:30px}
.process-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);counter-reset:steps;gap:28px}
.process-list li{counter-increment:steps;border-top:1px solid #b3a08b;padding-top:22px;margin:0}
.process-list li::before{content:counter(steps,decimal-leading-zero);display:block;color:var(--accent);font-size:15px;margin-bottom:27px}
.process-list h3{font-size:22px;margin-bottom:16px}
.process-list p{font-size:16px;color:var(--muted)}

.breadcrumbs{width:min(1440px,calc(100% - var(--space)*2));margin:27px auto 0;display:flex;flex-wrap:wrap;gap:12px;font-size:13px;color:var(--muted)}
.breadcrumbs a{text-decoration:none}
.page-heading{padding-block:58px 32px}
.page-heading h1{max-width:17ch}
.page-heading p:not(.quiet-label){margin-top:26px;max-width:59ch;font-size:20px;color:var(--muted)}
.catalog-section{padding-top:30px}
.catalog-tools{display:flex;flex-wrap:wrap;gap:24px;align-items:end;border-block:1px solid var(--line);padding-block:23px;margin-bottom:40px}
.catalog-tools label{font-size:14px;font-weight:600}
.catalog-tools select{display:block;min-height:45px;min-width:220px;margin-top:8px;background:var(--white);border:1px solid #8a7868;border-radius:3px;padding:9px 12px}
.catalog-tools p{flex-basis:100%;font-size:14px;color:var(--muted);margin:0;padding:0}
.catalog-guide{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:36px;border-block:1px solid var(--line);padding-block:42px;margin-bottom:70px}
.catalog-guide>div{min-width:0}
.catalog-guide .quiet-label{margin-bottom:12px}
.catalog-guide h2{font-size:clamp(28px,3vw,42px);margin-bottom:18px}
.catalog-guide p{max-width:58ch}
.catalog-guide .guide-file-details{font-size:14px;color:var(--muted);margin-top:14px}
.catalog-guide .actions{margin-top:0;gap:18px}
@media(max-width:850px){.catalog-guide{grid-template-columns:1fr;gap:25px}.catalog-guide .actions{justify-content:flex-start}}
.format-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 30px}
.product-hero{padding-block:40px 68px;display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(35px,5vw,80px);align-items:center}
.product-visual img{width:100%;height:auto}
.product-copy h1{font-size:clamp(38px,4vw,62px);max-width:14ch}
.product-copy>.lead{font-size:18px;color:#685c53;margin-top:24px}
.quick-spec{margin-top:28px}
.quick-spec>div{display:grid;grid-template-columns:100px 1fr;gap:12px;border-top:1px solid var(--line);padding-block:12px;font-size:15px}
.quick-spec dt{font-weight:600}
.quick-spec dd{margin:0;color:var(--muted)}
.product-notes{border-block:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:8vw}
.product-notes h2{font-size:32px;margin-bottom:24px}
.product-notes p{font-size:17px;color:#685c53}
.detail-list{list-style:none;padding:0;margin:0}
.detail-list li{border-bottom:1px solid var(--line);padding:13px 0;margin:0}
.product-no-photo{grid-template-columns:1fr;padding-block:55px}
.product-no-photo .product-visual{display:none}
.product-no-photo .product-copy{max-width:850px}
.product-no-photo .product-copy h1{max-width:20ch}
.product-no-photo .quick-spec{max-width:670px}
.related-formats{margin-top:32px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.related-formats .format-caption h3{font-size:20px}
.product-notes details{border-top:1px solid var(--line);margin-top:24px;padding-top:18px}
summary{cursor:pointer;font-weight:600}
details[open]>summary{margin-bottom:18px}
details p{margin-block:12px}
.occasion-hero{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:50px;padding-block:48px 64px}
.occasion-hero h1{font-size:clamp(40px,4vw,62px)}
.occasion-hero .lead{font-size:19px;color:var(--muted);margin-top:28px}
.occasion-without-photo{grid-template-columns:1fr;max-width:1100px}
.occasion-without-photo>div:empty{display:none}
.project-questions{display:grid;grid-template-columns:1fr 1fr;gap:10vw;background:#f6f0e6;padding:48px}
.project-questions ul{list-style:none;padding:0;margin:0}
.project-questions li{padding-block:12px;border-bottom:1px solid var(--line);margin:0}
.kit-story{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:center}
.kit-story p{margin-top:24px}
.making-grid,.about-story{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}
.making-grid p,.about-story p{margin-top:25px}
.making-grid .text-link{margin-top:26px}
.making-grid>div:last-child{display:grid;gap:24px}
.making-grid img,.about-story img{width:100%}
.values-list{border-top:1px solid var(--line);display:grid;grid-template-columns:1.2fr 1fr;gap:28px 9vw}
.values-list>h2{grid-row:span 3}
.values-list>div{border-bottom:1px solid var(--line);padding-bottom:24px}
.values-list h3{margin-bottom:15px}
.values-list p{color:var(--muted)}

.guide{max-width:1050px}
.guide>header{margin-bottom:48px}
.guide h1{max-width:20ch}
.guide>header .lead{margin-top:28px;color:var(--muted)}
.guide>h2{font-size:30px;margin-top:38px;margin-bottom:20px}
.guide>p{margin-bottom:23px}
.table-scroll{overflow-x:auto;margin-block:36px}
table{border-collapse:collapse;width:100%;text-align:left;font-size:15px;line-height:1.55}
th,td{vertical-align:top;padding:18px 17px;border-bottom:1px solid var(--line);min-width:190px}
thead th{background:var(--paper);font-weight:600}
tbody th{font-weight:600}
.guide-checklist{padding-left:25px;margin-block:35px;max-width:70ch}
.guide-checklist li{padding-block:9px}
.guide-contact{margin-top:50px;padding:35px;background:#f1e9dc}
.guide-contact h2{font-size:31px}
.guide-contact p{margin-top:20px}
.guide-contact .button{margin-top:25px}
.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:start}
.contact-layout h1{font-size:clamp(46px,5.7vw,80px)}
.contact-layout .lead{margin-top:28px;max-width:32ch}
.contact-form-panel{border:1px solid var(--line);padding:34px}
.contact-form-panel h2{font-size:32px}
.context-label{color:var(--muted);font-size:15px;margin-top:15px;margin-bottom:23px}
.whatsapp-inline{display:inline-flex;align-items:center;gap:12px;margin-top:35px;font-weight:600}
form label{display:block;font-size:15px;font-weight:600;margin:18px 0 8px}
form label span,summary span{font-weight:400;color:var(--muted)}
form input:not([type=hidden]),form textarea{width:100%;padding:12px 13px;border:1px solid #8a7868;border-radius:3px;background:var(--white);color:var(--ink)}
form textarea{resize:vertical;min-height:110px}
.optional-fields{margin-top:20px;font-size:15px}
.form-privacy{font-size:13px;color:var(--muted);margin-block:23px}
form .button{width:100%}
.form-status{font-size:15px;margin-top:20px;color:var(--ink)}
.form-status:empty{display:none}
.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}

.closing-contact{background:var(--ink);color:white;padding-block:66px;margin-top:32px}
.closing-contact>.wrap{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10vw}
.closing-contact h2{font-size:clamp(36px,4.5vw,62px)}
.closing-contact p{color:#e9ddcd;max-width:40ch;font-size:19px}
.closing-contact .button{background:#fff;color:var(--ink);margin-top:27px}
.closing-contact .button:hover{background:#e8d8be}
.site-footer{display:grid;grid-template-columns:.75fr 1.25fr;gap:35px;padding-block:45px 35px}
.footer-brand{font-weight:700;font-size:28px;letter-spacing:-.045em;text-decoration:none}
.site-footer>div{display:flex;gap:18px 24px;flex-wrap:wrap;align-items:center}
.site-footer>div a{font-size:14px}
.site-footer>p{grid-column:1/-1;font-size:14px;color:var(--muted)}
.quick-contact{position:fixed;right:22px;bottom:20px;z-index:30;display:flex;background:var(--ink);color:#fff;box-shadow:0 4px 22px #352a2521;border-radius:6px;overflow:hidden}
.quick-contact a{display:flex;gap:9px;align-items:center;padding:14px 17px;text-decoration:none;font-size:15px;min-height:52px}
.quick-contact a+a{border-left:1px solid #9c8773}
.quick-contact a:hover{background:#594237}
dialog{background:var(--white);color:var(--ink);width:min(560px,calc(100vw - 30px));max-height:calc(100svh - 40px);padding:35px;border:0;border-radius:8px;overflow-y:auto;overscroll-behavior:contain}
dialog::backdrop{background:#352a2591}
dialog h2{font-size:32px;padding-right:20px}
.dialog-close{position:absolute;right:13px;top:9px;border:0;background:transparent;color:var(--ink);font-size:31px;line-height:1;min-width:40px;min-height:40px}
dialog .quiet-label{margin-bottom:18px}
#analytics-dialog p{margin-top:20px}
.analytics-banner{padding:18px var(--space);display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px;background:#efe6d7;font-size:14px}
.analytics-banner .button{font-size:14px;min-height:38px;padding:8px 13px}

@media(min-width:1500px){.hero-photo{margin-right:-40px}
.home-hero{padding-block:84px 70px}
}

@media(max-width:1100px){.header-inner{gap:20px}
.site-header nav{gap:17px}
.site-header nav a{font-size:14px}
.site-header .button{padding-inline:12px}
.route-bar>a{display:block}
.route-bar span{display:block;margin-top:5px}
.hero-copy .button{padding-inline:16px}
.home-hero{gap:25px}
.featured-formats{gap:22px}
.product-hero{gap:35px}
.contact-layout{gap:6vw}
}

@media(max-width:850px){:root{--space:24px}
.header-inner{flex-wrap:wrap;padding-block:18px 14px;gap:17px}
.brand{flex-basis:160px}
.brand-logo{width:160px}
.site-header nav{order:3;flex:0 0 100%;overflow-x:auto;gap:28px;padding:8px 0 2px}
.site-header>.header-inner>.button{margin-left:auto}
.home-hero{grid-template-columns:1fr;gap:30px;padding-top:42px}
.hero-copy h1{font-size:clamp(43px,8vw,64px);max-width:16ch}
.hero-copy p{max-width:43ch}
.hero-photo{margin-inline:calc(var(--space)*-1)}
.hero-photo img{width:100%}
.featured-formats{grid-template-columns:1fr 1fr}
.featured-formats .format-feature{grid-column:1/-1;display:grid;grid-template-columns:1fr}
.featured-formats .format-feature .format-link{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:25px}
.featured-formats .format-feature .format-caption{padding:0}
.section-heading{align-items:start}
.process-list{grid-template-columns:1fr 1fr;gap:35px}
.format-grid{grid-template-columns:1fr 1fr}
.fit-grid{grid-template-columns:1fr 1fr;gap:30px}
.product-hero,.occasion-hero{grid-template-columns:1fr;gap:35px}
.product-visual{max-width:680px;margin:auto;width:100%}
.product-copy h1{max-width:18ch}
.product-hero .product-copy{max-width:750px}
.occasion-hero>div:last-child{order:-1}
.occasion-hero>div:empty{display:none}
.occasion-hero h1{max-width:21ch}
.product-notes{gap:40px}
.related-formats{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.related-formats .format-caption h3{font-size:18px}
.project-questions{gap:35px;padding:32px}
.contact-layout{grid-template-columns:1fr;gap:38px}
.contact-layout h1 br{display:none}
.contact-layout .lead{max-width:52ch}
.contact-form-panel{max-width:680px;width:100%}
.catalog-tools{flex-wrap:wrap}
.catalog-tools p{margin-left:0}
.closing-contact>.wrap{gap:35px}
.site-footer{grid-template-columns:1fr;gap:20px}
.values-list{grid-template-columns:1fr 1fr;gap:25px}
.values-list>h2{grid-column:1/-1;grid-row:auto}
}

@media(max-width:600px){:root{--space:20px}
body{font-size:16px;padding-bottom:82px}
.brand{flex-basis:150px}
.brand-logo{width:150px}
.site-header .button{font-size:13px;min-height:38px;padding:9px 12px}
.site-header nav{gap:24px}
.home-hero{padding-top:30px;padding-bottom:30px}
.hero-copy h1{font-size:44px}
.hero-copy p{font-size:18px;margin-top:21px}
.hero-copy .actions{margin-top:25px}
.hero-copy .button{font-size:14px;padding-inline:14px}
.route-bar>a{padding-block:20px}
.route-bar>a:last-child{padding-left:20px}
.route-bar strong{font-size:15px}
.route-bar span{font-size:13px;max-width:17ch}
.section-heading{display:block;margin-bottom:28px}
.section-heading>.text-link,.section-heading>p,.section-heading>.button{margin-top:20px}
.section-heading h2 br{display:none}
.featured-formats{gap:28px 18px}
.featured-formats .format-feature .format-link{grid-template-columns:1fr;gap:0}
.featured-formats .format-feature .format-caption{padding-top:20px}
.format-caption h3{font-size:18px}
.format-caption p{font-size:14px}
.occasion-grid{grid-template-columns:1fr;gap:34px}
.occasion-link h3{font-size:28px;margin-top:18px}
.occasion-text{min-height:125px}
.fit-section{padding-block:40px}
.fit-grid{grid-template-columns:1fr;gap:33px}
.fit-copy h2 br{display:none}
.process-list{gap:30px 23px}
.process-list h3{font-size:19px}
.process-list p{font-size:15px}
.page-heading{padding-top:35px}
.page-heading h1{font-size:42px}
.page-heading p:not(.quiet-label){font-size:18px}
.catalog-tools{gap:18px}
.catalog-tools label{width:100%;margin:0}
.catalog-tools select{width:100%;min-width:0}
.catalog-tools p{padding:0}
.format-grid{gap:30px 18px}
.format-text{min-height:160px;padding:16px 0}
.format-text h3{font-size:21px}
.product-hero{padding-top:28px;padding-bottom:40px}
.product-copy h1{font-size:41px}
.product-copy .lead{font-size:17px}
.product-notes{grid-template-columns:1fr;gap:38px}
.product-notes h2{font-size:29px}
.related-formats{grid-template-columns:1fr;gap:32px}
.related-formats .format-link{display:grid;grid-template-columns:.85fr 1fr;gap:20px;align-items:center}
.related-formats .format-caption{padding-top:0}
.related-formats .format-text .format-link{display:block}
.related-formats .format-card.format-text{min-height:120px}
.occasion-hero{padding-top:28px;padding-bottom:40px}
.occasion-hero h1{font-size:41px}
.occasion-hero .lead{font-size:18px;margin-top:23px}
.project-questions{grid-template-columns:1fr;padding:30px 23px;gap:24px}
.kit-story,.making-grid,.about-story{grid-template-columns:1fr;gap:32px}
.values-list{grid-template-columns:1fr;gap:24px}
.values-list>h2{margin-bottom:12px}
.guide h1{font-size:40px}
.guide>header{margin-bottom:30px}
.guide-contact{padding:25px}
.contact-layout h1{font-size:47px}
.contact-form-panel{padding:24px}
.contact-form-panel h2{font-size:29px}
.closing-contact{padding-block:42px}
.closing-contact>.wrap{grid-template-columns:1fr;gap:23px}
.closing-contact h2{font-size:39px}
.closing-contact h2 br{display:none}
.closing-contact p{font-size:17px}
.closing-contact .button{margin-top:23px}
.site-footer>div{gap:15px 23px}
.quick-contact{left:20px;right:20px;bottom:max(12px,env(safe-area-inset-bottom));justify-content:center}
.quick-contact a{justify-content:center;flex:1;padding:12px 13px;min-height:50px}
dialog{padding:30px 23px;max-height:calc(100svh - 24px)}
dialog h2{font-size:29px}
.form-privacy{font-size:12px}
.quick-spec>div{grid-template-columns:84px 1fr}
.analytics-banner{justify-content:start}
.site-footer{padding-bottom:30px}
}

@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}
.button{transition:none}
}


/* Collection navigation. */
.collection-link{display:inline-block;margin-top:14px;font-size:14px;font-weight:600;color:var(--accent)}
.family-switcher{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.family-switcher a{border:1px solid var(--line);padding:10px 16px;text-decoration:none;border-radius:3px;font-size:15px}
.family-switcher [aria-current=page]{background:var(--ink);color:white}
.terms-note{font-size:14px;color:var(--muted);margin-top:14px}
.section-intro{margin-block:24px}
.home-without-photo{grid-template-columns:1fr;max-width:1100px}
.home-without-photo .hero-copy h1{max-width:19ch}
.home-without-photo .hero-copy p{max-width:52ch}
.home-without-photo .hero-photo:empty{display:none}
.text-only{grid-template-columns:1fr}
.text-only>div{max-width:760px}
@media(max-width:600px){.family-switcher{gap:8px}
.family-switcher a{font-size:14px;padding:10px 12px}
}

/* Product photographs keep their complete silhouette. Captions sit outside images. */
figure{margin:0}
.card-media{background:var(--paper);aspect-ratio:1;overflow:hidden}
.card-media>img{width:100%;height:100%;object-fit:contain}
.media-placeholder{width:100%;height:100%;min-height:180px;aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;color:var(--muted);background:#f1eadd;text-align:center;line-height:1.4}
.media-placeholder>svg{width:64px;height:64px;color:#9a8875;margin-bottom:8px}
.media-placeholder>span{font-size:15px}
.media-placeholder>small{font-size:12px;max-width:28ch}
.scene-placeholder{aspect-ratio:4/3;background:#eee5d7}
.card-media>.media-placeholder{aspect-ratio:auto;min-height:0;padding:16px;gap:8px}
.card-media>.media-placeholder>svg{width:44px;height:44px;margin-bottom:0}
.collection-link{min-height:28px}
.quick-spec>div{grid-template-columns:132px minmax(0,1fr)}

/* The home page is a visual introduction, rather than a smaller product detail. */
.home .home-hero{grid-template-columns:.88fr 1.12fr;gap:clamp(26px,4vw,64px);padding-block:54px 64px;align-items:center}
.home .hero-category{font-size:15px;font-weight:600;color:var(--ink);margin:0 0 24px;letter-spacing:0}
.home .hero-copy h1{font-size:clamp(44px,4.7vw,72px);max-width:12ch;font-weight:500;line-height:1.03;letter-spacing:-.052em}
.home .hero-copy>p:not(.hero-category):not(.hero-footnote){max-width:36ch;font-size:18px;line-height:1.65}
.home .hero-copy .hero-footnote{font-size:13px;margin-top:21px;max-width:38ch;color:var(--muted)}
.hero-composition{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.36fr);gap:16px;align-items:end;min-width:0}
.hero-main>a{display:block;background:var(--paper)}
.hero-main img{width:100%;aspect-ratio:1;object-fit:contain}
.hero-main figcaption{padding-top:18px;font-size:13px;max-width:27ch;line-height:1.5}
.hero-companion{width:100%;padding-bottom:2px}
.hero-companion>a{display:block;background:var(--paper)}
.hero-companion img{width:100%;aspect-ratio:1;object-fit:contain}
.hero-companion figcaption{font-size:13px;padding-top:10px;text-align:right;line-height:1.5}
.home .route-bar>a{display:block}
.home .route-bar span{display:block;margin-top:4px}
.collection-board{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:52px 30px;align-items:start}
.collection-board>.format-card{grid-column:span 4;min-width:0}
.collection-board>[data-family-card=lp-p02]{grid-column:span 7}
.collection-board>[data-family-card=lp-p03]{grid-column:span 5;align-self:end}
.collection-board>[data-family-card=lp-p02] .card-media{aspect-ratio:5/4}
.collection-board>[data-family-card=lp-p01]{grid-column:1/-1;background:var(--paper)}
.collection-board>[data-family-card=lp-p01] .format-link{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px}
.collection-board>[data-family-card=lp-p01] .format-caption{padding:30px 40px 30px 0}
.collection-board>[data-family-card=lp-p01] h3{font-size:clamp(28px,3vw,44px);max-width:14ch}
.collection-board>[data-family-card=lp-p01] .collection-link{margin-top:24px}
.home .occasion-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.occasion-media{aspect-ratio:4/3;overflow:hidden}
.occasion-media>img{width:100%;height:100%;object-fit:contain}
.project-selection{width:100%;height:100%;aspect-ratio:4/3;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);grid-template-rows:minmax(0,1fr);gap:12px;padding:clamp(14px,2vw,28px);background:var(--paper)}
.project-piece{min-width:0;min-height:0;height:100%;display:grid;grid-template-rows:minmax(0,1fr) auto}
.project-piece img{width:100%;height:100%;min-height:0;aspect-ratio:auto;object-fit:contain;object-position:center bottom}
.project-piece figcaption{font-size:12px;line-height:1.4;padding-top:12px;color:#685c53;min-height:46px}
.project-selection-gifting{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}
.project-selection-shipping{grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr)}
.occasion-hero .project-selection{height:auto}
.home .occasion-link h3{font-size:25px;line-height:1.16}
.home .occasion-link p{font-size:16px}
.fit-editorial{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:start}
.fit-editorial p{max-width:48ch;color:#685c53}
.fit-editorial .text-link{margin-top:24px}

/* A series is a five-way comparison. No duplicated, full-size SKU hero. */
.family-intro{display:grid;grid-template-columns:1.35fr .65fr;align-items:end;gap:7vw;padding-block:56px 55px}
.family-intro h1{font-size:clamp(42px,4.8vw,68px);max-width:19ch;font-weight:500}
.family-intro .lead{font-size:18px;color:var(--muted);margin-top:24px;max-width:58ch}
.family-intro .quiet-label{margin-bottom:18px}
.family-terms{padding:24px 27px;background:#f3ecdf}
.family-terms .quick-spec{margin:0}
.family-terms .quick-spec>div:first-child{border-top:0;padding-top:0}
.family-terms .quick-spec>div{grid-template-columns:1fr;font-size:14px;gap:3px}
.family-terms .quick-spec dd{color:#685c53}
.family-designs{padding-block:30px 70px}
.family-designs .section-heading{border-top:1px solid var(--line);padding-top:32px}
.family-designs h2{font-size:30px}
.family-designs .section-heading p{font-size:16px;max-width:37ch}
.sku-lineup{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.sku-lineup>.format-card{min-width:0}
.sku-lineup .format-caption h3{font-size:18px;font-weight:500;line-height:1.3}
.sku-lineup .format-caption p{font-size:12px}
.sku-lineup .media-placeholder{min-height:0;padding:18px 10px}
.sku-lineup .media-placeholder>svg{width:42px;height:42px;margin:0}
.sku-lineup .media-placeholder>span{font-size:13px}
.sku-lineup .media-placeholder>small{display:none}
.family-details{display:grid;grid-template-columns:1fr 1.2fr;gap:9vw;border-top:1px solid var(--line);padding-block:44px}
.family-details h2{font-size:30px;max-width:16ch}
.family-details p{font-size:16px;color:var(--muted);margin-top:25px}

/* A detail focuses on one exact design, with a separate way to change design. */
.design-switcher{display:flex;gap:8px;overflow-x:auto;padding-block:22px 6px;scroll-padding:16px}
.design-switcher a{flex:0 0 auto;max-width:240px;padding:9px 13px;border:1px solid var(--line);border-radius:3px;text-decoration:none;font-size:13px;line-height:1.4}
.design-switcher [aria-current=page]{border-color:var(--ink);background:var(--ink);color:#fff}
.product-hero{align-items:start;min-width:0}
.product-visual{min-width:0;position:sticky;top:24px}
.product-photo-stage{aspect-ratio:1;background:var(--paper)}
.product-photo-stage>img{height:100%;object-fit:contain}
.product-visual figcaption{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding-top:16px;font-size:13px;color:var(--muted)}
.product-copy{padding-top:12px;min-width:0}
.product-copy h1{font-weight:500}
.product-copy .quiet-label{font-size:14px}
.related-formats{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.related-formats .format-caption h3{font-size:18px;font-weight:500}

@media(max-width:1100px){
  .sku-lineup{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 20px}
  .family-intro{grid-template-columns:1.2fr .8fr;gap:35px}
}
@media(max-width:850px){
  .home .home-hero{grid-template-columns:1fr;gap:34px;padding-block:40px 48px}
  .home .hero-copy h1{font-size:clamp(48px,8.5vw,68px);max-width:16ch}
  .home .hero-copy>p:not(.hero-category):not(.hero-footnote){max-width:48ch}
  .hero-composition{max-width:680px;width:100%}
  .hero-main figcaption{max-width:40ch}
  .collection-board{grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 24px}
  .collection-board>.format-card,.collection-board>[data-family-card=lp-p02],.collection-board>[data-family-card=lp-p03]{grid-column:span 1}
  .collection-board>[data-family-card=lp-p02] .card-media{aspect-ratio:1}
  .collection-board>[data-family-card=lp-p01]{grid-column:1/-1}
  .collection-board>[data-family-card=lp-p01] .format-link{gap:24px}
  .collection-board>[data-family-card=lp-p01] .format-caption{padding:24px 24px 24px 0}
  .home .occasion-grid{grid-template-columns:1fr;gap:32px}
  .home .occasion-link{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:center}
  .home .occasion-link h3{margin-top:0}
  .family-intro{grid-template-columns:1fr;gap:30px;padding-block:38px}
  .family-terms{max-width:680px}
  .family-terms .quick-spec>div{grid-template-columns:145px 1fr}
  .product-visual{position:static}
  .product-copy{padding-top:0}
  .related-formats{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 22px}
}
@media(max-width:650px){
  .sku-lineup{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 18px}
}
@media(max-width:600px){
  .project-selection{padding:14px;gap:8px}
  .project-piece figcaption{font-size:11px;padding-top:8px;min-height:40px}
  .home .hero-copy h1{font-size:clamp(40px,10.5vw,60px)}
  .home .hero-category{margin-bottom:18px}
  .hero-composition{gap:12px}
  .hero-main figcaption{font-size:12px;max-width:24ch;padding-top:13px}
  .hero-companion figcaption{font-size:12px;padding-top:8px}
  .collection-board{gap:32px 18px}
  .collection-board .format-caption{padding-top:16px}
  .collection-board .format-caption p{font-size:13px}
  .collection-board>[data-family-card=lp-p01] .format-link{grid-template-columns:1fr;gap:0}
  .collection-board>[data-family-card=lp-p01] .format-caption{padding:22px 24px 27px}
  .collection-board>[data-family-card=lp-p01] h3{font-size:31px}
  .collection-board>[data-family-card=lp-p01] .card-media{aspect-ratio:4/3}
  .home .occasion-link{grid-template-columns:1fr;gap:18px}
  .fit-editorial,.family-details{grid-template-columns:1fr;gap:25px}
  .family-details h2{max-width:22ch}
  .family-designs{padding-top:10px;padding-bottom:45px}
  .family-designs .section-heading{padding-top:26px}
  .family-intro h1{font-size:42px}
  .family-terms{padding:22px}
  .family-terms .quick-spec>div{grid-template-columns:110px minmax(0,1fr)}
  .sku-lineup .format-caption h3{font-size:17px}
  .media-placeholder{padding:18px;min-height:140px;gap:8px}
  .media-placeholder>span{font-size:13px}
  .media-placeholder>small{font-size:11px}
  .product-copy h1{font-size:38px}
  .quick-spec>div{grid-template-columns:115px minmax(0,1fr)}
  .design-switcher{padding-top:18px}
  .related-formats .format-link{display:block}
  .related-formats .format-caption{padding-top:16px}
  .related-formats .format-caption h3{font-size:17px}
  .related-formats .media-placeholder>small{display:none}
}

/* The planning guide compares exact objects without creating a new catalog. */
.guide-jumps{display:flex;flex-wrap:wrap;gap:10px;margin-block:30px 44px}
.guide-jumps a{display:inline-flex;align-items:center;min-height:44px;border:1px solid var(--line);padding:10px 16px;text-decoration:none;font-size:14px}
.guide-jumps a:hover{border-color:var(--ink);background:var(--paper)}
.guide-decision{margin-top:54px;padding-top:34px;border-top:1px solid var(--line);scroll-margin-top:24px}
.guide-decision>h2{font-size:clamp(28px,3.1vw,40px);max-width:25ch;margin-bottom:20px}
.guide-decision>p{max-width:70ch;color:var(--muted)}
.guide-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;margin-top:30px}
.guide-choice{min-width:0;display:flex;flex-direction:column}
.guide-role{font-size:14px;font-weight:600;margin-bottom:14px}
.guide-choice-photo{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--paper)}
.guide-choice-photo>img{width:100%;height:100%;object-fit:contain}
.guide-choice h3{font-size:24px;line-height:1.3;margin-top:22px}
.guide-choice h3 a{text-decoration:none}
.guide-choice h3 a:hover{text-decoration:underline}
.guide-code{font-size:12px;color:var(--muted);margin-top:9px}
.guide-choice-focus{font-size:16px;color:var(--muted);margin-top:18px}
.guide-choice-spec{margin-block:24px}
.guide-choice-spec>div{border-top:1px solid var(--line);padding-block:12px;display:grid;grid-template-columns:110px minmax(0,1fr);gap:14px;font-size:14px}
.guide-choice-spec dt{font-weight:600}
.guide-choice-spec dd{margin:0;color:var(--muted)}
.guide-choice>.button{align-self:flex-start;margin-top:auto}
.guide-decision>.guide-decision-next{margin-top:28px;color:var(--ink)}
.guide-packed-sample{margin-top:28px}
.guide-packed-sample .guide-checklist{margin-block:20px 0}
.guide-delivery .guide-role{border-left:3px solid #b79970;padding-left:12px}
.guide-decision caption{text-align:left;font-size:14px;color:var(--muted);padding-bottom:16px}

/* Explanation uses three visual languages: role comparison, numbered anatomy,
   and proportionate silhouettes. Labels remain readable HTML outside the photo. */
.packaging-roles{scroll-margin-top:28px}
.role-explanation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.role-explanation{min-width:0}
.role-image{display:block;background:var(--paper);aspect-ratio:1;overflow:hidden}
.role-image img{width:100%;height:100%;object-fit:contain}
.role-explanation-copy{padding-top:22px}
.role-label{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--muted);margin-bottom:15px}
.role-label span{display:inline-flex;border:1px solid #9d8973;border-radius:50%;width:30px;height:30px;align-items:center;justify-content:center;font-size:11px;flex:none}
.role-explanation h3{font-size:25px}
.role-explanation-copy>p:not(.role-label){font-size:16px;color:var(--muted);margin-top:17px}
.role-explanation .text-link{font-size:14px;margin-top:22px}
.explanation-footnote{font-size:14px;margin-top:30px;color:var(--muted)}
.anatomy-section{background:#f2eadc;padding-block:clamp(44px,6vw,86px);scroll-margin-top:24px}
.anatomy-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:7vw;align-items:center}
.anatomy-figure,.anatomy-copy{min-width:0}
.anatomy-photo{position:relative;aspect-ratio:1}
.anatomy-photo img{width:100%;height:100%;object-fit:contain}
.anatomy-point{position:absolute;width:28px;height:28px;border:2px solid white;border-radius:50%;background:var(--ink);color:white;font-size:12px;display:flex;justify-content:center;align-items:center;transform:translate(-50%,-50%);box-shadow:0 2px 8px #352a2520}
.anatomy-point-1{left:67%;top:73%}.anatomy-point-2{left:51%;top:39%}.anatomy-point-3{left:44%;top:63%}.anatomy-point-4{left:57%;top:24%}
.anatomy-figure figcaption{display:flex;justify-content:space-between;gap:16px;font-size:13px;color:var(--muted);padding-top:17px}
.anatomy-copy h2{font-size:clamp(32px,3.4vw,48px)}
.anatomy-intro{font-size:16px;color:var(--muted);margin-block:22px 30px}
.anatomy-note{border-top:1px solid #cbbba7;padding-block:16px}
.anatomy-note summary{font-size:17px;list-style-position:inside}
.anatomy-note summary span{font-size:12px;color:var(--muted);padding-inline:8px 12px}
.anatomy-note p{font-size:15px;color:var(--muted);margin:15px 0 0 25px}
.anatomy-copy>.button{margin-top:26px}
.pouch-size-guide{display:grid;grid-template-columns:.8fr 1.2fr;gap:6vw;align-items:center;border-top:1px solid var(--line)}
.pouch-size-guide>div>p:not(.quiet-label){font-size:16px;margin-top:24px;color:var(--muted)}
.pouch-size-comparison{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}
.pouch-size-comparison figure{min-width:0}
.pouch-size-comparison svg{display:block;width:100%;height:auto;fill:#e6d8c0;stroke:#79654e;stroke-width:1.5;vector-effect:non-scaling-stroke}
.pouch-size-comparison figcaption{display:grid;gap:9px;padding-top:18px;font-size:12px;line-height:1.45}
.pouch-size-comparison strong{font-size:16px;font-weight:600}
.pouch-size-comparison span{color:var(--muted)}
.pouch-size-comparison a{font-size:13px;padding-block:8px}
@media(max-width:850px){
  .anatomy-layout,.pouch-size-guide{grid-template-columns:1fr;gap:38px}
  .anatomy-figure{max-width:680px;margin-inline:auto;width:100%}
  .anatomy-copy{max-width:680px}
  .role-explanation h3{font-size:22px}
  .role-explanation-copy>p:not(.role-label){font-size:15px}
}
@media(max-width:600px){
  .role-explanation-grid{grid-template-columns:1fr;gap:32px}
  .role-explanation{display:grid;grid-template-columns:34vw minmax(0,1fr);gap:20px;align-items:start}
  .role-explanation-copy{padding-top:0}
  .role-label{font-size:12px;gap:8px;margin-bottom:12px}
  .role-label span{width:25px;height:25px;font-size:10px}
  .role-explanation h3{font-size:22px}
  .role-explanation-copy>p:not(.role-label){margin-top:12px;font-size:14px}
  .role-explanation .text-link{margin-top:15px}
  .anatomy-point{width:25px;height:25px;font-size:11px}
  .anatomy-figure figcaption{font-size:12px}
  .anatomy-copy .quiet-label{margin-bottom:16px}
  .anatomy-copy>.button{width:100%}
  .pouch-size-comparison{gap:12px}
  .pouch-size-comparison strong{font-size:13px}
  .pouch-size-comparison figcaption{font-size:11px}
}
@media(max-width:600px){
  .guide-choices{grid-template-columns:1fr;gap:38px}
  .guide-decision{margin-top:38px;padding-top:28px}
  .guide-choice h3{font-size:23px}
  .guide-choice-spec>div{grid-template-columns:105px minmax(0,1fr);gap:12px}
  .guide-choice>.button{width:100%}
}

/* Image positions are built from their intended job before master delivery.
   Adopted files replace a reserved composition through explicit media selection. */
.planned-visual{margin:0;min-width:0}
.planned-image-frame{position:relative;aspect-ratio:var(--image-ratio);background:#efe7da;overflow:hidden}
.planned-image-frame>img,.planned-image-frame>picture,.planned-image-frame>picture>img{display:block;width:100%;height:100%;object-fit:contain}
.composition-placeholder{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:20px;color:#685c53;background:linear-gradient(140deg,#f4eee4,#e5d9c4)}
.composition-placeholder svg{display:block;flex:0 1 auto;width:42%;max-height:60%;height:auto;stroke:currentColor;stroke-width:1;opacity:.7}
.composition-placeholder .composition-detail{stroke:#aa9679}
.composition-placeholder>span{font-size:11px;letter-spacing:.13em;text-transform:uppercase}
.planned-visual figcaption{padding-top:14px;font-size:14px;line-height:1.45;color:var(--muted)}
.visual-action-labels{display:flex;flex-wrap:wrap;gap:10px 26px;padding:15px 0 0;margin:0;list-style:none;counter-reset:visual-step}
.visual-action-labels li{counter-increment:visual-step;margin:0;font-size:13px;flex:1 1 100px}
.visual-action-labels li::before{content:counter(visual-step,decimal-leading-zero);font-size:10px;color:var(--muted);margin-right:9px}
.brand-panorama{margin-block:20px 40px}
.brand-panorama .planned-image-frame{max-height:650px}
.planned-panorama .composition-placeholder{background:linear-gradient(120deg,#352a25,#65503f);color:#ece0cf}
.planned-panorama figcaption{display:flex;justify-content:flex-end}
.visual-spread{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(30px,6vw,90px);align-items:center;border-top:1px solid var(--line)}
.visual-spread-copy p{margin-top:24px;color:var(--muted)}
.visual-spread-reverse .planned-visual{order:2}
.visual-spread-reverse{grid-template-columns:.8fr 1.2fr}
.visual-board>h2{margin-bottom:35px;max-width:21ch}
.visual-board-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:28px}
.visual-board-workshop .planned-image-frame{aspect-ratio:var(--image-ratio)}
.visual-board-process{background:#f6f0e6;padding-inline:clamp(20px,3vw,45px)}
.visual-board-process .planned-visual:nth-child(2){padding-top:38px}
.visual-board-process .planned-visual:nth-child(3){padding-top:76px}
.material-atelier{background:#f1e8d8;padding-inline:clamp(20px,4vw,60px)}
.material-atelier-intro{max-width:650px}
.material-atelier-intro>p:last-child{margin-top:24px;color:var(--muted)}
.material-atelier-images{display:grid;grid-template-columns:.8fr 1.2fr;gap:36px;align-items:center;margin-top:42px}
.material-atelier-images>.planned-visual:first-child{transform:rotate(-2deg)}
.material-atelier-images>.planned-visual:last-child{padding-top:70px}
.sample-review-layout{display:grid;grid-template-columns:1.3fr .7fr;gap:6vw;align-items:center}
.sample-review-layout>div>p{margin-top:24px;color:var(--muted)}
.sample-review-layout .text-link{margin-top:25px}
.workshop-panorama{margin-bottom:20px}
.about-story{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}
.project-environment{margin-block:25px 45px}
.project-environment .planned-image-frame{max-height:680px}
.planned-scene .composition-placeholder{background:linear-gradient(130deg,#ead8c2,#f7f0e5);color:#685c53}
.guide-image-studies{display:grid;gap:45px;margin-top:50px}
.region-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;counter-reset:photo-step}
.comparison-scroll{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--muted) var(--line)}
.comparison-scroll:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.comparison-scroll>img{display:block;width:100%;height:auto;max-width:none}
.comparison-scroll-hint{display:none}
.region-grid>li{min-width:0;counter-increment:photo-step}
.region-photo{display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;background:#efe8dc;padding:20px}
.region-photo>img{display:block;width:100%;height:100%;object-fit:contain;min-height:0}
.region-label{display:block;padding-top:15px;font-size:14px;line-height:1.5}
.regions-sequence .region-label::before{content:counter(photo-step,decimal-leading-zero);color:var(--muted);font-size:11px;margin-right:12px}
.regions-artwork .region-grid,.regions-states .region-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.regions-artwork .region-photo,.regions-states .region-photo{aspect-ratio:4/3}
.regions-review .region-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start}
.regions-review .region-grid>li:first-child{grid-column:1/3;grid-row:1/3;align-self:center}
.regions-review .region-grid>li:first-child .region-photo{aspect-ratio:1/1}
.regions-review .region-photo{aspect-ratio:4/3;padding:14px}
.visual-spread-regions{grid-template-columns:1fr;gap:36px}
.visual-spread-regions>.visual-spread-copy{grid-row:1;max-width:760px}
.visual-spread-regions>.planned-visual{order:2}
.sample-review-layout:has(.photographic-regions){grid-template-columns:1fr;gap:36px}
.sample-review-layout:has(.photographic-regions)>div{grid-row:1;max-width:760px}
@media(max-width:850px){
  .regions-review .region-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .regions-review .region-grid>li:first-child{grid-column:1/3;grid-row:auto;max-width:540px;justify-self:center;width:100%}
  .visual-spread,.visual-spread-reverse,.about-story,.sample-review-layout{grid-template-columns:1fr;gap:32px}
  .visual-spread-reverse .planned-visual{order:0}
  .visual-spread-copy{max-width:650px}
  .material-atelier-images{grid-template-columns:1fr;gap:30px}
  .material-atelier-images>.planned-visual:first-child{transform:none;max-width:75%}
  .material-atelier-images>.planned-visual:last-child{padding-top:0}
  .visual-board-process .planned-visual:nth-child(n){padding-top:0}
}
@media(max-width:600px){
  .comparison-scroll>img{width:900px}
  .comparison-scroll-hint{display:block;margin-top:8px;font-size:12px}
  .photographic-regions .region-grid{grid-template-columns:1fr;gap:30px}
  .regions-review .region-grid>li:first-child{grid-column:auto;max-width:none}
  .planned-image-frame{aspect-ratio:var(--mobile-ratio)}
  .visual-board-grid{grid-template-columns:1fr;gap:30px}
  .material-atelier-images>.planned-visual:first-child{max-width:100%}
  .brand-panorama{margin-top:32px}
  .composition-placeholder>span{font-size:10px}
  .visual-action-labels{gap:12px}
  .visual-action-labels li{font-size:12px;flex-basis:80px}
}

/* Keep keyboard focus visible against dark contact surfaces. */
.quick-contact a:focus-visible{outline-color:var(--white);outline-offset:-4px}
.closing-contact a:focus-visible{outline-color:var(--white)}

/* Useful native explanations while three rejected photographs await revision. */
.covering-reference-board{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0;padding:0;list-style:none}
.covering-reference-board li{min-width:0}
.covering-reference-board a{display:block;text-decoration:none}
.covering-reference-photo{display:block;aspect-ratio:1;background:var(--white);overflow:hidden}
.covering-reference-photo img{display:block;width:100%;height:100%;object-fit:contain}
.covering-reference-label{display:block;margin-top:9px;font-size:14px;line-height:1.35;color:var(--ink)}
.finish-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0;padding:0;list-style:none}
.finish-option{min-width:0}
.finish-swatch{display:grid;place-items:center;aspect-ratio:1;background:#e5d8c3;font:clamp(48px,5vw,76px)/1 Georgia,serif;letter-spacing:-.08em}
.finish-ink{color:#4c352a}
.finish-foil{color:#8a652e;background:linear-gradient(135deg,#e7dbc5,#f3ebda 55%,#dfcfb2);text-shadow:0 1px 0 #fff4d7,0 -1px 0 #6f4e20}
.finish-relief{color:#e5d8c3;text-shadow:-1px -1px 1px #fff8e9,1px 1px 1px #9b8a71}
.finish-option h3{margin:16px 0 10px;font-size:16px;line-height:1.4}
.finish-option details,.pouch-reference-checks{font-size:14px;line-height:1.6}
.finish-option summary,.pouch-reference-checks summary{cursor:pointer;color:var(--ink)}
.finish-option details p{margin-top:12px;color:var(--muted)}
.pouch-reference-image{display:block;aspect-ratio:4/3;background:var(--white);overflow:hidden}
.pouch-reference-image img{display:block;width:100%;height:100%;object-fit:contain}
.pouch-reference-checks{margin-top:18px;border-top:1px solid var(--line);padding-top:16px}
.pouch-reference-checks ol{margin:16px 0 0;padding-left:20px}
.pouch-reference-checks li{margin-top:12px}
.pouch-reference-checks strong,.pouch-reference-checks span{display:block}
.pouch-reference-checks span{color:var(--muted)}
@media(max-width:850px){
  .material-atelier-images>.planned-native-fallback:first-child{max-width:none}
}
@media(max-width:600px){
  .finish-options{grid-template-columns:1fr;gap:24px}
  .finish-option{display:grid;grid-template-columns:85px minmax(0,1fr);column-gap:18px;align-items:start}
  .finish-swatch{grid-row:span 2;font-size:48px}
  .finish-option h3{margin:0 0 8px}
  .finish-option details{grid-column:2}
}

.construction-reference-image{display:block;aspect-ratio:1;background:var(--white);overflow:hidden}
.construction-reference-image img{display:block;width:100%;height:100%;object-fit:contain}
.construction-reference-checks{font-size:14px;line-height:1.6;margin-top:18px;border-top:1px solid var(--line);padding-top:16px}
.construction-reference-checks summary{cursor:pointer;color:var(--ink)}
.construction-reference-checks ul{margin:16px 0 0;padding-left:20px}
.construction-reference-checks li{margin-top:12px}
.construction-reference-checks strong,.construction-reference-checks span{display:block}
.construction-reference-checks span{color:var(--muted)}

/* Contact choices come before the email fields; the title is a focus target only. */
.dialog-alternative{margin-block:0 20px;font-size:15px}
.dialog-alternative a{display:inline-flex;align-items:center;min-height:44px;font-weight:600}
