:root{--cream:#f8f2e7;--paper:#fffaf2;--brown:#53291d;--caramel:#ad592e;--muted:#796358;--line:#dfd1c0;--serif:'Fraunces',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--cream);color:var(--brown);font-family:var(--sans);font-size:1rem;line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
a:focus-visible,button:focus-visible{outline:3px solid var(--caramel);outline-offset:5px}
img{display:block;max-width:100%}::selection{background:#e8c4a2;color:var(--brown)}
.wrap{width:min(1320px,calc(100% - 112px));margin-inline:auto}
.announcement{display:flex;justify-content:center;flex-wrap:wrap;gap:0 14px;text-align:center;background:var(--brown);color:var(--cream);font-size:.75rem;letter-spacing:.06em;padding:9px 20px}.announcement span{color:#dca16e}
.header{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:125px;padding-block:20px;border-bottom:1px solid var(--line)}
.wordmark{display:inline-flex;flex-direction:column;align-items:center;flex-shrink:0;font-family:var(--serif);font-weight:600;text-align:center}
.brand-name{font-size:2rem;line-height:1.05;letter-spacing:-.055em}.brand-co{font-size:1.25rem;line-height:1.1;letter-spacing:-.04em;margin-top:2px}.brand-location{font-family:var(--sans);font-size:.75rem;font-weight:500;letter-spacing:.23em;line-height:1.6;margin-top:7px;padding-left:.23em}
.header nav{display:flex;align-items:center;gap:32px;font-size:.875rem}.header nav a{display:inline-flex;align-items:center;min-height:44px}.header nav a:hover{text-decoration:underline;text-underline-offset:7px}
.header-contact{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:44px;padding:6px 0;font-size:.875rem;border-bottom:1px solid var(--brown)}.header-contact span{font-size:1.25rem}
.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto 1fr auto;column-gap:clamp(32px,4vw,70px);padding-top:64px;padding-bottom:28px}
.hero-intro{grid-column:1;grid-row:1;padding-top:62px;min-width:0}
.eyebrow{font-size:.75rem;letter-spacing:.14em;font-weight:600;margin:0 0 24px;line-height:1.6}
.hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(3rem,5.35vw,5.2rem);line-height:1.1;letter-spacing:-.045em;margin:0}.hero h1 span,.hero h1 em{display:block}em{font-weight:400;color:var(--caramel)}
.hero-details{grid-column:1;grid-row:2;min-width:0;padding-top:28px;padding-bottom:42px}.hero-description{max-width:370px;color:var(--muted);font-size:1.0625rem;line-height:1.8;margin:0}.hero-note{font-size:.8125rem;color:var(--muted);margin:22px 0 0}
.hero-visual{grid-column:2;grid-row:1/3;min-width:0;position:relative;align-self:center}.hero-image-frame{position:relative;width:100%;aspect-ratio:1/1.05;overflow:hidden;border-radius:48% 48% 3px 3px;background:#efe4d4;isolation:isolate}
.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:52% 50%;transform:scale(1.025) translate3d(var(--mx,0px),var(--my,0px),0);transition:transform .7s cubic-bezier(.2,.65,.3,1)}
.image-caption{position:absolute;bottom:30px;left:16px;right:16px;text-align:center;font-family:var(--serif);font-style:italic;font-size:1.4375rem;color:var(--brown)}.image-number{position:absolute;top:50%;right:-28px;writing-mode:vertical-rl;font-size:.75rem;letter-spacing:.1em;color:var(--muted)}
.discover{grid-column:1/-1;grid-row:3;display:inline-flex;align-items:center;justify-self:start;gap:14px;min-height:44px;font-size:.8125rem;color:var(--muted);margin-top:30px}.discover span{font-size:1.375rem;color:var(--brown)}
.product-section{background:#eee4d6;padding:86px 0;border-block:1px solid var(--line)}.product-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,6vw,90px)}.product-heading,.product-details{min-width:0}
.product-heading h2,.contact h2{font-family:var(--serif);font-weight:400;font-size:clamp(2.5rem,4.3vw,4rem);line-height:1.14;letter-spacing:-.04em;margin:0}.product-details{padding-top:4px;max-width:505px}.large-copy{font-family:var(--serif);font-size:1.875rem;line-height:1.4;letter-spacing:-.025em;margin:0 0 24px}.product-details>p:not(.large-copy){color:#6d574b;margin:0 0 20px}
.product-facts{border-top:1px solid #cdbcaa;margin-top:30px;padding-top:24px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.product-facts>div{display:flex;flex-direction:column;gap:5px}.fact-value{font-family:var(--serif);font-size:2.75rem;line-height:1.2;letter-spacing:-.04em}.fact-text{font-style:italic}.product-facts>div>span:last-child{font-size:.875rem;color:#6d574b}
.contact{background:var(--brown);color:var(--cream);padding:80px 0 58px;text-align:center}.contact .eyebrow{color:#dbbda6}.contact h2{font-size:clamp(2.875rem,5vw,4.75rem);margin-bottom:25px}.contact h2 em{color:#e5b580}.contact-inner>p:not(.eyebrow):not(.copy-status){color:#dbc7b8;margin:0 auto 30px;font-size:1rem;max-width:480px}
.button{display:inline-flex;justify-content:center;align-items:center;gap:28px;background:var(--cream);color:var(--brown);min-height:56px;max-width:100%;padding:16px 26px;border:1px solid var(--cream);border-radius:3px;font-size:.9375rem;line-height:1.4;font-weight:500;transition:background .25s,transform .25s}.button span{font-size:1.3125rem;flex-shrink:0}
.email-line{display:flex;justify-content:center;align-items:center;gap:5px;margin-top:20px;font-size:.875rem}.email-line a{overflow-wrap:anywhere;min-width:0}.email-line a:hover{text-decoration:underline;text-underline-offset:5px}.email-line button{flex-shrink:0;border:0;background:transparent;color:inherit;width:44px;height:44px;padding:12px;cursor:pointer;border-radius:4px}.email-line svg{display:block;width:20px;height:20px}.copy-status{font-size:.8125rem;min-height:22px;color:#e5b580;margin:0}
.footer{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-block:35px}.footer-mark .brand-name{font-size:1.75rem}.footer-mark .brand-co{font-size:1.125rem}.footer p{font-size:.875rem;color:var(--muted);line-height:1.6;margin:0}.copyright{font-size:.75rem;color:var(--muted)}
.skip-link{position:fixed;top:-100px;left:20px;background:var(--brown);color:white;padding:12px 20px;z-index:10}.skip-link:focus{top:15px}
@keyframes enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.entrance{animation:enter .9s ease both}.hero-details{animation-delay:.1s}.hero-visual{animation-delay:.15s}.reveal.visible{animation:enter .7s ease both}.button:hover{background:#e9d6bd;transform:translateY(-2px)}.email-line button:hover{background:#ffffff12}}
/* Tablet: side-by-side composition, balanced type and gutters. */
@media(min-width:901px) and (max-width:1150px){.wrap{width:calc(100% - 72px)}.hero{column-gap:34px;padding-top:42px}.hero-intro{padding-top:35px}.hero h1{font-size:clamp(2.75rem,5.2vw,3.75rem)}.hero-description{font-size:1rem}.hero-details{padding-top:22px;padding-bottom:25px}.image-number{right:-24px}}
/* Phone and portrait tablet: heading, image, then supporting copy. */
@media(max-width:900px){
.wrap{width:calc(100% - 48px);max-width:680px}.header{min-height:108px;gap:20px}.header nav{display:none}
.hero{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto auto;gap:0;padding-top:36px;padding-bottom:26px}.hero-intro{grid-column:1;grid-row:1;text-align:center;padding:0}.hero .eyebrow{margin-bottom:18px}.hero h1{font-size:clamp(2.65rem,8vw,4.8rem);line-height:1.1;letter-spacing:-.045em}
.hero-visual{grid-column:1;grid-row:2;margin-top:28px;width:100%;max-width:560px;justify-self:center}.hero-image-frame{aspect-ratio:1.22;border-radius:45% 45% 3px 3px}.hero-image{object-position:50% 54%;transform:none;transition:none}.image-number{display:none}.image-caption{bottom:18px;font-size:1.25rem}
.hero-details{grid-column:1;grid-row:3;text-align:center;padding:25px 0 0}.hero-description{max-width:420px;margin-inline:auto;font-size:1rem;line-height:1.75}.hero-note{margin-top:14px}.discover{grid-column:1;grid-row:4;justify-self:center;margin-top:20px}
.product-section{padding:58px 0}.product-layout{grid-template-columns:minmax(0,1fr);gap:30px}.product-heading h2{font-size:clamp(2.5rem,6.5vw,3.5rem)}.product-details{padding:0;max-width:none}.large-copy{font-size:1.75rem}.product-facts{margin-top:28px}
.contact{padding:60px 0 42px}.contact h2{font-size:clamp(2.75rem,7vw,3.875rem)}
.footer{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:26px 20px;padding-block:30px}.footer-mark{justify-self:start}.footer p{text-align:right}.copyright{grid-column:1/-1;border-top:1px solid var(--line);padding-top:18px;text-align:center}
}
@media(max-width:480px){
.wrap{width:calc(100% - 40px)}.announcement{font-size:.75rem;line-height:1.5;gap:0 5px;padding:9px 14px;letter-spacing:0}.announcement span{display:none}
.header{min-height:105px;padding-block:18px;gap:12px}.brand-name{font-size:1.75rem}.brand-co{font-size:1.125rem}.brand-location{font-size:.75rem;letter-spacing:.15em;padding-left:.15em;margin-top:6px}.header-contact{gap:10px;font-size:.875rem}
.hero{padding-top:31px}.eyebrow{letter-spacing:.09em;font-size:.75rem}.hero h1{font-size:clamp(2.6rem,11vw,3.3rem)}.hero-visual{margin-top:24px}.hero-image-frame{aspect-ratio:1.12}.image-caption{font-size:1.125rem;bottom:16px}
.product-heading h2{font-size:2.65rem}.large-copy{font-size:1.625rem}.contact h2{font-size:2.875rem}.button{width:100%;max-width:340px;gap:18px;padding:16px 18px}.contact-inner>p:not(.eyebrow):not(.copy-status){font-size:1rem}.footer p{font-size:.8125rem}
}
@supports(padding:max(0px)){body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.footer{padding-bottom:max(30px,env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.hero-image{transform:none}}
/* Menu and social destinations are intentionally awaiting their content. */
.menu-action{margin:28px 0 8px}.button-menu{background:var(--brown);color:var(--cream);border-color:var(--brown)}.button-menu:disabled{cursor:default;opacity:.8;transform:none;box-shadow:none}.menu-action p{font-size:.8125rem;color:var(--muted);margin:8px 0 0}.button-menu:disabled:hover{background:var(--brown)}
.footer{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) minmax(0,1fr);align-items:center;gap:32px;padding-block:38px}.footer-mark{justify-self:start}.footer-social{min-width:0;text-align:center}.social-icons{display:flex;justify-content:center;align-items:center;gap:14px;margin-bottom:12px}.social-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:10px;background:transparent;border:1px solid var(--line);border-radius:50%;color:var(--brown)}.social-icon:disabled{opacity:.75;cursor:default}.social-icon svg{width:23px;height:23px;display:block}.footer .copyright{font-size:.75rem;line-height:1.65;text-align:center;border:0;padding:0;margin:0;color:var(--muted)}.rights{display:block}.legal-links{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:4px 8px;text-align:right;font-size:.8125rem;line-height:1.8;min-width:0}.legal-links a{padding-block:8px;min-height:40px;display:inline-flex;align-items:center}.legal-links a:hover{text-decoration:underline;text-underline-offset:4px}.legal-links>span{color:#a18b7b}
.legal-page{max-width:860px;padding-block:65px 70px;overflow-wrap:anywhere}.legal-page h1{font-family:var(--serif);font-size:clamp(2.5rem,5vw,4rem);font-weight:400;line-height:1.15;letter-spacing:-.04em;margin:0 0 18px}.legal-page h2{font-family:var(--serif);font-size:2.2rem;font-weight:400;line-height:1.2;margin:0 0 24px}.legal-page h3{font-size:1.0625rem;line-height:1.5;margin:28px 0 12px}.legal-page p{color:#6d574b}.legal-date{font-size:.875rem}.legal-draft{padding:22px 24px;background:#eee4d6;border-left:3px solid var(--caramel);margin:28px 0;font-size:.9375rem}.legal-draft strong{display:block;margin-bottom:6px}.legal-index{display:flex;flex-wrap:wrap;gap:12px 28px;margin:26px 0 36px}.legal-index a{padding-block:10px;min-height:44px}.legal-page a:not(.button){text-decoration:underline;text-underline-offset:4px}.legal-page section{border-top:1px solid var(--line);padding-top:35px;margin-top:40px;scroll-margin-top:30px}.legal-data{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:16px 30px}.legal-data dt{font-weight:500}.legal-data dd{margin:0;color:#6d574b}.legal-sources{margin-top:40px;padding-top:25px;border-top:1px solid var(--line);font-size:.875rem}
@media(max-width:1100px) and (min-width:901px){.footer{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr) minmax(0,1.1fr);gap:20px}}
@media(max-width:900px){.footer{grid-template-columns:minmax(0,1fr);gap:26px;padding-block:34px}.footer-mark{justify-self:center}.footer-social{text-align:center}.legal-links{justify-content:center;text-align:center;border-top:1px solid var(--line);padding-top:20px}.footer .copyright{text-align:center}.legal-page{padding-block:40px 50px}.legal-data{grid-template-columns:minmax(0,1fr);gap:5px}.legal-data dd{margin-bottom:14px}.legal-draft{padding:18px}.header{flex-wrap:wrap}}
/* Vector arrows keep the same appearance on iOS and desktop. */
.arrow-icon{display:block;width:21px;height:21px;flex:0 0 21px}
@media(prefers-reduced-motion:no-preference){.entrance{animation:enter .95s cubic-bezier(.2,.6,.3,1) both}.hero-intro{animation-delay:.06s}.hero-visual{animation-delay:.18s}.hero-details{animation-delay:.3s}.reveal.visible{animation:enter .8s ease both}}
.button-menu:not(:disabled):hover{background:#743b25;color:var(--cream)}
.menu-page{max-width:980px;padding-block:50px 60px}.menu-heading{text-align:center;max-width:670px;margin:0 auto 32px}.menu-heading h1{font-family:var(--serif);font-weight:400;font-size:clamp(2.8rem,5vw,4.5rem);line-height:1.15;letter-spacing:-.04em;margin:0 0 18px}.menu-heading>p:last-child{font-size:.9375rem;color:var(--muted);max-width:560px;margin-inline:auto}.menu-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:12px;font-size:.875rem;color:var(--muted)}.zoom-button{min-height:44px;flex-shrink:0;padding:8px 16px;color:var(--brown);border:1px solid var(--line);background:transparent;border-radius:3px;cursor:pointer}.zoom-button:hover{background:#eee4d6}.menu-viewport{overflow:auto;max-height:82svh;border:1px solid var(--line);background:#e9dece;overscroll-behavior-x:contain;box-shadow:0 8px 35px #53291d0d}.menu-sheet{width:100%;margin:0;background:var(--cream);line-height:0}.menu-sheet img{width:100%;height:auto;max-width:none}.menu-sheet.is-expanded{width:160%;min-width:780px}.menu-download{display:flex;flex-direction:column;align-items:center;gap:16px;margin-top:26px}.pdf-open{font-size:.875rem;text-decoration:underline;text-underline-offset:4px}
@media(max-width:900px){.menu-page{padding-block:35px 45px}.menu-toolbar{font-size:.8125rem;gap:12px}.menu-viewport{max-height:none}.menu-viewport:has(.is-expanded){max-height:75svh}.menu-heading>p:last-child{font-size:.875rem}}
/* Show the complete single-page menu before the visitor chooses to zoom. */
.menu-sheet{width:min(100%,calc(78svh * .7071));margin-inline:auto}.menu-sheet.is-expanded{width:160%;min-width:780px;max-width:none;margin-inline:0}.menu-viewport:has(.is-expanded){max-height:78svh}
@media(max-width:900px){.menu-sheet{width:100%}.menu-sheet.is-expanded{width:160%;min-width:780px}.menu-viewport:has(.is-expanded){max-height:75svh}}
