:root{--surface:#f5efe5;--surface-warm:#e8ddcb;--coffee:#4a3328;--ink:#1b1b1b;--muted:#66584e;--gold:#a87925;--border:#cbbeaa;--white:#fffdf9;--body:Arial,Helvetica,sans-serif;--display:Georgia,Cambria,serif;--motion:180ms ease;--gutter:16px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--surface);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.55}body.dialog-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}img{display:block;max-width:100%;height:auto}svg{flex-shrink:0}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.15;font-weight:500;letter-spacing:-.035em}h1{font-size:36px}h2{font-size:28px}h3{font-size:18px}p+p{margin-top:20px}button{background:none;border:0}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--coffee);outline-offset:5px}main:focus{outline:none}::selection{color:var(--white);background:var(--coffee)}[hidden]{display:none!important}.shell{width:calc(100% - var(--gutter)*2);max-width:1280px;margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:8px;left:8px;z-index:100;background:var(--white);padding:12px 20px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.eyebrow{text-transform:uppercase;font-size:11px;line-height:1.4;letter-spacing:.15em;font-weight:600;margin-bottom:16px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:24px;background:var(--coffee);color:var(--white);min-height:52px;padding:14px 20px;font-size:14px;border:1px solid var(--coffee);border-radius:2px;transition:background var(--motion),color var(--motion)}.button:hover{background:var(--ink);border-color:var(--ink)}.button-light{background:var(--surface);border-color:var(--surface);color:var(--coffee)}.button-light:hover{background:var(--white);color:var(--ink);border-color:var(--white)}.button-outline{background:transparent;color:var(--coffee)}.button-outline:hover{color:var(--white)}.text-link{display:inline-flex;gap:16px;align-items:center;min-height:44px;font-size:14px;padding:5px 0;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}.text-link:hover{color:var(--muted)}.icon-button{display:inline-flex;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:10px;border-radius:2px}.icon-button:hover{background:var(--surface-warm)}
/* The header stays small so the garments lead. */
.announcement{background:var(--coffee);color:var(--surface);font-size:10px;letter-spacing:.06em;text-align:center;padding:7px 16px}.site-header{background:var(--surface)}.header-main{height:88px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px}.header-left,.header-actions{display:flex;align-items:center;gap:12px;min-width:0}.header-actions{justify-content:flex-end}.brand{display:block;text-align:center}.wordmark{display:flex;flex-direction:column;font-family:var(--display);line-height:.84;align-items:center;color:inherit}.wordmark strong{font-size:40px;letter-spacing:-.06em;font-weight:700}.wordmark em{font-size:15px;font-weight:400;letter-spacing:.005em;margin-top:9px}.brand-emblem,.header-caption,.enquiry-link,.desktop-nav{display:none}.desktop-nav a[aria-current=page]{text-decoration:underline;text-underline-offset:8px}.mobile-break{display:block}
/* The opening image stage. */
.campaign-stage{display:grid;grid-template-columns:1fr;background:var(--surface-warm);overflow:hidden}.campaign-panel{display:none;position:relative;min-width:0;background:var(--surface-warm)}.campaign-panel.is-selected{display:block}.campaign-panel img{width:100%;height:min(112vw,580px);object-fit:contain;object-position:center}.campaign-panel>span{position:absolute;bottom:12px;right:12px;left:12px;display:flex;align-items:center;justify-content:space-between;background:var(--surface);padding:8px 12px;min-height:44px;font-size:12px;opacity:0;transition:opacity var(--motion)}.campaign-panel:hover>span,.campaign-panel:focus-visible>span{opacity:1}.campaign-controls{display:flex;justify-content:center;background:var(--surface-warm);gap:10px}.campaign-controls button{min-width:44px;min-height:44px;font-size:11px;color:var(--muted);position:relative}.campaign-controls button[aria-pressed=true]{color:var(--ink)}.campaign-controls button[aria-pressed=true]:after{content:"";position:absolute;bottom:6px;left:13px;right:13px;height:2px;background:var(--coffee)}.campaign-caption{background:var(--coffee);color:var(--surface);padding:28px var(--gutter) 32px;display:flex;flex-direction:column;align-items:flex-start;gap:24px}.campaign-caption h1{font-family:var(--display);font-size:32px;line-height:1.12;letter-spacing:-.03em}.campaign-caption .eyebrow{font-size:10px;opacity:.8;margin-bottom:12px}.campaign-caption .button{min-width:246px}.collection-directions{display:grid;grid-template-columns:1fr;margin-block:24px 48px}.collection-directions a{display:flex;justify-content:space-between;align-items:center;min-height:55px;border-bottom:1px solid var(--border);font-size:14px}.collection-directions a:hover{color:var(--coffee)}
/* The collection is an image catalogue, with compact product labels. */
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.section-heading .eyebrow{margin-bottom:10px}.section-heading .text-link{flex-shrink:0}.product-grid{display:grid;grid-template-columns:1fr;gap:28px 14px}.product-card{min-width:0}.product-image{position:relative;overflow:hidden;background:var(--surface-warm)}.product-image img{width:100%;aspect-ratio:1167/1347;object-fit:contain;transition:transform 260ms ease}.product-card a:hover img{transform:scale(1.025)}.card-action{position:absolute;bottom:0;left:0;right:0;background:var(--coffee);color:var(--white);padding:12px 16px;font-size:12px;display:flex;align-items:center;justify-content:space-between;transform:translateY(100%);transition:transform var(--motion)}.product-card a:hover .card-action,.product-card a:focus-visible .card-action{transform:translateY(0)}.product-label{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:12px}.product-label h3{font-size:15px;letter-spacing:-.015em;line-height:1.35}.product-label svg{width:18px;height:18px}.product-card p{font-size:12px;line-height:1.4;color:var(--muted);margin-top:5px}.selected-section{margin-bottom:56px}.selected-section .section-heading{align-items:flex-start;flex-direction:column;gap:8px}.atelier-invitation{background:var(--surface-warm);padding:48px 0}.atelier-invitation>.shell{display:grid;gap:36px}.atelier-invitation h2{font-size:34px;margin-bottom:20px}.atelier-invitation p:not(.eyebrow){max-width:440px;color:var(--muted)}.atelier-invitation .button{margin-top:28px}.atelier-details{display:grid;align-content:center;gap:0}.atelier-details span{padding:20px 0;border-bottom:1px solid var(--border);font-size:12px;display:flex;gap:28px;color:var(--muted)}.atelier-details strong{font-size:16px;font-weight:400;color:var(--coffee)}.legacy-invitation{display:grid;gap:28px;padding-block:56px}.legacy-invitation>img{width:64px}.legacy-invitation h2{margin-bottom:20px}.legacy-invitation p:not(.eyebrow){max-width:560px;color:var(--muted)}.legacy-invitation .text-link{margin-top:20px}
/* Standalone collection. */
.collection-heading{padding-block:40px 28px}.collection-heading h1{margin-bottom:14px}.collection-heading>p:last-child{font-size:14px;color:var(--muted);max-width:550px}.collection-body{padding-bottom:48px}.catalog-controls{display:grid;gap:16px}.catalog-search{display:flex;align-items:center;border-bottom:1px solid var(--border);gap:10px;min-width:0}.catalog-search svg{width:20px}.catalog-search input{width:100%;min-width:0;background:none;border:0;padding:12px 0;min-height:48px;font-size:14px}.sort-field{display:flex;align-items:center;gap:12px;font-size:12px}.sort-field label{white-space:nowrap;color:var(--muted)}select{border:1px solid var(--border);background:var(--surface);border-radius:2px;min-height:48px;padding:10px 28px 10px 12px;max-width:100%}.sort-field select{width:100%;font-size:13px}.filter-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.filter-button{font-size:12px;min-height:44px;border:1px solid var(--border);padding:10px 14px;border-radius:2px;transition:background var(--motion)}.filter-button[aria-pressed=true]{background:var(--coffee);color:var(--white);border-color:var(--coffee)}.filter-button:hover:not([aria-pressed=true]){background:var(--surface-warm)}.catalog-meta{display:flex;justify-content:space-between;align-items:center;font-size:12px;margin:12px 0 20px;color:var(--muted)}.catalog-meta .text-link{font-size:12px}.image-note{font-size:12px;line-height:1.6;color:var(--muted);max-width:680px;margin-top:32px}.empty-state{text-align:center;padding:64px 16px;background:var(--surface-warm)}.empty-state p{max-width:430px;margin:16px auto 24px}.media-error{display:flex;align-items:center;justify-content:center;min-height:280px;padding:24px;color:var(--muted)}
/* Product gallery and tailoring information. */
.breadcrumb{display:flex;align-items:center;gap:12px;padding-block:20px;font-size:11px;color:var(--muted);flex-wrap:wrap}.breadcrumb a{text-decoration:underline;text-underline-offset:3px}.detail-layout{display:grid;gap:28px}.gallery-main{display:block;position:relative;width:100%;padding:0;background:var(--surface-warm);text-align:left}.gallery-main>img{width:100%;max-height:780px;object-fit:contain}.zoom-label{position:absolute;right:12px;bottom:12px;display:flex;gap:8px;align-items:center;padding:10px 12px;background:var(--surface);font-size:11px}.zoom-label svg{width:18px;height:18px}.gallery-thumbs{display:flex;gap:12px;margin-top:12px}.gallery-thumbs button{padding:5px;border:1px solid transparent;text-align:center;font-size:11px;min-width:64px}.gallery-thumbs button[aria-pressed=true]{border-color:var(--coffee)}.gallery-thumbs img{width:64px;height:74px;object-fit:cover}.gallery-thumbs span{display:block;padding-top:5px}.detail-copy .eyebrow{margin-bottom:12px}.detail-copy h1{font-size:34px}.piece-reference{font-size:12px;color:var(--muted);margin-top:10px}.detail-description{font-size:15px;margin-top:28px;max-width:500px}.palette-label{font-size:12px;margin-top:12px;color:var(--muted)}.fit-label{display:block;font-size:12px;margin:28px 0 8px}.detail-copy>select{width:100%;font-size:14px}.detail-enquire{display:flex;margin-top:12px;width:100%}.detail-note{font-size:11px;color:var(--muted);margin-top:10px;text-align:center}.detail-accordions{margin-top:28px}details{border-top:1px solid var(--border)}details:last-child{border-bottom:1px solid var(--border)}summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;font-size:13px;min-height:52px}summary::-webkit-details-marker{display:none}summary svg{width:18px;transition:transform var(--motion)}details[open] summary svg{transform:rotate(45deg)}details p{font-size:13px;line-height:1.7;color:var(--muted);padding:0 24px 20px 0}.detail-copy .image-note{margin-top:20px;font-size:11px}.related-section{padding-block:56px}.related-section .section-heading h2{font-size:24px}.related-section .section-heading .text-link{font-size:12px}
/* Family story, separate from the showroom. */
.story-heading{padding-block:48px}.story-heading h1{font-size:34px;max-width:820px}.story-heading>p:last-child{max-width:560px;color:var(--muted);margin-top:24px}.legacy-story{background:var(--coffee);color:var(--surface);padding-block:48px}.story-layout{display:grid;gap:40px}.story-emblem{display:flex;gap:24px;align-items:center}.story-emblem img{filter:brightness(0) invert(.9);width:100px;height:auto}.story-emblem p{font-size:15px}.story-emblem span{font-size:12px;opacity:.7}.story-copy h2{margin-bottom:24px}.story-copy p:not(.eyebrow){font-size:15px;line-height:1.8;color:var(--surface-warm)}.next-chapter{display:grid;gap:24px;padding-block:56px}.next-chapter p{color:var(--muted)}.next-chapter .text-link{margin-top:20px}.symbol-section{display:grid;gap:24px;padding-block:32px 56px;border-top:1px solid var(--border)}.symbol-art img{width:70px;height:auto;mix-blend-mode:multiply}.symbol-section h2{font-size:26px;margin-bottom:20px}.symbol-section p:not(.eyebrow){color:var(--muted);max-width:600px}.symbol-section .text-link{margin-top:20px}
/* Enquiry form. */
.atelier-heading{display:grid;gap:36px;padding-block:44px}.atelier-heading h1{margin-bottom:20px}.atelier-heading>div>p:not(.eyebrow){color:var(--muted);max-width:460px}.atelier-heading .text-link{margin-top:20px}.atelier-steps{list-style:none;padding:0;margin:0;display:grid;gap:24px}.atelier-steps li{display:flex;gap:20px}.atelier-steps li>span{font-size:12px;color:var(--muted);padding-top:2px}.atelier-steps h2{font-size:18px;letter-spacing:-.02em}.atelier-steps p{font-size:13px;color:var(--muted);margin-top:8px}.form-section{padding-bottom:56px}.inquiry-form{background:var(--surface-warm);padding:28px 20px}.form-intro{max-width:560px;margin-bottom:32px}.form-intro h2{font-size:26px;margin-bottom:16px}.form-intro>p:last-child{font-size:13px;color:var(--muted)}.form-grid{display:grid;gap:20px}.field{min-width:0}.field label{display:block;font-size:12px;margin-bottom:8px}.field label span{color:var(--muted);font-size:11px}.field input,.field textarea,.field select{display:block;width:100%;max-width:100%;min-height:48px;border:1px solid var(--border);border-radius:2px;background:var(--surface);padding:12px;font-size:14px}.field textarea{resize:vertical}.field-error{font-size:12px;line-height:1.5;color:#8b2420;margin-top:5px}.field-error:empty{display:none}[aria-invalid=true]{border-color:#8b2420!important}.form-actions{display:flex;align-items:flex-start;flex-direction:column;gap:12px;margin-top:28px}.form-actions p{font-size:12px;color:var(--coffee)}.prepared-inquiry{margin-top:32px;padding-top:28px;border-top:1px solid var(--border)}.prepared-inquiry h3{font-size:24px}.prepared-inquiry>p:not(.eyebrow){font-size:13px;margin-top:16px}.inquiry-summary{display:block;width:100%;margin-top:20px;padding:16px;border:1px solid var(--border);background:var(--surface);font-size:12px;line-height:1.7;resize:vertical;overflow-wrap:anywhere}.contact-page{max-width:780px;padding-block:56px 72px}.contact-page h1{font-size:40px;margin-bottom:24px}.contact-page>p:not(.eyebrow){max-width:510px;color:var(--muted)}.contact-page>.button{margin-top:28px}.contact-note{padding:28px 0;margin-top:36px;border-top:1px solid var(--border)}.contact-note h2{font-size:20px;margin-bottom:12px}.contact-note p{font-size:14px;max-width:560px;color:var(--muted)}
/* Mobile drawers and image enlargement use native modal focus handling. */
dialog{color:var(--ink);border:0;padding:0;background:var(--surface)}dialog::backdrop{background:rgba(27,27,27,.45)}.drawer{width:min(100%,480px);max-width:100%;height:100dvh;max-height:100dvh;margin:0;position:fixed;top:0;overflow-y:auto;padding:20px 24px;box-shadow:0 0 40px #0002}.search-drawer{margin-left:auto}.drawer-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:32px}.drawer-heading h2{font-size:20px}.drawer-nav{display:grid}.drawer-nav a{font-size:24px;display:flex;justify-content:space-between;align-items:center;padding:18px 0;border-bottom:1px solid var(--border);letter-spacing:-.025em}.drawer-bottom{margin-top:48px}.drawer-bottom p{font-size:13px;margin-bottom:20px}.global-search label{display:block;font-size:13px;margin-bottom:12px}.search-input{display:flex;border-bottom:1px solid var(--coffee)}.search-input input{width:100%;min-width:0;padding:12px 0;background:none;border:0;font-size:16px;min-height:52px}.search-hint{margin-top:40px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.search-directions{display:grid;margin-top:12px;margin-bottom:24px}.search-directions a{display:flex;align-items:center;justify-content:space-between;padding:15px 0;border-bottom:1px solid var(--border);font-size:15px}.zoom-dialog{max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;margin:0;background:var(--surface-warm)}.zoom-dialog>img{width:100%;height:100%;object-fit:contain}.zoom-dialog>.icon-button{position:absolute;right:16px;top:16px;background:var(--surface);z-index:1}
/* Footer. */
.site-footer{background:var(--coffee);color:var(--surface)}.footer-main{display:grid;grid-template-columns:1fr 1fr;gap:40px 24px;padding-block:40px}.footer-brand{display:flex;align-items:flex-start;flex-direction:column;gap:24px}.footer-brand .wordmark strong{font-size:36px}.footer-brand .wordmark em{font-size:13px}.footer-brand p{font-size:11px;color:var(--surface-warm);line-height:1.7}.footer-main nav{display:flex;flex-direction:column;align-items:flex-start}.footer-main nav h2{font-size:11px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:10px}.footer-main nav a{display:flex;align-items:center;min-height:44px;font-size:13px}.footer-main a:hover{text-decoration:underline;text-underline-offset:5px}.footer-faith{grid-column:1/-1;display:flex;gap:20px;align-items:center}.footer-faith img{filter:brightness(0) invert(.9);width:32px;height:auto}.footer-faith p{font-size:12px}.footer-faith span{font-size:10px;opacity:.7}.footer-bottom{display:flex;flex-direction:column;gap:12px;border-top:1px solid #f5efe52e;padding-block:24px;font-size:10px;color:var(--surface-warm)}.footer-bottom a{display:flex;align-items:center;min-height:44px}.site-footer :focus-visible,.campaign-caption :focus-visible{outline-color:var(--surface)}
@media(min-width:350px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-label h3{font-size:14px}.product-label svg{display:none}.product-card p{font-size:11px}.campaign-caption h1{font-size:34px}.collection-directions{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.collection-directions a{font-size:12px;gap:6px}.collection-directions svg{width:16px}.related-section .selected-grid .product-card:last-child{display:none}}
@media(min-width:768px){:root{--gutter:32px}h1{font-size:44px}h2{font-size:34px}.announcement{font-size:11px}.header-main{height:104px}.wordmark strong{font-size:48px}.wordmark em{font-size:17px}.menu-trigger{display:none}.brand-emblem{display:block}.brand-emblem img{width:32px}.header-caption{display:block;font-size:10px;letter-spacing:.1em;text-transform:uppercase}.enquiry-link{display:inline-flex;align-items:center;gap:10px;font-size:12px;min-height:44px}.enquiry-link svg{width:18px}.desktop-nav{display:flex;align-items:center;justify-content:center;gap:40px;border-top:1px solid var(--border)}.desktop-nav a{font-size:12px;display:flex;align-items:center;min-height:46px}.campaign-stage{grid-template-columns:repeat(3,minmax(0,1fr));gap:2px}.campaign-panel,.campaign-panel.is-selected{display:block}.campaign-panel img{height:auto;aspect-ratio:1167/1347;width:100%;object-fit:contain}.campaign-controls{display:none}.campaign-caption{padding:30px var(--gutter);flex-direction:row;justify-content:space-between;align-items:center;gap:32px}.campaign-caption h1{font-size:32px}.mobile-break{display:none}.campaign-caption .eyebrow{margin-bottom:8px}.campaign-caption .button{min-width:240px}.collection-directions{gap:32px;margin-block:24px 64px}.collection-directions a{min-height:64px;font-size:15px}.collection-directions svg{width:24px}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 24px}.product-label h3{font-size:16px}.product-label svg{display:block}.product-card p{font-size:12px}.selected-section{margin-bottom:72px}.selected-section .section-heading{flex-direction:row;align-items:flex-end}.section-heading{margin-bottom:32px}.atelier-invitation{padding-block:64px}.atelier-invitation>.shell{grid-template-columns:1.2fr 1fr;gap:64px}.atelier-invitation h2{font-size:40px}.legacy-invitation{grid-template-columns:1fr 2fr;gap:64px;padding-block:80px;align-items:center}.legacy-invitation>img{width:130px;margin:auto}.legacy-invitation h2{font-size:36px}.collection-heading{padding-block:48px 36px}.catalog-controls{grid-template-columns:minmax(0,1fr) 250px;gap:80px}.catalog-search{max-width:480px}.filter-row{gap:10px}.collection-body{padding-bottom:64px}.filter-button{font-size:12px;padding-inline:18px}.detail-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:36px;align-items:start}.detail-copy{padding-block:16px}.detail-copy h1{font-size:34px}.detail-description{font-size:14px;margin-top:24px}.related-section{padding-block:72px}.related-section .selected-grid .product-card:last-child{display:block}.story-heading{padding-block:64px}.story-heading h1{font-size:44px}.story-layout{grid-template-columns:1fr 1.4fr;gap:80px;align-items:center}.legacy-story{padding-block:72px}.story-emblem{display:flex;flex-direction:column;text-align:center}.story-emblem img{width:160px}.next-chapter{grid-template-columns:1fr 1fr;gap:64px;padding-block:80px}.symbol-section{grid-template-columns:1fr 2fr;gap:64px;padding-block:56px 80px;align-items:center}.symbol-art img{width:110px;margin:auto}.atelier-heading{grid-template-columns:1.1fr 1fr;gap:64px;padding-block:64px}.atelier-steps{gap:28px}.form-section{max-width:1000px;padding-bottom:80px}.inquiry-form{padding:48px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.field.full{grid-column:1/-1}.form-actions{flex-direction:row;align-items:center;gap:20px}.contact-page{padding-block:72px 96px}.contact-page h1{font-size:44px}.footer-main{grid-template-columns:1.2fr 1fr 1fr;padding-block:56px;gap:64px}.footer-faith{grid-column:auto;align-items:flex-start;justify-content:flex-end}.footer-faith img{width:48px}.footer-faith p{font-size:13px}.footer-bottom{flex-direction:row;justify-content:space-between;align-items:center;padding-block:16px;font-size:11px}}
@media(min-width:1100px){:root{--gutter:48px}.header-caption{font-size:11px}.campaign-panel img{height:min(45vw,620px);aspect-ratio:auto}.campaign-caption{padding:32px max(var(--gutter),calc((100vw - 1280px)/2))}.campaign-caption h1{font-size:40px}.catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:40px 24px}.detail-layout{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:72px}.detail-copy{position:sticky;top:24px;padding-top:24px}.detail-copy h1{font-size:40px}.detail-description{font-size:15px}.story-heading h1{font-size:44px}.legacy-invitation{grid-template-columns:1fr 2fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
