@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=GFS+Didot&display=swap');
:root{--ivory:#f8f3e9;--paper:#fffaf2;--cocoa:#352015;--muted:#6e5748;--amber:#a16b33;--line:#d9c9b3;--serif:'GFS Didot',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--ivory);color:var(--cocoa);font-family:var(--sans);font-size:17px;line-height:1.65}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #9a5c25;outline-offset:6px}p{max-width:620px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08}h1{font-size:clamp(3.6rem,6.4vw,6.6rem);letter-spacing:-.045em}h2{font-size:clamp(2.7rem,4.5vw,4.8rem);letter-spacing:-.035em}h3{font-size:2rem}p+p{margin-top:20px}.skip-link{position:fixed;left:20px;top:-100px;background:white;padding:12px;z-index:9}.skip-link:focus{top:10px}.site-header{height:116px;display:flex;align-items:center;justify-content:space-between;padding:12px 5.5%;position:absolute;top:0;width:100%;z-index:2}.site-header nav{display:flex;gap:36px;font-size:15px}.site-header nav a{border-bottom:1px solid transparent;padding:8px 0}.site-header nav a:hover{border-color:var(--amber)}.brand{display:block;width:85px;height:88px}.logo-frame{display:block;position:relative;width:100%;height:100%;overflow:hidden}.logo-frame img{position:absolute;transition:opacity .35s}.logo-original{width:120%;height:auto;left:-10%;top:-30%;mix-blend-mode:multiply;opacity:0}.logo-glass{width:100%;height:100%;object-fit:contain}.brand:hover .logo-glass,.brand:focus-visible .logo-glass{opacity:0}.brand:hover .logo-original,.brand:focus-visible .logo-original{opacity:1}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;border:1px solid var(--cocoa);background:var(--cocoa);color:var(--paper);padding:16px 28px;border-radius:40px;font-size:15px;line-height:1.4;transition:background .2s,transform .2s}.button:hover{background:#624127;transform:translateY(-2px)}.button.small{padding:12px 30px}.button.outline{background:transparent;color:var(--cocoa)}.button.outline:hover{background:#ffffff70}.hero{min-height:850px;height:100svh;max-height:1100px;position:relative;display:flex;align-items:center;padding:145px 5.5% 100px;overflow:hidden}.hero-art{position:absolute;inset:0;background:var(--ivory) url('assets/hero-cocoa.png') center/cover no-repeat;z-index:-1}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#f8f3e9 0%,#f8f3e9ed 22%,#f8f3e970 45%,transparent 63%);z-index:-1}.hero-art{z-index:0}.hero:before{z-index:1;pointer-events:none}.hero-copy{position:relative;z-index:1;width:53%}.hero-copy p{font-size:19px;line-height:1.65;max-width:510px;margin:28px 0 34px}.actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.scroll-note{position:absolute;bottom:35px;left:5.5%;font-size:13px;letter-spacing:.04em;z-index:1}.scroll-note span{margin-left:32px}.section{padding:110px 7%;scroll-margin-top:20px}.eyebrow{font-size:12px;letter-spacing:.22em;font-weight:500;margin-bottom:32px;color:var(--amber)}.story{display:grid;grid-template-columns:1fr 1.35fr;gap:8%;background:var(--paper)}.heritage-number{font-family:var(--serif);font-size:clamp(6rem,11vw,12rem);line-height:1.1;color:#b78b51}.heritage-number span{display:block;font-family:var(--sans);font-size:14px;letter-spacing:.1em;color:var(--muted);margin-top:20px}.story h2{margin-bottom:28px}.story p:not(.eyebrow):not(.heritage-number){color:var(--muted)}.text-link{display:inline-flex;align-items:center;gap:22px;border-bottom:1px solid var(--amber);padding:0 0 5px;font-size:15px}.story .text-link{margin-top:30px}.today{background:linear-gradient(110deg,#f3e6d1,#fff9ef);position:relative}.today-intro{max-width:900px}.today-intro p:last-child{font-size:20px;margin-top:30px;max-width:660px}.vision-columns{display:grid;grid-template-columns:1fr 1fr;gap:7%;margin:70px 0 42px}.vision-columns>div+div{border-left:1px solid #bda281;padding-left:14%}.vision-columns h3{font-size:2.5rem;margin-bottom:20px}.vision-columns p{max-width:530px}.journey h2{margin-bottom:60px}.timeline{list-style:none;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:24px}.timeline li{border-top:1px solid var(--line);padding-top:22px}.timeline strong{font-family:var(--serif);font-size:2.7rem;font-weight:400;color:var(--amber)}.timeline h3{font-size:1.4rem;margin:20px 0 12px}.timeline p{font-size:15px;color:var(--muted)}.manufacturing{background:var(--cocoa);color:var(--ivory);display:grid;grid-template-columns:1fr 1fr;gap:8%}.manufacturing .eyebrow{color:#d4ae76}.manufacturing h2{font-size:3.4rem}.manufacturing-copy>p{color:#dfd0be}.metrics{margin-top:32px}.metrics>div{border-top:1px solid #735742;padding:20px 0}.metrics strong{font-size:2.6rem;font-family:var(--serif);font-weight:400}.metrics strong span{font-size:14px;font-family:var(--sans)}.metrics p{font-size:13px;color:#d6c0a5}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px}.section-heading p{color:var(--muted)}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:55px;border-top:1px solid var(--line)}.product-grid article{padding:36px 32px 20px 0}.product-grid article+article{border-left:1px solid var(--line);padding-left:32px}.product-index{font-size:13px;color:var(--amber)}.product-grid h3{font-size:2.5rem;margin:35px 0 20px}.product-grid p{font-size:16px;color:var(--muted);min-height:110px}.product-grid .text-link{margin-top:28px}.quality{display:grid;grid-template-columns:1fr 1fr;gap:8%;border-top:1px solid var(--line)}.quality>div:last-child{padding-top:35px}.certifications{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.certifications li{padding:12px 20px;border:1px solid var(--line);border-radius:30px;font-size:14px}.contact{background:#ead8bb;text-align:center}.contact h2{font-size:clamp(3rem,6vw,6rem)}.contact>p{margin:25px auto;max-width:600px}.contact .eyebrow{margin:0 auto 30px}.contact .actions{justify-content:center;margin:35px 0}.contact-details{font-size:15px}.contact-details span{display:block;font-size:13px;color:var(--muted);margin-top:10px}footer{display:flex;justify-content:space-between;gap:25px;padding:32px 7%;font-size:13px}footer>span:first-child{font-family:var(--serif);font-size:20px}@media(min-width:1600px){.hero-copy{width:48%}}@media(max-width:1000px){.site-header nav{gap:20px}.hero{min-height:760px}.hero-copy{width:60%}.hero-copy p{font-size:17px}.section{padding:80px 6%}.manufacturing h2{font-size:2.7rem}.timeline{gap:16px}.product-grid h3{font-size:2rem}.product-grid p{min-height:145px}}@media(max-width:700px){html{scroll-padding-top:30px}.site-header{height:95px;padding:10px 6%}.brand{width:64px;height:72px}.site-header nav{display:none}.hero{height:auto;min-height:940px;align-items:start;padding:145px 6% 450px}.hero-copy{width:100%}h1{font-size:clamp(3.2rem,11vw,4.7rem)}.hero-copy p{max-width:460px;margin:24px 0}.hero-art{background-size:auto 560px;background-position:65% bottom;background-repeat:no-repeat}.hero:before{background:linear-gradient(180deg,#f8f3e9 0%,#f8f3e9 42%,#f8f3e900 64%)}.hero .button{padding:14px 19px;font-size:14px}.scroll-note{bottom:24px;left:6%}.section{padding:65px 6%}.story,.manufacturing,.quality{grid-template-columns:1fr;gap:40px}.heritage-number{font-size:6rem}.heritage-number span{margin-top:5px}.eyebrow{margin-bottom:24px}.vision-columns{grid-template-columns:1fr;gap:28px;margin:42px 0 30px}.vision-columns>div+div{border-left:0;border-top:1px solid #bda281;padding:28px 0 0}.vision-columns h3{font-size:2rem}.today-intro p:last-child{font-size:18px}.timeline{grid-template-columns:1fr;margin:0}.timeline li{display:grid;grid-template-columns:90px 1fr;gap:0 15px;padding:24px 0}.timeline strong{grid-row:span 2;font-size:2.2rem}.timeline h3{margin:0 0 10px}.timeline p{grid-column:2}.journey h2{margin-bottom:35px}.section-heading{display:block}.section-heading p{margin-top:24px}.product-grid{grid-template-columns:1fr;margin-top:30px}.product-grid article,.product-grid article+article{border-left:0;padding:30px 0;border-bottom:1px solid var(--line)}.product-grid h3{margin:15px 0}.product-grid p{min-height:0}.product-grid .text-link{margin-top:22px}.quality>div:last-child{padding-top:0}footer{flex-direction:column;gap:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Keep the full glass sculpture inside the desktop frame. */
@media(min-width:701px){.hero-art{background-size:100% auto;background-position:center bottom}.hero:before{background:linear-gradient(90deg,#f8f3e9 0%,#f8f3e9ed 32%,#f8f3e970 49%,transparent 66%)}}


.today{background:#faf3e8 url('assets/section-2-cocoa.png') right top/100% auto no-repeat}.today-intro{position:relative;max-width:65%;min-height:410px}.today-intro h2{font-size:clamp(2.7rem,4.3vw,4.8rem)}.today-intro p:last-child{max-width:540px}.vision-columns{position:relative}.today .vision-columns,.today>.text-link{background:#faf3e8ed}.logo-original{top:-34%;width:120%;left:-10%}@media(max-width:700px){.today{background-position:75% 280px;background-size:auto 380px}.today-intro{max-width:100%;min-height:660px}.today-intro p:last-child{background:#faf3e8d9}.vision-columns{margin-top:25px}.hero-art{background-size:auto 440px;background-position:70% bottom}.hero:before{background:linear-gradient(180deg,#f8f3e9 0%,#f8f3e9 45%,#f8f3e900 65%)}}


.hero-art{mask-image:linear-gradient(to bottom,transparent,black 25%)}.today .vision-columns,.today>.text-link{background:transparent}@media(max-width:700px){.today .vision-columns{background:#faf3e8}}


/* Solid cocoa logo: preserve the original mark, with no hover image swap. */
.logo-frame .logo-solid{width:120%;height:auto;left:-10%;top:-34%;opacity:1;filter:url('#cocoa-logo-color');mix-blend-mode:multiply;transition:none}


.logo-frame{mix-blend-mode:multiply}.logo-frame .logo-solid{top:50%;transform:translateY(-50%);width:112%;left:-6%}


.group-logo{display:block;width:180px;max-width:60%;height:auto;margin:0 0 28px;mix-blend-mode:multiply}.heritage-identity{align-self:center}@media(max-width:700px){.group-logo{width:145px;margin-bottom:24px}}


/* Smooth, flat chocolate mark shared by header and loader. */
.logo-frame,.logo-frame .logo-solid{mix-blend-mode:normal}.logo-frame .logo-solid{image-rendering:auto;opacity:1;transition:none}


/* Smooth smoked chocolate glass: same material in both contexts and all interaction states. */
.logo-frame .logo-tinted-glass{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;filter:none;transform:none;opacity:1;mix-blend-mode:normal;transition:none}


/* Lightly translucent smoked glass and a header bounded by the vision section. */
.logo-frame .logo-tinted-glass{filter:brightness(1.16) saturate(.88);opacity:.8}
.site-header{position:fixed;top:0;z-index:20;transform:translateY(var(--header-offset,0px))}
.site-header.is-scrolled{background:rgba(248,243,233,.88);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 1px 0 rgba(53,32,21,.08)}
.skip-link{z-index:21}


.brand .logo-frame{transform-origin:left center;transition:transform .25s ease}.brand:hover .logo-frame,.brand:focus-visible .logo-frame{transform:scale(1.25)}.loader-logo{transition:none}.loader-logo:hover{transform:none}


/* Cream behind navigation, fading fully clear at the logo and Contact edges. */
.site-header.is-scrolled{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}
.site-header::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,transparent 10%,rgba(248,243,233,.45) 24%,rgba(248,243,233,.94) 34%,rgba(248,243,233,.94) 66%,rgba(248,243,233,.45) 76%,transparent 90%);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);mask-image:linear-gradient(90deg,transparent 10%,black 34%,black 66%,transparent 90%);-webkit-mask-image:linear-gradient(90deg,transparent 10%,black 34%,black 66%,transparent 90%)}
@media(max-width:700px){.site-header::before{background:linear-gradient(90deg,transparent 12%,rgba(248,243,233,.8) 40%,rgba(248,243,233,.8) 60%,transparent 88%)}}

