/*
Theme Name: Cosmivex Beauty
Theme URI: https://www.cosmivex.co.id/
Author: Cosmivex Beauty
Description: Premium responsive catalog theme for Cosmivex Beauty custom packaging.
Version: 1.3.0
Requires at least: 5.8
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: cosmivex
*/

/* Cosmivex Beauty WordPress Theme | No build step required */
:root{--primary:#1e523b;--cream:#f8f5ef;--ink:#18281f;--sand:#f1ede4;--gold:#d1b775;--rose:#af8d72}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",Arial,sans-serif}img{max-width:100%;height:auto}a{color:inherit}button{font:inherit;cursor:pointer}.container{width:min(100% - 48px,1180px);margin-inline:auto}.font-display,h1,h2,h3{font-family:"Cormorant Garamond",Georgia,serif;font-weight:500}.eyebrow{color:#92784f;font-size:10px;font-weight:700;letter-spacing:.19em;line-height:1.2;margin:0 0 18px;text-transform:uppercase}.light{color:#cdb88f}.section{padding:110px 0}.section-heading{max-width:630px}.section-heading h2{color:var(--ink);font-size:clamp(42px,5vw,70px);line-height:.98;letter-spacing:-.04em;margin:0}.section-heading em,.hero-title em,.final-cta h2 em{color:var(--rose);font-style:italic}
.nav-shell { position: sticky; top: 0; z-index: 50; border-bottom: 1px solid rgba(24,40,31,.08); background: rgba(248,245,239,.88); backdrop-filter: blur(18px); }
.brand-mark { align-items: center; color: #18281f; display: inline-flex; gap: 10px; text-decoration: none; }
.brand-symbol { align-items: center; background: #1e523b; border-radius: 50%; color: #f8f5ef; display: inline-flex; font-family: Georgia, serif; font-size: 15px; font-style: italic; height: 33px; justify-content: center; letter-spacing: -.08em; width: 33px; }
.brand-mark strong { display: block; font-size: 13px; letter-spacing: .16em; line-height: 1; }
.brand-mark small { color: #877d6e; display: block; font-size: 7px; letter-spacing: .13em; margin-top: 5px; }
.nav-shell nav button, .footer-column button { background: transparent; border: 0; color: #536056; font-size: 12px; padding: 8px 0; transition: color .2s ease; }
.nav-shell nav button:hover, .footer-column button:hover { color: #1e523b; }
.nav-cta, .button-primary, .button-dark, .button-light { align-items: center; border: 0; display: inline-flex; font-size: 12px; font-weight: 700; gap: 9px; justify-content: center; text-decoration: none; transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }
.nav-cta { color: #1e523b; }
.nav-cta:hover, .button-primary:hover, .button-dark:hover, .button-light:hover { transform: translateY(-2px); }
.nav-cta svg, .button-primary svg, .button-dark svg, .button-light svg { transition: transform .2s ease; }
.nav-cta:hover svg, .button-primary:hover svg, .button-dark:hover svg, .button-light:hover svg { transform: translate(2px, -2px); }
.mobile-menu-button { align-items: center; background: transparent; border: 0; color: #1e523b; display: flex; height: 40px; justify-content: center; width: 40px; }
.mobile-menu { border-top: 1px solid rgba(24,40,31,.08); display: grid; gap: 2px; padding: 14px 24px 20px; }
.mobile-menu button, .mobile-menu a { align-items: center; background: transparent; border: 0; color: #1e523b; display: flex; font-size: 14px; justify-content: space-between; padding: 12px 0; text-align: left; text-decoration: none; }
.mobile-menu a { border-top: 1px solid rgba(24,40,31,.08); font-weight: 700; margin-top: 4px; padding-top: 16px; }

.hero-section { background: #f8f5ef; min-height: 690px; overflow: hidden; padding: 95px 0 42px; position: relative; }
.hero-section::after { background-image: radial-gradient(rgba(30,82,59,.12) .55px, transparent .55px); background-size: 7px 7px; content: ""; inset: 0; opacity: .17; pointer-events: none; position: absolute; }
.hero-orb { border-radius: 50%; filter: blur(1px); pointer-events: none; position: absolute; }
.orb-one { background: #e4e9dc; height: 430px; right: -170px; top: -160px; width: 430px; }
.orb-two { background: #eadbc8; height: 230px; left: -130px; opacity: .55; top: 260px; width: 230px; }
.hero-grid { align-items: center; display: grid; gap: 74px; grid-template-columns: minmax(0, 1fr) minmax(420px, .88fr); position: relative; z-index: 1; }
.hero-copy { padding: 25px 0 25px 4vw; }
.hero-kicker { align-items: center; color: #7d806c; display: flex; font-size: 10px; font-weight: 700; gap: 10px; letter-spacing: .15em; text-transform: uppercase; }
.dot-pulse { background: #b49b60; border-radius: 50%; box-shadow: 0 0 0 5px rgba(180,155,96,.14); display: inline-block; height: 7px; width: 7px; }
.hero-title { color: #1e523b; font-size: clamp(4rem, 7vw, 7.5rem); line-height: .86; margin: 28px 0 27px; max-width: 680px; }
.hero-lede { color: rgba(24,40,31,.65); font-size: 15px; line-height: 1.8; max-width: 520px; }
.hero-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 25px; margin-top: 33px; }
.button-primary { background: #1e523b; box-shadow: 0 13px 28px rgba(30,82,59,.16); color: #fffdf8; padding: 15px 20px; }
.button-quiet, .text-link { align-items: center; background: transparent; border: 0; color: #1e523b; display: inline-flex; font-size: 12px; font-weight: 700; gap: 8px; text-decoration: none; }
.button-quiet:hover, .text-link:hover { color: #9a775c; }
.button-quiet svg { transition: transform .2s ease; }
.button-quiet:hover svg { transform: translateY(3px); }
.hero-proof { align-items: center; display: flex; gap: 16px; margin-top: 66px; }
.proof-avatars { display: flex; }
.proof-avatars span { align-items: center; background: #dfe7d7; border: 2px solid #f8f5ef; border-radius: 50%; color: #1e523b; display: flex; font-size: 8px; font-weight: 700; height: 31px; justify-content: center; margin-left: -7px; width: 31px; }
.proof-avatars span:first-child { background: #c9a85b; margin-left: 0; }
.proof-avatars span:last-child { background: #b88d7a; color: #fff; }
.hero-proof p { color: rgba(24,40,31,.56); font-size: 10px; line-height: 1.5; margin: 0; }
.hero-proof strong { color: #1e523b; font-size: 11px; }
.hero-microgrid { display: grid; gap: 1px; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 38px; max-width: 510px; }
.hero-microgrid > div { border-left: 1px solid rgba(30,82,59,.18); padding: 1px 14px; }
.hero-microgrid > div:first-child { border-left: 0; padding-left: 0; }
.hero-microgrid strong, .hero-microgrid span { display: block; }
.hero-microgrid strong { color: #1e523b; font-size: 15px; letter-spacing: -.03em; }
.hero-microgrid span { color: rgba(24,40,31,.52); font-size: 9px; margin-top: 4px; }
.hero-visual { min-height: 575px; position: relative; }
.hero-image-wrap { background: #d9d2c5; border-radius: 230px 230px 20px 20px; box-shadow: 18px 20px 50px rgba(24,40,31,.13); height: 570px; overflow: hidden; position: relative; transform: rotate(2deg); width: min(100%, 482px); }
.hero-image-wrap::after { background: linear-gradient(180deg, transparent 55%, rgba(24,40,31,.35)); content: ""; inset: 0; pointer-events: none; position: absolute; }
.hero-image-wrap img { height: 100%; object-fit: cover; object-position: 50% 50%; width: 100%; }
.hero-image-tag { align-items: center; bottom: 25px; color: #fff; display: flex; gap: 10px; left: 25px; position: absolute; z-index: 2; }
.hero-image-tag > span { align-items: center; border: 1px solid rgba(255,255,255,.55); border-radius: 50%; display: flex; font-size: 10px; height: 28px; justify-content: center; width: 28px; }
.hero-image-tag strong, .hero-image-tag small { display: block; }
.hero-image-tag strong { font-size: 13px; }
.hero-image-tag small { color: rgba(255,255,255,.7); font-size: 9px; margin-top: 3px; }
.floating-note { align-items: center; background: rgba(255,253,248,.86); border: 1px solid rgba(255,255,255,.8); box-shadow: 0 12px 30px rgba(24,40,31,.12); color: #1e523b; display: flex; font-size: 10px; gap: 9px; line-height: 1.3; padding: 11px 14px; position: absolute; z-index: 3; }
.floating-note b { font-size: 11px; }
.note-top { right: 3px; top: 85px; transform: rotate(5deg); }
.note-top svg { color: #b38b55; }
.note-bottom { bottom: 76px; left: -29px; transform: rotate(-5deg); }
.note-number { color: #b38b55; font-family: "Cormorant Garamond", serif; font-size: 28px; font-weight: 700; }
.hero-bottom-line { align-items: center; color: #7c8478; display: flex; font-size: 9px; gap: 13px; letter-spacing: .16em; margin-top: 46px; position: relative; text-transform: uppercase; z-index: 2; }
.hero-bottom-line .line { background: rgba(30,82,59,.23); height: 1px; max-width: 85px; width: 100%; }
.hero-scroll { align-items: center; display: inline-flex; gap: 7px; margin-left: auto; }
.trust-strip { background: #1e523b; color: #f2ecdf; }
.trust-grid { display: grid; grid-template-columns: repeat(5, 1fr); }
.trust-grid span { align-items: center; border-left: 1px solid rgba(255,255,255,.15); display: flex; font-size: 10px; gap: 8px; justify-content: center; letter-spacing: .06em; padding: 19px 9px; text-align: center; text-transform: uppercase; }
.trust-grid span:last-child { border-right: 1px solid rgba(255,255,255,.15); }
.trust-grid svg { color: #d7bd7c; }

.intro-section { background: #f8f5ef; }
.intro-grid { align-items: center; display: grid; gap: 120px; grid-template-columns: .82fr 1fr; }
.intro-media { background: #e7ddcb; box-shadow: 20px 20px 0 #e0e8d8; padding: 20px; position: relative; transform: rotate(-2deg); }
.intro-media::before { border: 1px solid rgba(30,82,59,.22); content: ""; inset: 8px; pointer-events: none; position: absolute; }
.intro-media img { display: block; filter: saturate(.8); height: 520px; object-fit: cover; object-position: center; width: 100%; }
.media-caption { align-items: center; bottom: 29px; color: #fff; display: flex; font-size: 9px; justify-content: space-between; left: 38px; letter-spacing: .12em; position: absolute; right: 38px; text-transform: uppercase; }
.intro-content { padding: 15px 0; }
.benefit-list { border-top: 1px solid rgba(30,82,59,.18); margin-top: 46px; }
.benefit-list > div { align-items: center; border-bottom: 1px solid rgba(30,82,59,.12); display: flex; gap: 18px; padding: 17px 0; }
.benefit-list > div > span { align-items: center; background: #e5eadc; border-radius: 50%; color: #1e523b; display: flex; font-family: Georgia, serif; font-size: 12px; height: 33px; justify-content: center; width: 33px; }
.benefit-list strong { color: #1e523b; font-size: 14px; }
.benefit-list p { color: rgba(24,40,31,.55); font-size: 11px; margin: 4px 0 0; }
.intro-content .text-link { margin-top: 30px; }

.product-section { background: #f1ede4; }
.section-topline { align-items: flex-end; display: flex; justify-content: space-between; }
.section-index { color: #1e523b; font-size: 26px; font-weight: 600; letter-spacing: -.06em; }
.section-index span { color: #9e9f90; font-size: 13px; font-weight: 400; letter-spacing: 0; }
.category-tabs { display: flex; flex-wrap: wrap; gap: 9px; margin: 51px 0 30px; }
.category-tabs button { background: transparent; border: 1px solid rgba(30,82,59,.19); border-radius: 30px; color: #667268; font-size: 11px; padding: 10px 16px; transition: background .2s ease, color .2s ease, border .2s ease; }
.category-tabs button:hover, .category-tabs button.active { background: #1e523b; border-color: #1e523b; color: #fffdf8; }
.category-layout { align-items: stretch; display: grid; gap: 20px; grid-template-columns: .95fr 1.05fr; }
.category-cards { display: grid; gap: 12px; grid-template-columns: repeat(2, minmax(0,1fr)); }
.category-card { align-items: flex-end; border-radius: 4px; display: flex; flex-direction: column; justify-content: space-between; min-height: 185px; padding: 21px; position: relative; transition: transform .22s ease, box-shadow .22s ease; }
.category-card:hover { box-shadow: 0 16px 30px rgba(24,40,31,.11); transform: translateY(-4px); }
.card-number { align-self: flex-start; color: rgba(24,40,31,.55); font-family: Georgia, serif; font-size: 12px; }
.category-card h3 { color: #1e523b; font-family: "Cormorant Garamond", Georgia, serif; font-size: 29px; font-weight: 600; letter-spacing: -.04em; margin: 0; }
.category-card p { color: rgba(24,40,31,.58); font-size: 11px; line-height: 1.5; margin: 6px 0 0; max-width: 180px; }
.card-arrow { color: #1e523b; position: absolute; right: 18px; top: 18px; transition: transform .2s ease; }
.category-card:hover .card-arrow { transform: translate(3px, -3px); }
.tone-sage { background: #dfe7d7; }.tone-sand { background: #e8ddcc; }.tone-moss { background: #c9d2b8; }.tone-rose { background: #e7d5cc; }.tone-olive { background: #d4dbc9; }.tone-clay { background: #dbc4b6; }
.category-image { min-height: 385px; overflow: hidden; position: relative; }
.category-image::after { background: linear-gradient(180deg, transparent 55%, rgba(24,40,31,.55)); content: ""; inset: 0; position: absolute; }
.category-image img { display: block; height: 100%; object-fit: cover; object-position: center; width: 100%; }
.image-overlay-label { bottom: 23px; color: #fff; left: 25px; position: absolute; z-index: 1; }
.image-overlay-label span, .image-overlay-label strong { display: block; }
.image-overlay-label span { font-size: 9px; letter-spacing: .16em; text-transform: uppercase; }
.image-overlay-label strong { font-size: 19px; font-weight: 500; margin-top: 5px; }

.size-section { background: #f8f5ef; }
.size-grid { align-items: start; display: grid; gap: 84px; grid-template-columns: .78fr 1.22fr; }
.size-copy { padding-top: 12px; }
.size-callout { align-items: flex-start; background: #e8efdf; color: #1e523b; display: flex; gap: 13px; margin-top: 42px; padding: 18px; }
.size-callout strong { font-size: 12px; }
.size-callout p { color: rgba(24,40,31,.6); font-size: 10px; line-height: 1.5; margin: 5px 0 0; }
.button-dark { background: #1e523b; color: #fff; margin-top: 24px; padding: 14px 18px; }
.size-table-wrap { background: #fffdf8; border: 1px solid rgba(30,82,59,.1); padding: 9px; }
.table-head, .table-row { align-items: center; display: grid; gap: 13px; grid-template-columns: .6fr .7fr 1fr 1fr; }
.table-head { background: #1e523b; color: #fff; font-size: 9px; font-weight: 700; letter-spacing: .1em; padding: 14px 16px; text-transform: uppercase; }
.table-row { border-bottom: 1px solid rgba(30,82,59,.1); color: rgba(24,40,31,.67); font-size: 11px; padding: 16px; }
.table-row:last-of-type { border-bottom: 0; }
.table-row strong { color: #1e523b; }
.table-row small { background: #e7d4a9; border-radius: 20px; color: #725b2a; display: inline-block; font-size: 7px; letter-spacing: .04em; margin-left: 5px; padding: 3px 5px; text-transform: uppercase; vertical-align: 2px; }
.table-row.featured { background: #f7f1df; }
.table-footnote { color: #8a9189; font-size: 9px; line-height: 1.5; margin: 14px 8px 7px; }

.custom-section { background: #e9e8dc; }
.custom-intro { align-items: end; display: grid; gap: 70px; grid-template-columns: 1fr .8fr; }
.custom-intro > img { box-shadow: 12px 14px 0 rgba(180,156,116,.22); height: 205px; object-fit: cover; object-position: center; transform: rotate(2deg); width: 100%; }
.custom-grid { display: grid; gap: 12px; grid-template-columns: repeat(3, 1fr); margin-top: 65px; }
.custom-card { background: rgba(255,253,248,.72); min-height: 208px; padding: 22px; position: relative; transition: background .2s ease, transform .2s ease; }
.custom-card:hover { background: #fffdf8; transform: translateY(-3px); }
.custom-card svg { color: #1e523b; margin-top: 20px; }
.custom-number { color: #9e9b87; font-size: 9px; letter-spacing: .1em; position: absolute; right: 21px; top: 21px; }
.custom-card h3 { color: #1e523b; font-family: "Cormorant Garamond", Georgia, serif; font-size: 25px; letter-spacing: -.03em; margin: 25px 0 5px; }
.custom-card p { color: rgba(24,40,31,.58); font-size: 11px; line-height: 1.55; margin: 0; max-width: 220px; }
.custom-banner { align-items: center; background: #1e523b; color: #fff; display: flex; justify-content: space-between; margin-top: 12px; padding: 28px 32px; }
.custom-banner .eyebrow { margin-bottom: 8px; }
.custom-banner h3 { font-family: "Cormorant Garamond", Georgia, serif; font-size: 28px; font-weight: 500; letter-spacing: -.03em; line-height: 1; margin: 0; max-width: 640px; }
.custom-banner a { align-items: center; border: 1px solid rgba(255,255,255,.45); color: #fff; display: inline-flex; flex-shrink: 0; font-size: 11px; gap: 8px; padding: 12px 15px; text-decoration: none; }
.custom-banner a:hover { background: #fff; color: #1e523b; }

.puff-section { background: #d9b9a8; }
.puff-grid { align-items: center; display: grid; gap: 105px; grid-template-columns: 1fr .9fr; }
.puff-media { position: relative; }
.puff-media img { box-shadow: 16px 16px 0 rgba(108,76,61,.19); display: block; height: 525px; object-fit: cover; object-position: center; width: 100%; }
.puff-sticker { align-items: center; background: #f8f5ef; border-radius: 50%; color: #1e523b; display: flex; flex-direction: column; font-family: "Cormorant Garamond", serif; font-size: 16px; height: 110px; justify-content: center; line-height: .85; position: absolute; right: -34px; top: -34px; transform: rotate(8deg); width: 110px; }
.puff-sticker b { font-size: 22px; font-weight: 600; margin-top: 8px; }
.puff-content { padding: 15px 0; }
.puff-content h2 { color: #1e523b; margin: 0; }
.puff-content h2 em { color: #855e4d; }
.puff-points { display: flex; flex-wrap: wrap; gap: 10px 20px; margin: 32px 0; }
.puff-points span { align-items: center; color: #694d42; display: flex; font-size: 10px; gap: 6px; }
.puff-points svg { color: #1e523b; }

.process-section { background: #f8f5ef; }
.process-grid { border-bottom: 1px solid rgba(30,82,59,.17); border-top: 1px solid rgba(30,82,59,.17); display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 68px; }
.process-grid > div { border-left: 1px solid rgba(30,82,59,.17); min-height: 200px; padding: 27px 22px; }
.process-grid > div:last-child { border-right: 1px solid rgba(30,82,59,.17); }
.process-grid span { color: #b08d5d; font-family: Georgia, serif; font-size: 13px; }
.process-grid h3 { color: #1e523b; font-family: "Cormorant Garamond", Georgia, serif; font-size: 24px; letter-spacing: -.03em; margin: 35px 0 7px; }
.process-grid p { color: rgba(24,40,31,.55); font-size: 11px; line-height: 1.55; margin: 0; }

.faq-section { background: #f1ede4; }
.faq-grid { display: grid; gap: 120px; grid-template-columns: .82fr 1fr; }
.faq-list { border-top: 1px solid rgba(30,82,59,.18); }
.faq-item { border-bottom: 1px solid rgba(30,82,59,.18); }
.faq-item button { align-items: center; background: transparent; border: 0; color: #1e523b; display: flex; font-size: 13px; font-weight: 600; gap: 20px; justify-content: space-between; padding: 21px 0; text-align: left; width: 100%; }
.faq-item button svg { flex-shrink: 0; transition: transform .2s ease; }
.faq-item.open button svg { transform: rotate(180deg); }
.faq-item p { color: rgba(24,40,31,.6); font-size: 11px; line-height: 1.7; margin: -5px 36px 22px 0; }

.final-cta { background: #1e523b; color: #fff; overflow: hidden; padding: 125px 0 138px; position: relative; text-align: center; }
.final-cta::before { background-image: radial-gradient(rgba(255,255,255,.12) .65px, transparent .65px); background-size: 8px 8px; content: ""; inset: 0; opacity: .24; pointer-events: none; position: absolute; }
.cta-orbit { border: 1px solid rgba(234,217,172,.25); border-radius: 50%; height: 700px; left: 50%; position: absolute; top: 50%; transform: translate(-50%, -47%); width: 1100px; }
.cta-orbit::after { border: 1px solid rgba(234,217,172,.14); border-radius: 50%; content: ""; inset: 65px; position: absolute; }
.final-cta-inner { position: relative; z-index: 1; }
.final-cta h2 { color: #fffdf8; font-size: clamp(3.8rem, 7vw, 6.8rem); line-height: .83; margin: 0; }
.final-cta h2 em { color: #d6bc7e; }
.final-cta p:not(.eyebrow) { color: rgba(255,255,255,.69); font-size: 13px; line-height: 1.6; margin: 29px auto; max-width: 440px; }
.button-light { background: #fffdf8; color: #1e523b; padding: 15px 20px; }

.footer { background: #142c21; color: #fff; padding: 69px 0 25px; }
.footer-grid { display: grid; gap: 60px; grid-template-columns: 1.7fr .6fr .9fr; }
.footer-brand { color: #fff; }.footer-brand .brand-symbol { background: #d1b775; color: #1e523b; }.footer-brand small { color: rgba(255,255,255,.5); }
.footer-description { color: rgba(255,255,255,.53); font-size: 11px; line-height: 1.7; margin-top: 24px; max-width: 245px; }
.footer-label { color: #d1b775; font-size: 9px; font-weight: 700; letter-spacing: .16em; margin: 0 0 15px; text-transform: uppercase; }
.footer-column { display: flex; flex-direction: column; gap: 4px; }
.footer-column button, .footer-column a { align-items: center; color: rgba(255,255,255,.58); display: flex; font-size: 11px; gap: 7px; text-decoration: none; }
.footer-column button { justify-content: flex-start; padding: 6px 0; }
.footer-column a { padding: 6px 0; }.footer-column a:hover, .footer-column button:hover { color: #fff; }
.footer-bottom { border-top: 1px solid rgba(255,255,255,.15); color: rgba(255,255,255,.37); display: flex; font-size: 9px; justify-content: space-between; letter-spacing: .04em; margin-top: 55px; padding-top: 19px; }
.mobile-quickbar { display: none; }

@media (min-width: 1024px) {
  .mobile-menu-button { display: none; }
}

@media (max-width: 900px) {
  .container { width: min(100% - 36px, 700px); }
  .hero-grid, .intro-grid, .size-grid, .puff-grid, .faq-grid { gap: 55px; grid-template-columns: 1fr; }
  .hero-copy { padding-left: 0; }.hero-title { font-size: clamp(4.5rem, 13vw, 7rem); }.hero-visual { margin: 0 auto; max-width: 520px; width: 100%; }.intro-media { margin: 0 auto; max-width: 480px; width: 100%; }
  .intro-content { padding: 0; }.category-layout { grid-template-columns: 1fr; }.category-image { min-height: 480px; }.size-copy { max-width: 560px; }.custom-intro { gap: 40px; grid-template-columns: 1fr; }.custom-intro > img { height: 230px; max-width: 540px; }.puff-content { padding: 0; }.puff-media { margin: 0 auto; max-width: 540px; width: 100%; }.faq-grid { gap: 55px; }.footer-grid { grid-template-columns: 1.2fr .8fr .9fr; }
}
@media (max-width: 640px) {
  .container { width: min(100% - 32px, 520px); }.section-padded { padding: 86px 0; }.hero-section { min-height: 0; padding-top: 54px; }.hero-title { font-size: clamp(4rem, 17vw, 6rem); }.hero-lede { font-size: 14px; line-height: 1.7; }.hero-actions { align-items: stretch; flex-direction: column; gap: 13px; margin-top: 26px; }.button-primary, .button-quiet { justify-content: center; min-height: 48px; width: 100%; }.hero-microgrid { margin-top: 31px; }.hero-microgrid > div { padding: 1px 8px; }.hero-microgrid strong { font-size: 12px; }.hero-microgrid span { font-size: 8px; line-height: 1.3; }.hero-proof { margin-top: 35px; }.hero-visual { min-height: 430px; }.hero-image-wrap { height: 430px; }.note-top { right: -4px; top: 52px; }.note-bottom { bottom: 50px; left: -10px; }.hero-bottom-line { margin-top: 22px; }.hero-scroll { display: none; }.trust-grid { grid-template-columns: repeat(2, 1fr); }.trust-grid span { border-bottom: 1px solid rgba(255,255,255,.15); }.trust-grid span:nth-child(odd) { border-left: 0; }.trust-grid span:last-child { border-right: 0; grid-column: span 2; }.intro-media img { height: 410px; }.section-topline { align-items: flex-start; }.section-index { display: none; }.category-cards { grid-template-columns: 1fr; }.category-card { min-height: 150px; }.category-image { min-height: 380px; }.table-head, .table-row { grid-template-columns: .62fr .68fr 1fr; }.table-head span:last-child, .table-row span:last-child { display: none; }.table-row { padding: 15px 10px; }.table-row small { display: none; }.custom-grid { grid-template-columns: repeat(2, 1fr); margin-top: 45px; }.custom-card { min-height: 220px; padding: 17px; }.custom-card h3 { font-size: 22px; }.custom-card p { font-size: 10px; }.custom-banner { align-items: flex-start; flex-direction: column; gap: 21px; padding: 25px 22px; }.custom-banner h3 { font-size: 25px; }.puff-media img { height: 405px; }.puff-sticker { height: 90px; right: -7px; top: -25px; width: 90px; }.puff-sticker b { font-size: 17px; }.process-grid { grid-template-columns: repeat(2, 1fr); }.process-grid > div { min-height: 180px; padding: 19px 15px; }.process-grid > div:nth-child(2) { border-right: 1px solid rgba(30,82,59,.17); }.process-grid > div:nth-child(n+3) { border-top: 1px solid rgba(30,82,59,.17); }.process-grid h3 { font-size: 21px; margin-top: 25px; }.final-cta { padding: 94px 0 105px; }.cta-orbit { height: 530px; width: 800px; }.footer-grid { gap: 38px; grid-template-columns: 1fr 1fr; }.footer-grid > div:first-child { grid-column: span 2; }.footer-bottom { flex-direction: column; gap: 8px; }.footer { padding-bottom: 95px; }.mobile-quickbar { align-items: center; background: #f7f1df; bottom: 0; box-shadow: 0 -6px 24px rgba(24,40,31,.14); display: flex; gap: 1px; justify-content: space-between; left: 0; padding: 8px 10px; position: fixed; right: 0; z-index: 55; }.mobile-quickbar a { align-items: center; color: #1e523b; display: flex; font-size: 10px; font-weight: 700; gap: 6px; padding: 11px 10px; text-decoration: none; }.mobile-quickbar a:last-child { background: #1e523b; color: #fff; justify-content: center; padding-inline: 14px; }
}
@media (prefers-reduced-motion: no-preference) {
  .hero-copy, .hero-visual { animation: fade-up .75s cubic-bezier(.23,1,.32,1) both; }.hero-visual { animation-delay: .1s; }
  @keyframes fade-up { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: translateY(0); } }
}

.nav-inner{align-items:center;display:flex;height:76px;justify-content:space-between;gap:24px}.desktop-nav{display:flex;align-items:center}.primary-menu,.fallback-menu{display:flex;align-items:center;gap:30px;list-style:none;margin:0;padding:0}.primary-menu a,.fallback-menu a{color:#536056;font-size:12px;text-decoration:none}.primary-menu a:hover,.fallback-menu a:hover{color:var(--primary)}.nav-cta{align-items:center;color:var(--primary);display:inline-flex;font-size:12px;font-weight:700;gap:8px;text-decoration:none}.mobile-menu-button{align-items:center;background:transparent;border:0;color:var(--primary);display:none;flex-direction:column;gap:4px;height:40px;justify-content:center;width:40px}.mobile-menu-button span{background:var(--primary);display:block;height:2px;width:20px}.mobile-menu{border-top:1px solid rgba(24,40,31,.08);padding:14px 24px 20px}.mobile-menu a{color:var(--primary);display:flex;font-size:14px;justify-content:space-between;padding:12px 0;text-decoration:none}.mobile-menu-cta{border-top:1px solid rgba(24,40,31,.08);font-weight:700;margin-top:4px;padding-top:16px!important}.hero-lede,.section-heading>p:not(.eyebrow),.puff-content>p:not(.eyebrow){color:rgba(24,40,31,.65);font-size:15px;line-height:1.8}.hero-actions{align-items:center;display:flex;flex-wrap:wrap;gap:25px;margin-top:33px}.button-primary,.button-dark,.button-light{align-items:center;border:0;display:inline-flex;font-size:12px;font-weight:700;gap:9px;justify-content:center;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.button-primary{background:var(--primary);box-shadow:0 13px 28px rgba(30,82,59,.16);color:#fffdf8;padding:15px 20px}.button-dark{background:var(--primary);color:#fff;margin-top:24px;padding:14px 18px}.button-light{background:#fffdf8;color:var(--primary);padding:15px 20px}.button-primary:hover,.button-dark:hover,.button-light:hover{transform:translateY(-2px)}.button-quiet,.text-link{align-items:center;color:var(--primary);display:inline-flex;font-size:12px;font-weight:700;gap:8px;text-decoration:none}.button-quiet:hover,.text-link:hover{color:#9a775c}.section-heading>p:not(.eyebrow){margin-top:20px;max-width:580px}.centered{margin-left:auto;margin-right:auto;text-align:center}.centered>p:not(.eyebrow){margin-left:auto;margin-right:auto}.custom-icon{color:var(--primary);display:block;font-size:22px;margin-top:20px}.faq-answer[hidden]{display:none}.mobile-quickbar{display:none}.footer-column a{color:rgba(255,255,255,.58);display:block;font-size:11px;padding:6px 0;text-decoration:none}.footer-column a:hover{color:#fff}
@media (max-width:1023px){.desktop-nav{display:none}.nav-cta{display:none}.mobile-menu-button{display:flex}.hero-grid,.intro-grid,.size-grid,.puff-grid,.faq-grid{gap:55px;grid-template-columns:1fr}.hero-copy{padding-left:0}.hero-visual{margin:0 auto;max-width:520px;width:100%}.intro-media{margin:0 auto;max-width:480px;width:100%}.intro-content{padding:0}.category-layout{grid-template-columns:1fr}.category-image{min-height:480px}.size-copy{max-width:560px}.custom-intro{gap:40px;grid-template-columns:1fr}.custom-intro>img{height:230px;max-width:540px}.puff-content{padding:0}.puff-media{margin:0 auto;max-width:540px;width:100%}.footer-grid{grid-template-columns:1.2fr .8fr .9fr}}
@media (max-width:640px){.container{width:min(100% - 32px,520px)}.section{padding:86px 0}.hero-section{min-height:0;padding-top:54px}.hero-title{font-size:clamp(4rem,17vw,6rem)}.hero-lede{font-size:14px;line-height:1.7}.hero-actions{align-items:stretch;flex-direction:column;gap:13px;margin-top:26px}.button-primary,.button-quiet{justify-content:center;min-height:48px;width:100%}.hero-microgrid{margin-top:31px}.hero-microgrid>div{padding:1px 8px}.hero-microgrid strong{font-size:12px}.hero-microgrid span{font-size:8px;line-height:1.3}.hero-proof{margin-top:35px}.hero-visual{min-height:430px}.hero-image-wrap{height:430px}.category-cards{grid-template-columns:1fr}.category-card{min-height:150px}.category-image{min-height:380px}.table-head,.table-row{grid-template-columns:.62fr .68fr 1fr}.table-head span:last-child,.table-row span:last-child{display:none}.table-row{padding:15px 10px}.table-row small{display:none}.custom-grid{grid-template-columns:repeat(2,1fr);margin-top:45px}.custom-card{min-height:220px;padding:17px}.custom-card h3{font-size:22px}.custom-card p{font-size:10px}.custom-banner{align-items:flex-start;flex-direction:column;gap:21px;padding:25px 22px}.custom-banner h3{font-size:25px}.puff-media img{height:405px}.puff-sticker{height:90px;right:-7px;top:-25px;width:90px}.puff-sticker b{font-size:17px}.process-grid{grid-template-columns:repeat(2,1fr)}.process-grid>div{min-height:180px;padding:19px 15px}.process-grid>div:nth-child(2){border-right:1px solid rgba(30,82,59,.17)}.process-grid>div:nth-child(n+3){border-top:1px solid rgba(30,82,59,.17)}.process-grid h3{font-size:21px;margin-top:25px}.final-cta{padding:94px 0 105px}.cta-orbit{height:530px;width:800px}.footer{padding-bottom:95px}.footer-grid{gap:38px;grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:span 2}.footer-bottom{flex-direction:column;gap:8px}.mobile-quickbar{align-items:center;background:#f7f1df;bottom:0;box-shadow:0 -6px 24px rgba(24,40,31,.14);display:flex;gap:1px;justify-content:space-between;left:0;padding:8px 10px;position:fixed;right:0;z-index:55}.mobile-quickbar a{align-items:center;color:var(--primary);display:flex;font-size:10px;font-weight:700;gap:6px;padding:11px 10px;text-decoration:none}.mobile-quickbar a:last-child{background:var(--primary);color:#fff;justify-content:center;padding-inline:14px}}

.cart-toggle{align-items:center;background:transparent;border:1px solid rgba(30,82,59,.2);border-radius:30px;color:var(--primary);display:inline-flex;font-size:11px;font-weight:700;gap:7px;padding:9px 12px}.cart-count{align-items:center;background:var(--gold);border-radius:50%;color:#1e523b;display:inline-flex;font-size:9px;height:19px;justify-content:center;min-width:19px;padding:0 4px}.cart-drawer{inset:0;position:fixed;z-index:100}.cart-panel{background:#fffdf8;box-shadow:-18px 0 50px rgba(24,40,31,.16);height:100%;margin-left:auto;max-width:480px;overflow:auto;padding:30px;width:100%}.cart-backdrop{background:rgba(24,40,31,.42);inset:0;position:fixed;z-index:99}.cart-header{align-items:flex-start;border-bottom:1px solid rgba(30,82,59,.13);display:flex;justify-content:space-between}.cart-header h2{color:var(--primary);font-size:38px;letter-spacing:-.04em;margin:0 0 22px}.cart-close{background:transparent;border:0;color:var(--primary);font-size:30px;line-height:1}.cart-items{display:grid;gap:12px;margin:20px 0}.cart-item{align-items:center;background:#f1ede4;display:flex;gap:14px;justify-content:space-between;padding:14px}.cart-item strong,.cart-item span{display:block}.cart-item strong{color:var(--primary);font-size:13px}.cart-item span{color:rgba(24,40,31,.58);font-size:10px;margin-top:5px}.cart-item-controls{align-items:center;display:flex;gap:7px}.cart-item-controls button{background:#fffdf8;border:1px solid rgba(30,82,59,.18);color:var(--primary);height:27px;min-width:27px}.cart-item-controls b{font-size:12px}.cart-item-controls .cart-remove{border:0;background:transparent;color:#a06f60;font-size:18px}.cart-empty{color:var(--primary);font-family:"Cormorant Garamond",Georgia,serif;font-size:24px;margin:35px 0;text-align:center}.cart-empty span{color:rgba(24,40,31,.52);display:block;font-family:"DM Sans",Arial,sans-serif;font-size:11px;line-height:1.5;margin:10px auto;max-width:260px}.cart-summary{border-top:1px solid rgba(30,82,59,.14);margin-top:20px;padding-top:18px}.cart-summary>div{display:flex;justify-content:space-between}.cart-summary span{font-size:11px}.cart-summary strong{color:var(--primary);font-size:20px}.cart-summary p{color:rgba(24,40,31,.52);font-size:10px;line-height:1.5}.checkout-form{display:grid;gap:13px;margin-top:22px}.checkout-form label{color:var(--primary);font-size:11px;font-weight:700}.checkout-form input,.checkout-form textarea{background:#f8f5ef;border:1px solid rgba(30,82,59,.15);color:var(--ink);display:block;font:inherit;font-size:12px;margin-top:6px;padding:12px;width:100%}.checkout-form textarea{resize:vertical}.checkout-whatsapp{border:0;justify-content:center;margin-top:3px;width:100%}.table-head,.table-row{grid-template-columns:.55fr .58fr .9fr .85fr .7fr}.add-to-cart{background:var(--primary);border:0;color:#fff;font-size:9px;font-weight:700;padding:8px 9px;white-space:nowrap}.cart-item button:focus-visible,.cart-toggle:focus-visible,.add-to-cart:focus-visible,.checkout-form input:focus-visible,.checkout-form textarea:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.mobile-cart-button{background:transparent;border:0;color:var(--primary);font-size:10px;font-weight:700;padding:11px 10px}.mobile-quickbar .cart-count{height:17px;min-width:17px}
@media (max-width:1023px){.cart-toggle{margin-left:auto}.cart-panel{max-width:440px}}
@media (max-width:640px){.cart-panel{padding:22px 17px}.cart-header h2{font-size:33px}.cart-item{align-items:flex-start;flex-direction:column}.cart-item-controls{align-self:flex-end}.mobile-quickbar{gap:0}.mobile-quickbar>a,.mobile-cart-button{font-size:9px;padding-left:7px;padding-right:7px}.table-head,.table-row{grid-template-columns:.65fr .65fr 1fr .7fr}.table-head span:nth-child(4),.table-row span:nth-child(4){display:none}.add-to-cart{padding:8px 5px}}
body.cart-open{overflow:hidden}

/* v1.3.0: non-blocking mobile navigation and cart controls */
.nav-shell{position:sticky;top:0;z-index:60}.mobile-menu{background:rgba(248,245,239,.98);box-shadow:0 14px 28px rgba(24,40,31,.08);position:absolute;right:0;top:100%;width:100%;z-index:61}.mobile-quickbar{align-items:center;background:#f7f1df;border-top:1px solid rgba(30,82,59,.12);box-shadow:0 -5px 18px rgba(24,40,31,.08);display:flex;gap:8px;justify-content:center;padding:12px 16px;position:relative;right:auto;bottom:auto;left:auto;z-index:10}.mobile-quickbar>a,.mobile-cart-button{border-radius:24px;white-space:nowrap}.mobile-quickbar>a:first-child{background:rgba(255,253,248,.72);color:var(--primary);font-size:10px;padding:10px 13px}.mobile-quickbar .mobile-cart-button{background:var(--primary);color:#fff;font-size:10px;padding:10px 13px}.mobile-quickbar>a:last-child{background:#fffdf8;color:var(--primary);font-size:10px;padding:10px 13px}.cart-drawer[hidden],.cart-backdrop[hidden],.mobile-menu[hidden]{display:none}.cart-panel{max-height:100dvh}.cart-backdrop{z-index:99}.cart-drawer{z-index:100}
@media (min-width:641px){.mobile-quickbar{display:none}}
@media (max-width:640px){body{padding-bottom:0}.mobile-quickbar{flex-wrap:wrap;margin:0 auto;max-width:100%;padding:10px 12px}.mobile-quickbar>a,.mobile-cart-button{flex:1 1 auto;text-align:center}.mobile-quickbar>a:first-child{flex-basis:100%}.mobile-quickbar>a:last-child,.mobile-quickbar .mobile-cart-button{flex-basis:calc(50% - 4px)}.footer{padding-bottom:35px}.cart-panel{height:100dvh;max-height:100dvh;overflow-y:auto}.mobile-menu{max-height:calc(100dvh - 76px);overflow-y:auto}}
@media (prefers-reduced-motion:reduce){.mobile-menu,.cart-panel{scroll-behavior:auto}}
