:root{--cream:#f7f0e7;--ink:#2e1b13;--terra:#bd603b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif}h1,h2,h3,.brand,.footer-brand{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}.site-header{height:110px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:12px 6%;background:#fbf6ef}.site-header nav{display:flex;gap:30px;align-items:center;font-family:Georgia,serif;font-size:16px}.nav-right{justify-content:flex-end}.brand{text-align:center;color:var(--terra);line-height:.9}.brand span{font-size:clamp(42px,5vw,66px);font-weight:400;letter-spacing:-.045em}.brand small{display:block;font:600 11px 'DM Sans',sans-serif;letter-spacing:4px;margin-top:9px}.cart{border:0;background:none;font-family:Georgia,serif}.cart span{background:var(--ink);color:white;border-radius:50%;padding:3px 7px;font-size:11px}.hero{min-height:570px;background:linear-gradient(90deg,rgba(14,27,18,.92) 0%,rgba(14,27,18,.77) 42%,rgba(14,27,18,.12) 100%),url('https://images.unsplash.com/photo-1654815380393-58f66bdcb8bd?auto=format&fit=crop&w=2000&q=85') center 48%/cover no-repeat,#1b3020;display:flex;align-items:center;color:#fff9ef}.hero-inner{max-width:1240px;width:100%;margin:auto;padding:70px 8%}.eyebrow{font-size:12px;letter-spacing:3px;font-weight:700;color:var(--terra)}.hero .eyebrow{color:#f3c4a5}.hero h1{font-size:clamp(48px,6.5vw,88px);line-height:1.04;margin:25px 0;letter-spacing:-.035em;max-width:800px}.hero p,.tasting,.story-content p{font:italic 21px/1.5 Georgia,serif;max-width:570px}.btn{background:var(--terra);border:0;border-radius:3px;color:white;display:inline-flex;justify-content:center;align-items:center;padding:18px 28px;font:700 12px 'DM Sans',sans-serif;letter-spacing:2px;margin-top:14px}.btn:hover,.newsletter button:hover{background:#9f4c2d}.product-section{display:grid;grid-template-columns:1fr 1fr;max-width:1240px;margin:auto;gap:6%;padding:75px 7%}.product-photo{background:#e8d8c7;min-height:440px;display:grid;place-items:center}.bag-art{width:220px;height:320px;background:#bc684b;box-shadow:18px 17px 0 #c7b19d;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff5e8;gap:35px}.bag-art span{font:48px Georgia,serif;font-weight:bold;letter-spacing:-4px}.bag-art small{text-align:center;letter-spacing:3px;line-height:1.7}.product-info h2{font-size:clamp(48px,5vw,70px);margin:20px 0 5px}.product-info>p:not(.tasting){font:18px/1.6 Georgia,serif}fieldset{border:0;padding:0;margin:25px 0 18px}legend,.field-label{display:block;font-size:12px;letter-spacing:2px;font-weight:700;margin-bottom:10px}.choices{display:flex;gap:12px}.choices label{flex:1}.choices input{position:absolute;opacity:0}.choices span{display:block;border:1px solid #9e8879;border-radius:4px;text-align:center;padding:15px 8px;font:16px Georgia,serif;cursor:pointer}.choices input:checked+span{background:var(--terra);border-color:var(--terra);color:white}select{width:100%;padding:15px;border:1px solid #aa9687;background:transparent;border-radius:4px}.wide{width:100%;margin-top:22px}.small-print{font:12px/1.5 'DM Sans',sans-serif!important;color:#786759!important}.story-section{background:#25170f;color:#fff4e8;display:grid;grid-template-columns:40% 60%;min-height:350px}.story-art{background:#7f4b32;display:grid;place-items:center}.story-art-inner{font:52px/1.15 Georgia,serif;text-align:center;color:#f6dfcb}.story-content{padding:50px 9%}.story-content h2{font-size:clamp(38px,4.5vw,62px);line-height:1.05;margin:18px 0}.story-content p{font-size:18px}.story-link{display:inline-block;border-bottom:1px solid #fff;padding-bottom:5px;font-size:12px;letter-spacing:2px;margin-top:12px}.promise{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;max-width:1180px;margin:auto;padding:75px 7%}.promise span{color:var(--terra)}.promise h3{font-size:32px;margin:15px 0}.promise p{line-height:1.6;color:#6c5a4c}.newsletter{text-align:center;padding:80px 20px;background:#ead8c7}.newsletter h2{font-size:clamp(42px,6vw,70px);margin:20px 0 5px}.newsletter form{display:flex;max-width:570px;margin:32px auto 0}.newsletter input{min-width:0;flex:1;border:1px solid #a58d7b;background:#fffaf5;padding:17px}.newsletter button{border:0;background:var(--terra);color:white;padding:0 22px;font-size:12px;font-weight:700;letter-spacing:1px}footer{display:flex;justify-content:space-between;align-items:center;padding:30px 6%;background:#2c1a11;color:#f4e7d9;font-size:11px;letter-spacing:2px}.footer-brand{font-size:36px;letter-spacing:0}dialog{border:0;border-radius:10px;padding:35px;max-width:420px;background:var(--cream);color:var(--ink);box-shadow:0 20px 80px #0005}dialog::backdrop{background:#0008}.close{float:right;background:none;border:0;font-size:28px}@media(max-width:700px){.site-header{height:90px;padding:8px 5%}.site-header nav{gap:10px;font-size:12px}.site-header nav a:nth-child(2){display:none}.brand span{font-size:40px}.brand small{font-size:8px;letter-spacing:2px}.hero{min-height:470px}.hero-inner{padding:65px 7%}.hero h1{font-size:clamp(42px,10vw,64px)}.hero p{font-size:18px}.product-section{grid-template-columns:1fr;padding:35px 7% 60px;gap:25px}.product-photo{min-height:330px}.bag-art{transform:scale(.8)}.product-info h2{font-size:52px}.story-section{grid-template-columns:1fr}.story-art{min-height:180px}.story-content{padding:35px 7%}.promise{grid-template-columns:1fr;padding:50px 8%}.newsletter form{flex-direction:column;gap:10px}.newsletter button{padding:17px}footer{flex-wrap:wrap;gap:20px}.choices span{font-size:14px}}
/* Capella wordmark and photographic hero refinement */
.brand{display:inline-flex;flex-direction:column;align-items:center;justify-content:center}.brand span{font-style:normal}.brand small{letter-spacing:.31em}.hero-inner{position:relative;z-index:1}@media(max-width:700px){.hero{background-position:62% center;background-image:linear-gradient(90deg,rgba(14,27,18,.9),rgba(14,27,18,.46)),url('https://images.unsplash.com/photo-1654815380393-58f66bdcb8bd?auto=format&fit=crop&w=1200&q=85')}}

/* Visual alignment to approved Capella Coffee homepage mockup */
:root{--cream:#f8f1e9;--ink:#301a10;--terra:#b75531}
.site-header{height:108px;background:#faf4eb;padding:8px 6.1%;grid-template-columns:1fr auto 1fr}
.site-header nav{font-family:Georgia,serif;font-size:18px;gap:52px}
.brand{color:#b65431;line-height:.85}.brand span{font-family:Georgia,serif;font-size:clamp(49px,5.5vw,78px);font-weight:900;letter-spacing:-.075em;transform:rotate(-3deg);text-shadow:.5px 0 currentColor}
.brand small{font-family:Georgia,serif;font-size:12px;letter-spacing:.25em;margin-top:14px;font-weight:bold}
.hero{min-height:510px;background-image:linear-gradient(90deg,rgba(10,17,5,.84) 0%,rgba(10,17,5,.60) 37%,rgba(10,17,5,.06) 75%),url('https://images.unsplash.com/photo-1550989460-0adf9ea622e2?auto=format&fit=crop&w=2000&q=90');background-color:#19230e;background-position:center;background-size:cover}
.hero-inner{padding:56px 7.8%}.hero h1{font-family:'Libre Caslon Display',Georgia,serif;font-size:clamp(58px,6.9vw,90px);line-height:.98;letter-spacing:-.04em;margin:26px 0 23px}
.hero .eyebrow{font-family:'DM Sans',sans-serif;letter-spacing:5px;color:#fffaf3;font-size:14px}
.hero .eyebrow:after,.product-info .eyebrow:after,.story-content .eyebrow:after{content:"";display:inline-block;width:28px;border-top:1px solid currentColor;margin:0 0 4px 13px;opacity:.7}
.hero p{font:italic 21px/1.35 Georgia,serif;max-width:480px}
.btn{border-radius:3px;background:#bb5b36;min-height:50px}.hero .btn{margin-top:12px;padding:17px 31px}
.product-section{max-width:none;grid-template-columns:49% 51%;gap:0;padding:0;background:#f9f2ea;min-height:565px}
.product-photo{min-height:565px;background:#efe1d1;position:relative;overflow:hidden}
.product-photo:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 80%,#bda28c66,transparent 58%)}
.bag-art{position:relative;z-index:1;width:270px;height:390px;background:linear-gradient(100deg,#a97845 0%,#c3935f 16%,#d5aa73 74%,#aa7848 100%);box-shadow:16px 22px 18px #51351f44;transform:rotate(-2deg);border-radius:8px 8px 4px 4px}
.bag-art:before{content:"";position:absolute;inset:85px 26px 46px;background:linear-gradient(#c76a43 0 63%,#aa3e23 63%);border-radius:7px;z-index:-1}
.bag-art span{font-family:Georgia,serif;font-size:48px;letter-spacing:-4px;font-weight:900;transform:rotate(-4deg)}
.bag-art small{font:700 13px/1.9 Georgia,serif;letter-spacing:2px}
.product-info{padding:48px min(10%,85px) 50px 7%;align-self:center}
.product-info .eyebrow{font-size:13px;letter-spacing:4px;color:#836449}
.product-info h2{font-size:clamp(62px,6vw,86px);line-height:1;margin:18px 0 8px}
.product-info .tasting{font-size:23px;margin:0 0 12px}
.product-info>p:not(.tasting){font:19px/1.4 Georgia,serif;max-width:510px}
.choices span{border-radius:5px}.choices input:checked+span{background:#b85a36;border-color:#b85a36}
.story-section{min-height:340px;grid-template-columns:40% 60%;background:#21160e}
.story-art{background:linear-gradient(130deg,#76503488,#1c130dbb),url('https://images.unsplash.com/photo-1447933601403-0c6688de566e?auto=format&fit=crop&w=1000&q=85') center/cover}
.story-art-inner{font-size:125px;color:#f6e9d4;font-family:Georgia,serif}
.story-content{padding:45px 9%}.story-content h2{font-size:clamp(42px,4.7vw,65px);margin:15px 0}.story-content p{font:italic 19px/1.45 Georgia,serif}
@media(max-width:700px){.site-header{height:88px;padding:8px 4%}.site-header nav{gap:10px;font-size:13px}.brand span{font-size:43px}.brand small{font-size:8px;letter-spacing:2px;margin-top:10px}.hero{min-height:510px;background-position:63% center}.hero-inner{padding:60px 7%}.hero h1{font-size:clamp(48px,10vw,66px)}.hero .eyebrow{font-size:11px;letter-spacing:3px}.product-section{grid-template-columns:1fr}.product-photo{min-height:390px}.bag-art{transform:scale(.77) rotate(-2deg)}.product-info{padding:35px 7% 55px}.story-section{grid-template-columns:1fr}.story-art{min-height:220px}.story-content{padding:35px 7%}}

/* Match approved Capella editorial mockup */
.site-header{height:108px;grid-template-columns:1fr auto 1fr;background:#fbf4ea;border:0}
.brand span{font-family:Georgia,serif;font-weight:900;font-size:clamp(43px,5.6vw,70px);letter-spacing:-.065em;line-height:.86;color:#b95b3b;text-shadow:.3px .3px currentColor}
.brand small{color:#b95b3b;font-size:11px;letter-spacing:3px;margin-top:12px}
.site-header nav{font:18px Georgia,serif}
.hero{min-height:510px;background-image:linear-gradient(90deg,rgba(7,19,8,.93) 0%,rgba(9,26,12,.7) 44%,rgba(7,19,8,.12) 100%),url("https://images.unsplash.com/photo-1550989460-0adf9ea622e2?auto=format&fit=crop&w=1800&q=85");background-position:center;background-size:cover}
.hero-inner{padding:55px 7.5%}
.hero h1{font-family:'Libre Caslon Display',Georgia,serif;font-size:clamp(49px,6.5vw,87px);line-height:1.02;max-width:760px;font-weight:400}
.hero p{font:italic 20px/1.5 Georgia,serif;max-width:480px}
.product-section{max-width:none;padding:45px 8%;gap:7%;background:#f8f0e7;align-items:center}
.product-photo{background:#efe0cf;min-height:510px;position:relative}
.product-photo:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 45% 40%,#fff7e9,#e8d5c0);opacity:.85}
.bag-art{position:relative;z-index:1;width:250px;height:350px;background:linear-gradient(170deg,#d2a879 0 32%,#bf6346 32% 100%);box-shadow:14px 15px 0 #b8a089,0 26px 30px #4e301b33;transform:rotate(-1deg)}
.bag-art span{font-family:Georgia,serif;font-size:48px;font-weight:900;letter-spacing:-3px;color:#fff6e9}
.bag-art small{color:#fff5e9}
.product-info h2{font-family:'Libre Caslon Display',Georgia,serif;font-size:clamp(52px,6vw,78px);margin:14px 0 5px}
.product-info .tasting{font:italic 24px Georgia,serif}
.product-info>p:not(.tasting){font:18px/1.6 Georgia,serif}
.choices span{font:17px Georgia,serif}
.story-section{grid-template-columns:40% 60%;background:#28180f}
.story-art{background:radial-gradient(ellipse at 15% 15%,#805333,#2d1b11 75%)}
.story-art-inner{font-family:Georgia,serif;font-style:italic;font-size:clamp(34px,4vw,55px);letter-spacing:-.04em;color:#e6c4a7}
.story-content h2{font-family:'Libre Caslon Display',Georgia,serif;font-size:clamp(44px,5vw,68px)}
@media(max-width:700px){.site-header{height:86px}.site-header nav{font-size:13px}.brand span{font-size:42px}.brand small{font-size:8px;letter-spacing:2px}.hero{min-height:490px;background-position:58% center}.hero h1{font-size:clamp(44px,10vw,62px)}.product-section{padding:30px 7% 55px}.product-photo{min-height:380px}.story-section{grid-template-columns:1fr}}

/* Uploaded mockup imagery — replace with authentic photography before launch */
.hero{background-image:linear-gradient(90deg,rgba(9,22,10,.95) 0%,rgba(9,22,10,.72) 42%,rgba(9,22,10,.05) 100%),url("assets/coffee-cherries.jpg")!important;background-position:center!important;background-size:cover!important}
.product-photo{background:#f7efe5;overflow:hidden;display:flex;align-items:center;justify-content:center}
.product-photo:before{display:none}
.product-image{display:block;width:100%;height:100%;min-height:440px;object-fit:cover}
.story-art{overflow:hidden;background:#2a1a12}
.story-image{display:block;width:100%;height:100%;min-height:330px;object-fit:cover}
@media(max-width:700px){.hero{background-position:58% center!important}.product-image{min-height:320px;max-height:440px;object-fit:contain}.story-image{min-height:210px;max-height:280px}}

/* Sunrise-shaped, centered Capella wordmark */
.site-header .brand{display:flex;flex-direction:column;align-items:center;justify-content:center;width:clamp(175px,23vw,275px);line-height:1;transform:none}
.arched-logo{display:block;width:100%;height:auto;overflow:visible;color:#b65a3a}
.site-header .brand small{margin-top:-12px;font-size:10px;letter-spacing:3px;white-space:nowrap}
.hero h1{max-width:700px}
@media(max-width:700px){.site-header .brand{width:145px}.site-header .brand small{font-size:7px;letter-spacing:1.5px;margin-top:-6px}.site-header{grid-template-columns:1fr auto 1fr}}

/* Larger centered sunrise Capella wordmark */
.site-header{height:126px}
.site-header .brand{width:clamp(215px,28vw,335px)}
.site-header .brand small{font-size:11px;letter-spacing:3.2px;margin-top:-10px}
@media(max-width:700px){.site-header{height:96px}.site-header .brand{width:clamp(155px,39vw,205px)}.site-header .brand small{font-size:8px;letter-spacing:1.5px;margin-top:-5px}}

/* Tighten wordmark and subtitle spacing per original Capella brand files */
.site-header .brand small{margin-top:-20px}
@media(max-width:700px){.site-header .brand small{margin-top:-11px}}

/* Final header subtitle adjustment */
.site-header .brand small{margin-top:-26px}
@media(max-width:700px){.site-header .brand small{margin-top:-15px}}

/* Interactive single-origin discovery */
.origin-section{background:#f3e8db;padding:70px 7%;color:#301a10}
.origin-heading{max-width:1100px;margin:0 auto 28px}.origin-heading h2{font-size:clamp(38px,5vw,64px);font-weight:400;margin:12px 0}.origin-heading p{font:18px Georgia,serif}
.origin-layout{max-width:1100px;margin:auto;display:grid;grid-template-columns:1.25fr 1fr;gap:0;min-height:400px;border:1px solid #d8c6b4}
.origin-map{position:relative;background:#d9d2bb;min-height:390px}.origin-map iframe{border:0;width:100%;height:100%;min-height:390px;display:block;filter:sepia(.28) saturate(.75)}
.origin-marker{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#b75b3c;color:white;border:2px solid #fff7e9;border-radius:25px;padding:12px 17px;font:700 12px 'DM Sans',sans-serif;box-shadow:0 5px 25px #0004;white-space:nowrap}
.origin-panel{background:#fff8ef;padding:35px 38px}.origin-panel h3{font:400 54px 'Libre Caslon Display',Georgia,serif;margin:16px 0 0}.origin-region{font:italic 22px Georgia,serif}.origin-panel>p:not(.origin-region){line-height:1.7}.origin-more{width:100%;display:flex;justify-content:space-between;background:transparent;border:0;border-top:1px solid #d7c4b1;border-bottom:1px solid #d7c4b1;padding:16px 0;margin-top:25px;color:#8c482e;font-weight:700;text-align:left}.origin-panel dl{display:grid;grid-template-columns:110px 1fr;gap:12px;font-size:14px;line-height:1.5}.origin-panel dt{font-weight:700}.origin-panel dd{margin:0}.origin-note{font-size:12px;color:#786759;line-height:1.5}
@media(max-width:700px){.origin-section{padding:48px 6%}.origin-layout{grid-template-columns:1fr}.origin-map,.origin-map iframe{min-height:310px}.origin-panel{padding:27px}}

/* Continental origin view */
.origin-map{background:#e4d8c6;display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:420px}
.africa-overview{width:100%;height:400px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:15px}
.africa-overview svg{height:345px;width:min(100%,390px);overflow:visible}
.africa-shape{fill:#b5a38b;stroke:#8b7964;stroke-width:2;stroke-linejoin:round}
.madagascar{fill:#b5a38b;stroke:#8b7964;stroke-width:2}
.ethiopia-pin{fill:#b75b3c;stroke:#fff7ec;stroke-width:2}
.ethiopia-ring{fill:none;stroke:#b75b3c;stroke-width:2;opacity:.55}
.map-label{font:700 14px 'DM Sans',sans-serif;fill:#6f3828;letter-spacing:1px}
.map-caption{font:700 11px 'DM Sans',sans-serif;letter-spacing:2px;color:#8a715d}
.regional-map{width:100%;background:#f6ecdf;border-top:1px solid #cdbca8}
.regional-map summary{cursor:pointer;padding:13px 18px;font:700 12px 'DM Sans',sans-serif;color:#7d4734;letter-spacing:1px;text-align:center}
.regional-map iframe{height:330px;min-height:330px}
.origin-marker{position:static;transform:none;margin:12px auto 18px}
@media(max-width:700px){.africa-overview{height:320px}.africa-overview svg{height:270px}.origin-map{min-height:350px}}

/* Refined editorial Africa origin map */
.origin-map{background:#eee4d5}
.africa-overview{background:radial-gradient(ellipse at 50% 48%,#f3ebdf 0%,#e6d9c8 90%)}
.africa-shape{fill:#b8a58b;stroke:#8d7960;stroke-width:1.8;stroke-linejoin:round}
.ethiopia-pin{fill:#b75b3c;stroke:#fffaf1;stroke-width:2}
.map-label{fill:#8e442c;font:700 13px 'DM Sans',sans-serif;letter-spacing:1.4px}
.origin-marker{display:none}

/* Capella newsletter: make MailerLite's embedded form match the storefront */
.newsletter{background:#ead8c6;padding:76px 20px 82px}
.newsletter>.eyebrow{color:#9e583e}
.newsletter>h2{font-family:'Libre Caslon Display',Georgia,serif;color:#301a10}
.newsletter>.ml-embedded{max-width:580px;margin:26px auto 0;text-align:left}
.newsletter .ml-form-embedContainer,.newsletter .ml-form-embedWrapper,.newsletter .ml-form-embedBody,.newsletter .ml-form-embedContent,.newsletter .ml-form-embedSubmit,.newsletter .ml-form-successBody{background:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important}
.newsletter .ml-form-embedWrapper{max-width:100%!important;width:100%!important}
.newsletter .ml-form-embedBody{padding:0!important}
.newsletter .ml-form-embedContent h4,.newsletter .ml-form-embedContent p,.newsletter .ml-form-embedContent h2{display:none!important}
.newsletter .ml-form-fieldRow{margin:0 0 10px!important}
.newsletter .ml-form-fieldRow input,.newsletter .ml-form-embedBody input[type="email"]{width:100%!important;background:#fffaf4!important;color:#301a10!important;border:1px solid #ad9481!important;border-radius:2px!important;padding:16px!important;font:16px 'DM Sans',sans-serif!important;height:auto!important;box-shadow:none!important}
.newsletter .ml-form-embedSubmit button,.newsletter .ml-form-embedSubmit button.primary{width:100%!important;background:#b75b3c!important;color:#fff!important;border:0!important;border-radius:2px!important;padding:16px 22px!important;min-height:50px!important;font:700 12px 'DM Sans',sans-serif!important;letter-spacing:2px!important;text-transform:uppercase!important;box-shadow:none!important}
.newsletter .ml-form-embedSubmit button:hover{background:#99472d!important}
.newsletter .ml-form-embedSubmit{margin:0!important;padding:0!important}
.newsletter .ml-form-checkboxRow,.newsletter .ml-form-interestGroupsRow{font:13px/1.5 'DM Sans',sans-serif!important}
.newsletter .ml-form-successContent h4,.newsletter .ml-form-successContent p{color:#301a10!important}
@media(max-width:700px){.newsletter>.ml-embedded{max-width:100%}.newsletter{padding:56px 7% 65px}}

/* MailerLite layout repair: don't apply the old custom-form flex rules */
.newsletter .ml-embedded form,.newsletter .ml-form-embedWrapper form{display:block!important;width:100%!important;max-width:100%!important;margin:0!important;gap:0!important}
.newsletter .ml-embedded .ml-form-formContent,.newsletter .ml-embedded .ml-form-fieldRow,.newsletter .ml-embedded .ml-field-group,.newsletter .ml-embedded .ml-form-embedBody,.newsletter .ml-embedded .ml-form-embedSubmit{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
.newsletter .ml-embedded input[type="email"],.newsletter .ml-embedded input[type="text"]{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important;padding:16px 18px!important;min-height:52px!important}
.newsletter .ml-embedded .ml-form-recaptcha,.newsletter .ml-embedded .g-recaptcha,.newsletter .ml-embedded .grecaptcha-badge{max-width:100%!important}
.newsletter .ml-embedded .ml-form-recaptcha{display:flex!important;justify-content:center!important;margin:14px auto!important;overflow:visible!important}
.newsletter .ml-embedded .g-recaptcha>div{max-width:100%!important;margin:0 auto!important}
.newsletter .ml-embedded iframe[src*="recaptcha"],.newsletter .ml-embedded iframe[src*="hcaptcha"]{max-width:100%!important}
.newsletter .ml-embedded .ml-form-embedSubmit button.primary{display:block!important;max-width:100%!important;margin:12px 0 0!important}
/* MailerLite injects a hidden loading button; never override its inline display:none. */
.newsletter .ml-embedded .ml-form-embedSubmit button.loading{display:none!important}
@media(max-width:380px){.newsletter .ml-embedded .g-recaptcha{transform:scale(.88);transform-origin:center top;margin-bottom:-8px!important}}

/* Checkout dialog */
#cartDialog{max-width:min(94vw,520px);width:100%;padding:38px;border:1px solid #b9a18b;border-radius:5px;background:#f7efe4;color:#342017;box-shadow:0 20px 70px #1b100c55}
#cartDialog::backdrop{background:#24130dc2}
#cartDialog h2{font-family:'Libre Caslon Display',Georgia,serif;font-size:38px;margin:8px 0 16px}
#cartDialog .delivery-choice{border:0;padding:0;margin:25px 0 18px;display:grid;gap:12px}
#cartDialog .delivery-choice legend{font:700 11px 'DM Sans',sans-serif;letter-spacing:1.4px;margin-bottom:12px}
#cartDialog .delivery-choice label{display:flex;gap:10px;align-items:center;font:14px 'DM Sans',sans-serif}
#cartDialog .delivery-choice input{accent-color:#b75b3c}
#cartDialog .close{position:absolute;right:17px;top:12px;border:0;background:transparent;color:#342017;font-size:30px;cursor:pointer}
#checkoutButton:disabled{opacity:.55;cursor:wait}
.checkout-notice{padding:18px 7%;background:#e6d5c3;color:#3b2419;text-align:center;font:600 14px 'DM Sans',sans-serif}

/* Primary ordering link in the top navigation */
.site-header .header-order{display:inline-flex;align-items:center;justify-content:center;padding:11px 17px;background:#b75b3c;color:#fff!important;border:1px solid #b75b3c;border-radius:2px;text-decoration:none;font:700 11px 'DM Sans',sans-serif;letter-spacing:1.2px;white-space:nowrap;transition:background .2s}
.site-header .header-order:hover{background:#99472d;border-color:#99472d}
@media(max-width:700px){.site-header .header-order{padding:9px 11px;font-size:10px;letter-spacing:.6px}}

/* Custom orders: quiet editorial invitation beneath purchasing */
.custom-order{margin-top:30px;padding:25px 0 4px;border-top:1px solid #cbb6a4}
.custom-order .eyebrow{font-size:10px;letter-spacing:1.8px;margin-bottom:9px}
.custom-order h3{font-family:'Libre Caslon Display',Georgia,serif;font-size:clamp(23px,2.5vw,29px);font-weight:400;line-height:1.2;margin:0 0 9px;color:#392116}
.custom-order p{font-size:14px;line-height:1.65;max-width:460px;margin:0 0 16px}
.custom-order-link{display:inline-block;color:#a45137!important;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:5px;font:700 11px 'DM Sans',sans-serif;letter-spacing:1.5px}
.custom-order-link:hover{color:#7f3d2a!important}

/* Mobile header: restore Order Here (old nth-child rule hid it) */
.site-header .cart{color:#301a10!important;-webkit-text-fill-color:#301a10;background:transparent}
.site-header .cart span{color:#fff!important;-webkit-text-fill-color:#fff}
@media(max-width:700px){
 .site-header{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);padding:8px 3%;column-gap:5px}
 .site-header nav{gap:7px}
 .site-header .nav-right>a:nth-child(2){display:inline-flex!important}
 .site-header .nav-right>a:first-child{display:none}
 .site-header .nav-right{justify-content:flex-end;gap:7px}
 .site-header .header-order{display:inline-flex!important;padding:9px 9px;font-size:9px;letter-spacing:.4px;line-height:1.1}
 .site-header .cart{font-size:12px;white-space:nowrap;padding:4px 0}
 .site-header .brand{width:clamp(125px,35vw,170px)}
 .site-header .brand small{font-size:7px;letter-spacing:1.1px}
}
@media(max-width:390px){
 .site-header nav:first-child a{font-size:11px}
 .site-header .brand{width:125px}
 .site-header .header-order{font-size:8px;padding:8px 7px}
 .site-header .cart{font-size:11px}
}

/* Capella mobile navigation: a compact two-row layout prevents logo/cart collisions. */
@media(max-width:700px){
 .site-header{height:auto!important;min-height:110px;display:grid!important;grid-template-columns:1fr auto!important;grid-template-rows:auto auto!important;gap:5px 8px!important;padding:12px 5% 10px!important;align-items:center!important}
 .site-header>.brand{grid-column:1;grid-row:1;width:155px!important;max-width:100%;justify-self:start;transform:none!important}
 .site-header>.brand small{font-size:7px!important;letter-spacing:1.5px!important;margin-top:-9px!important}
 .site-header>nav:first-child{grid-column:1;grid-row:2;justify-self:start;display:flex!important;gap:18px!important}
 .site-header>nav:first-child a{font-size:14px!important}
 .site-header>.nav-right{grid-column:2;grid-row:1 / span 2;display:flex!important;flex-direction:column!important;align-items:flex-end!important;justify-content:center!important;gap:10px!important}
 .site-header .header-order{font-size:11px!important;padding:11px 14px!important;letter-spacing:.5px!important}
 .site-header .cart{font-size:14px!important;display:flex!important;align-items:center;gap:8px}
 .site-header .cart span{display:inline-grid;place-items:center}
 .africa-overview svg{overflow:visible}
 .map-label{font-size:15px!important;letter-spacing:.5px!important;paint-order:stroke;stroke:#f0e5d7;stroke-width:4px;stroke-linejoin:round}
}

/* Mobile storefront header: centered Capella wordmark, order CTA left, bag right. */
@media(max-width:700px){
 .site-header{height:100px!important;min-height:100px!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.7fr) minmax(0,1fr)!important;grid-template-rows:1fr!important;column-gap:4px!important;padding:10px 3%!important;align-items:center!important}
 .site-header>nav:first-child{display:none!important}
 .site-header>.brand{grid-column:2!important;grid-row:1!important;justify-self:center!important;width:min(100%,195px)!important;max-width:195px!important;transform:none!important;align-items:center!important}
 .site-header>.brand .arched-logo{width:100%!important;max-width:195px!important;height:auto!important}
 .site-header>.brand small{font-size:clamp(6px,1.5vw,8px)!important;letter-spacing:1.3px!important;white-space:nowrap!important;margin-top:-10px!important}
 .site-header>.nav-right{display:contents!important}
 .site-header .header-order{grid-column:1!important;grid-row:1!important;justify-self:start!important;display:inline-flex!important;font-size:clamp(8px,2vw,10px)!important;padding:10px 7px!important;line-height:1.15!important;letter-spacing:0!important;white-space:nowrap!important}
 .site-header .cart{grid-column:3!important;grid-row:1!important;justify-self:end!important;display:flex!important;align-items:center!important;gap:5px!important;padding:0!important;font-size:clamp(10px,2.8vw,14px)!important;white-space:nowrap!important}
 .site-header .cart span{flex:none!important}
 .site-header .nav-right>a:first-child{display:none!important}
}

/* Keep the entire Africa map panel on one continuous background. */
.origin-map,.africa-overview{background:#eee4d5}

/* Highlight Ethiopia on the continental origin map. */
.ethiopia-country{fill:#8f6046;stroke:#5f3827;stroke-width:2.5;stroke-linejoin:round}

/* Roasting philosophy above the ordering section */
.roast-intro{background:var(--cream);text-align:center;padding:65px 7% 48px}
.roast-intro h2{font:400 clamp(35px,4.5vw,55px) 'Libre Caslon Display',Georgia,serif;margin:14px auto 18px;max-width:800px}
.roast-intro p{max-width:680px;margin:0 auto;font:17px/1.7 Georgia,serif}
.roast-request-hint{font-size:13px;line-height:1.6;color:#75503d;margin:17px 0}
@media(max-width:700px){.roast-intro{padding:46px 7% 36px}.roast-intro p{font-size:16px}}

.roast-preference{border:1px solid #d7c4b1;padding:15px 18px;margin:18px 0;display:grid;gap:12px}.roast-preference legend{font:700 12px 'DM Sans',sans-serif;letter-spacing:1.5px;padding:0 6px}.roast-preference label{display:flex;align-items:center;gap:9px;font-size:15px}.roast-preference input{accent-color:#b75b3c}.roast-preference span{font-size:13px;color:#795c4d}
