@font-face{font-family:Display;src:url('../assets/fonts/display-v3.ttf') format('truetype');font-display:swap}@font-face{font-family:Body;src:url('../assets/fonts/body-v3.ttf') format('truetype');font-display:swap}
:root{--ink:#101c3c;--paper:#eaf0f7;--blue:#3159e8;--red:#e92931;--body:Body,Arial,sans-serif;--display:Display,Impact,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}img{max-width:100%}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--display);font-weight:700;letter-spacing:-.035em;text-transform:uppercase;line-height:.92}em{font-style:normal;color:var(--blue)}.header{color:var(--ink)}.header nav{gap:clamp(13px,2.2vw,32px)}.header .nav-cta{padding:11px 17px;border:1px solid currentColor;border-radius:30px;gap:15px}.page-main{overflow:hidden}.page-hero{min-height:90svh;padding:clamp(140px,20vh,210px) 8% 90px;position:relative;display:flex;align-items:center;background:#c9daf8}.page-hero:after{content:'';position:absolute;width:42vw;height:42vw;right:-7vw;top:15%;border:1px solid #101c3c17;border-radius:50%;box-shadow:0 0 0 60px #101c3c06,0 0 0 120px #101c3c04}.page-hero-inner{position:relative;z-index:1;max-width:900px}.eyebrow{font-size:12px;letter-spacing:.15em;font-weight:700;margin-bottom:26px}.page-hero h1{font-size:clamp(76px,12vw,170px);max-width:1000px}.page-hero p.lead{font-size:clamp(16px,2vw,21px);max-width:550px;line-height:1.65;margin-top:28px}.page-link{display:inline-flex;gap:25px;border-bottom:1px solid;padding:12px 0;margin-top:28px;font-size:14px}.page-section{padding:clamp(70px,10vw,140px) 8%}.section-heading{font-size:clamp(48px,7vw,94px);max-width:850px;margin-bottom:36px}.demo-note{display:inline-block;font-size:11px;letter-spacing:.12em;color:#6d7890;border:1px solid #aab6ca;border-radius:99px;padding:8px 12px;margin-top:28px}.story-split{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}.story-copy{max-width:540px}.story-copy p{line-height:1.8;margin-top:18px}.story-art{min-height:470px;background:#dfe8f3;display:grid;place-items:center;position:relative;overflow:hidden}.story-art:before,.story-art:after{content:'';position:absolute;width:65%;aspect-ratio:1;border:1px solid #3159e827;border-radius:50%}.story-art:after{width:45%}.story-mascot{width:145px;height:145px;object-fit:contain;z-index:1}.story-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.story-pillar{padding:28px 0;border-top:1px solid #101c3c35}.story-pillar h3{font:700 26px var(--display);text-transform:uppercase}.story-pillar p{font-size:14px;line-height:1.7;margin-top:13px;max-width:330px}.products-hero{background:#111c3a;color:#f2f4f7}.products-hero em{color:#95b8ff}.products-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.product-card{min-height:520px;padding:34px;background:var(--tone);position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;scroll-margin-top:85px}.product-card h2{font-size:clamp(34px,5vw,65px);max-width:410px;position:relative;z-index:1}.product-card p{font-size:14px;line-height:1.6;position:relative;z-index:1}.product-card img{position:absolute;inset:10% 8% 13% auto;width:60%;height:70%;object-fit:contain;filter:drop-shadow(0 22px 18px #0002)}.product-card .product-info{position:relative;z-index:1;max-width:260px}.product-card:nth-child(2) h2,.product-card:nth-child(4) h2{color:#101c3c}.product-card .volume{font-size:12px;letter-spacing:.07em;font-weight:700}.contact-hero{background:#dfe8f3;min-height:62svh}.contact-hero h1{font-size:clamp(68px,10vw,135px)}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:start}.contact-panel{background:#101c3c;color:#edf2f9;padding:32px}.contact-panel h2{font-size:48px;margin-bottom:20px}.contact-panel>p{line-height:1.7;color:#c9d4e6}.contact-details{margin-top:30px;display:grid;gap:14px;font-size:14px}.contact-form{display:grid;gap:17px}.contact-form label{font-size:13px;font-weight:600;display:grid;gap:8px}.contact-form input,.contact-form textarea{width:100%;border:1px solid #aebad0;background:#f8f9fb;padding:13px 14px;border-radius:3px;color:#101c3c}.contact-form textarea{min-height:145px;resize:vertical}.contact-form button{background:#214bea;color:white;padding:15px 18px;text-align:left;display:flex;justify-content:space-between}.form-feedback{min-height:1.5em;font-size:13px;line-height:1.5}.mug-stage{min-height:470px;background:radial-gradient(ellipse at 50% 72%,#e6a14425,transparent 54%),#101c3c;display:grid;place-items:center;position:relative;overflow:hidden}.mug-stage canvas{width:min(100%,500px);height:430px}.mug-caption{position:absolute;bottom:20px;left:20px;color:#cbd7e7;font-size:11px;letter-spacing:.1em}.page-footer{margin-top:0}.page-reveal{opacity:0;transform:translateY(25px);transition:opacity .7s ease,transform .7s ease}.page-reveal.visible{opacity:1;transform:none}.page-footer .site-footer{margin:0}
@media(max-width:700px){.header nav,.header .nav-cta{display:none}.header .menu-toggle{display:flex}.page-hero{min-height:78svh;padding:135px 7% 75px}.page-hero h1{font-size:18vw}.page-hero:after{width:70vw;height:70vw;top:24%;right:-30vw}.page-section{padding:70px 7%}.story-split,.contact-layout{grid-template-columns:1fr;gap:34px}.story-art{min-height:300px}.story-pillars{grid-template-columns:1fr;gap:10px}.story-pillar{padding:22px 0}.products-grid{grid-template-columns:1fr}.product-card{min-height:450px;padding:25px}.product-card img{width:66%;height:62%;inset:14% 3% auto auto}.contact-panel{padding:26px}.mug-stage{min-height:350px}.mug-stage canvas{height:330px}.section-heading{font-size:13vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.page-reveal{opacity:1;transform:none;transition:none}}
/* Requested page refinements: artwork, interactive cans and the contact pour. */
.header nav a[aria-current=page]{border-bottom-color:currentColor}
.products-page .header{background:#101c3cef;color:#eaf0f7}
.products-page .header:has(.menu-toggle[aria-expanded=true]){background:var(--paper);color:var(--ink)}
.our-story-page .header,.contact-page .header{background:#eaf0f7e8;backdrop-filter:blur(16px)}
.our-story-page main img{border-radius:24px}
.story-opening{display:grid;grid-template-columns:1.1fr .9fr;gap:7%;align-items:center;padding-top:150px;padding-bottom:80px;background:#dfe8f3;min-height:90svh}
.story-opening h1{font-size:clamp(76px,9vw,136px)}
.story-opening .lead{max-width:450px;font-size:18px;line-height:1.7;margin-top:28px}
.story-portrait{margin:0;position:relative;padding:26px;background:#ee2c30;border-radius:32px;transform:rotate(3deg);box-shadow:0 30px 65px #18234516}
.story-portrait img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}
.story-portrait figcaption{font-size:12px;letter-spacing:.16em;font-weight:600;color:#fff;text-align:center;padding:16px 0 8px}
.story-introduction{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}
.story-introduction .section-heading{font-size:clamp(50px,6vw,90px);margin:0}
.story-copy .story-demo{font-size:12px;line-height:1.7;border-top:1px solid #101c3c25;padding-top:18px;color:#54617a;margin-top:24px}
.story-chapters{background:#101c3c;color:#eaf0f7;display:grid;grid-template-columns:1fr 1fr;gap:9%}
.story-chapter{border-top:1px solid #eaf0f74d;padding-top:26px}.story-chapter .eyebrow{color:#a9bfea}.story-chapter h2{font-size:clamp(45px,5.2vw,78px);margin:38px 0 24px}.story-chapter p:last-child{max-width:450px;font-size:15px;line-height:1.8;color:#c4cfe1}
.identity-gallery{display:grid;grid-template-columns:1fr 1fr;gap:28px}.identity-art{margin:0;border-radius:28px;overflow:hidden;background:#ee2c30}.identity-art img{display:block;width:100%;aspect-ratio:1;object-fit:contain;max-height:470px;padding:28px}.identity-art figcaption{background:#fff;padding:26px 30px;display:grid;gap:10px}.identity-art strong{font:700 32px var(--display);text-transform:uppercase}.identity-art span{font-size:13px;color:#536079}.identity-honey{background:#f4f2ec}
.products-page .products-hero{min-height:0;padding-top:145px;padding-bottom:65px}.products-page .products-hero h1{font-size:clamp(70px,8.5vw,124px)}.products-page .page-hero-inner{max-width:1000px}.products-page .products-hero .lead{max-width:540px;font-size:16px}.products-page .products-grid{gap:28px}.products-page .page-section:has(.products-grid){padding-top:48px}
.products-page .product-card{padding:34px;border-radius:28px;min-height:0;display:flex;flex-direction:column;overflow:hidden}.product-card-heading .eyebrow{margin-bottom:12px}.products-page .product-card h2{font-size:clamp(38px,4.2vw,62px);max-width:none}.product-view{position:relative;width:100%;height:420px;margin:12px 0;touch-action:pan-y;cursor:grab}.product-view:active{cursor:grabbing}.product-view canvas{position:relative;display:block;width:100%;height:100%;outline-offset:-5px}.product-view:after{content:'';position:absolute;left:24%;right:24%;bottom:8%;height:18px;border-radius:50%;background:#101c3c2a;filter:blur(12px);pointer-events:none}.products-page .product-card .product-fallback{position:absolute;inset:10%;width:80%;height:80%;display:none;object-fit:contain}.product-view.failed .product-fallback{display:block}.product-view.failed canvas{visibility:hidden}.product-loading{position:absolute;inset:45% 0 auto;text-align:center;font-size:13px}.product-view.ready .product-loading,.product-view.failed .product-loading{display:none}.products-page .product-info{max-width:none;width:100%;border-top:1px solid #101c3c30;padding-top:22px}.product-gesture{margin-top:8px;opacity:.65;font-size:12px!important}.product-cta{margin-top:22px;width:100%;display:flex;justify-content:space-between;align-items:center;background:#101c3c;color:#fff;padding:17px 20px;border:0;border-radius:10px;font-size:14px;transition:background .2s}.product-cta:hover{background:#2349a0}
.contact-page .contact-hero{min-height:0;padding-top:135px;padding-bottom:48px}.contact-page .contact-hero h1{font-size:clamp(70px,8vw,110px)}.contact-page .contact-hero h1 br{display:none}.contact-page .contact-hero .lead{max-width:600px;font-size:16px;margin-top:22px}.contact-section{padding-top:48px}.contact-experience{display:grid;grid-template-columns:.9fr 1.1fr;background:linear-gradient(125deg,#243751,#101d35);color:#f6eddd;border:1px solid #ffffff35;border-radius:26px;overflow:hidden;box-shadow:0 26px 70px #15254425}.contact-pour-panel{display:flex;flex-direction:column;align-items:center;padding:44px 24px 32px;border-right:1px solid #ffffff1c;background:radial-gradient(ellipse at 50% 55%,#c8882928,transparent 70%)}.contact-pour-panel>.eyebrow{color:#d3b984;text-align:center;font-size:12px;letter-spacing:.12em}.contact-page .mug-stage{background:none;width:100%;min-height:390px;flex:1}.contact-page .mug-stage canvas{width:100%;height:410px}.contact-progress{width:75%;font-size:13px;text-align:center;color:#d8d4cb}.contact-progress>div{height:2px;background:#ffffff20;margin-top:16px}.contact-progress i{display:block;width:0;height:100%;background:#eab35e;transition:width .5s}.contact-pour-panel .sound-toggle{color:#d8d4cb;margin-top:24px}.contact-form-panel{padding:44px 42px}.contact-form-panel>.eyebrow{color:#ccb98e}.contact-form-panel>h2{font-size:clamp(45px,4.5vw,68px);margin-bottom:20px}.contact-form-panel em{color:#efbf76}.contact-intro{font-size:14px;color:#c0c8d5;margin-bottom:26px}.contact-form{gap:16px}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px 14px}.contact-fields label{font-size:13px;color:#e4e8ed;font-weight:400}.contact-fields label:nth-child(2),.contact-fields label:last-child{grid-column:1/-1}.contact-fields label:nth-child(3){grid-column:2;grid-row:1}.contact-fields input,.contact-fields textarea{display:block;background:#ffffff08;border:1px solid #ffffff28;border-radius:8px;color:#faf5e9;font:14px var(--body);min-width:0;padding:12px}.contact-fields input{height:46px}.contact-fields input::placeholder,.contact-fields textarea::placeholder{color:#a6afc0}.contact-fields input:focus,.contact-fields textarea:focus{outline:1px solid #e5b976;outline-offset:2px;border-color:#e5b976}.contact-fields textarea{min-height:110px}.contact-form button{background:linear-gradient(110deg,#f2ce8c,#db9a43);color:#222b39;border:0;border-radius:8px;font-size:14px;font-weight:600;padding:16px 18px}.contact-form .form-feedback{font-size:12px;color:#a8b1c0;line-height:1.6}.contact-address{display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:14px;margin-top:36px}.contact-address p{line-height:1.8}.contact-address span{color:#536079}
@media(max-width:700px){.story-opening{grid-template-columns:1fr;padding-top:120px;gap:40px}.story-opening h1{font-size:20vw}.story-opening .lead{font-size:16px}.story-portrait{max-width:430px;width:100%;justify-self:center;padding:18px;transform:rotate(0)}.story-introduction,.story-chapters,.identity-gallery{grid-template-columns:1fr;gap:38px}.story-introduction .section-heading{font-size:14vw}.story-chapter h2{font-size:13vw}.identity-art img{padding:22px;max-height:420px}.identity-art figcaption{padding:24px}.products-page .products-hero{padding-top:120px;padding-bottom:40px}.products-page .products-hero h1{font-size:17vw}.products-page .product-card{padding:26px 22px}.products-page .product-card h2{font-size:12vw}.product-view{height:340px}.contact-page .contact-hero{padding-top:120px;padding-bottom:35px}.contact-page .contact-hero h1{font-size:18vw}.contact-experience{grid-template-columns:1fr}.contact-pour-panel{padding:22px 18px 18px;border-right:0;border-bottom:1px solid #ffffff1c;position:relative}.contact-pour-panel>.eyebrow{margin-bottom:0;font-size:11px}.contact-page .mug-stage{min-height:210px}.contact-page .mug-stage canvas{height:230px;max-width:330px}.contact-progress{width:65%;font-size:12px}.contact-pour-panel .sound-toggle{margin-top:14px;font-size:12px}.contact-form-panel{padding:28px 24px}.contact-form-panel>h2{font-size:12vw}.contact-fields{grid-template-columns:1fr}.contact-fields label:nth-child(n){grid-column:auto;grid-row:auto}.contact-address{flex-direction:column;align-items:flex-start;font-size:13px;gap:15px}}
@media(prefers-reduced-motion:reduce){.contact-progress i{transition:none}.story-portrait{transform:none}}
@media(max-width:700px){.contact-experience{display:block;overflow:clip}.contact-pour-panel{position:sticky;top:66px;z-index:2;background:radial-gradient(ellipse at 50% 55%,#594830,#203149 75%);padding:14px 18px 16px}.contact-page .mug-stage{min-height:130px}.contact-page .mug-stage canvas{height:145px;max-width:250px}.contact-pour-panel>.eyebrow{font-size:10px}.contact-progress{width:65%;font-size:11px}.contact-progress>div{margin-top:8px}.contact-pour-panel .sound-toggle{position:absolute;right:12px;top:36px;font-size:10px;padding:6px;margin:0;max-width:84px}}
.our-story-page .identity-art img{width:calc(100% - 48px);max-width:440px;max-height:none;height:auto;aspect-ratio:1;padding:0;margin:24px auto;border-radius:22px}
.contact-page .page-main{overflow:clip}

.story-portrait:has(.story-mascot-video){background:#f02f34;padding:8px}
.story-portrait .story-mascot-video{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:#f02f34;border-radius:24px}

@media(min-width:701px){.story-opening:has(.story-mascot-video){grid-template-columns:1fr 1fr;gap:5%}}
/* Mobile story hero: video first, with the heading in the same opening view. */
@media(max-width:700px){
 .story-opening:has(.story-mascot-video){padding-top:88px;padding-bottom:44px;gap:22px;min-height:0;align-content:start}
 .story-opening .story-portrait:has(.story-mascot-video){order:-1;width:min(100%,430px,48svh)}
 .story-opening:has(.story-mascot-video) .story-opening-copy>.eyebrow{margin-bottom:14px}
 .story-opening:has(.story-mascot-video) h1{font-size:clamp(50px,17vw,68px)}
 .story-opening:has(.story-mascot-video) .lead{margin-top:16px}
 .story-opening:has(.story-mascot-video) .page-link{margin-top:16px}
 .story-portrait:has(.story-mascot-video) figcaption{padding:8px 0 4px;font-size:11px}
}
@media(max-width:700px) and (max-height:600px){
 .story-opening:has(.story-mascot-video){padding-top:80px;gap:10px}
 .story-opening:has(.story-mascot-video) .story-opening-copy>.eyebrow{margin-bottom:8px}
 .story-opening .story-portrait:has(.story-mascot-video){width:min(100%,36svh)}
 .story-opening:has(.story-mascot-video) h1{font-size:clamp(42px,12vw,56px)}
}
