/* Founder section follows the existing HANAMI design system. */
.hero>picture{display:block;width:100%;height:100%}
.hero>picture img{width:100%;height:100%;object-fit:cover}
.crop picture,.product-img picture,.note picture,.story-image picture,.drawer-picture{display:block;width:100%;height:100%}
.crop picture img,.product-img picture img,.note picture img,.story-image picture img,.drawer-picture img{width:100%;height:100%;object-fit:cover}
.product-drawer>.drawer-picture{height:365px;margin-bottom:25px}
.product-drawer>.drawer-picture img{display:block}
.founder{display:grid;grid-template-columns:.92fr 1.08fr;min-height:700px;background:var(--paper)}
.founder h2{font:clamp(38px,4.5vw,65px)/1.08 var(--serif);margin:28px 0}
.founder h2 em{font-weight:400;color:var(--sage)}
.founder-copy{align-self:center;padding:11% 15%}
.founder-copy p{font-size:11px;line-height:1.9;color:#5f615c}
.founder-copy .lead{font:20px/1.55 var(--serif);color:var(--ink)}
.signature{display:block;margin-top:30px;font:19px var(--serif);color:var(--sage)}
.founder-portrait{margin:8%;min-height:570px;display:grid;place-items:center;border:1px solid #cfc9bd;background:linear-gradient(145deg,#e8e3d9,#d9ddd4);text-align:center;position:relative}
.founder-portrait:before,.founder-portrait:after{content:'';position:absolute;background:#b7b9b1}
.founder-portrait:before{width:1px;height:70px;top:0}
.founder-portrait:after{height:1px;width:70px;left:0}
.founder-portrait span{font-size:7px;letter-spacing:.28em}
.founder-portrait p{font:48px var(--serif);margin:18px 0 8px}
.founder-portrait small{font-size:8px;letter-spacing:.16em;text-transform:uppercase}
.journal-intro{max-width:250px;font-size:10px;line-height:1.8;color:#c9cbc6;margin:20px 0 0}
.curated-by{font:14px var(--serif);color:#e0ddd5;line-height:2}
@media(max-width:900px){.founder{grid-template-columns:1fr}.founder-copy{padding:90px 9% 45px}.founder-portrait{min-height:590px;margin:4% 9% 90px}}
@media(max-width:600px){.founder-copy h2{font-size:41px}.founder-portrait{min-height:440px;margin:0 6% 80px}}

/* Ecommerce readiness additions: kept quiet so the luxury identity remains intact. */
.checkout-section,.contact-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:55px;padding:135px 5%;background:var(--cream)}
.contact-section{background:var(--paper)}
.checkout-copy,.contact-copy{align-self:center;max-width:520px}
.checkout-copy h2,.contact-copy h2{font:clamp(38px,4.5vw,65px)/1.08 var(--serif);margin:22px 0}
.checkout-copy h2 em,.contact-copy h2 em{font-weight:400;color:var(--sage)}
.checkout-copy p,.contact-copy p{font-size:12px;line-height:1.9;color:#62645f}
.checkout-form,.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:38px;border:1px solid #d2ccc0;background:#faf8f3}
.checkout-form label,.contact-form label{display:grid;gap:9px;font-size:8px;letter-spacing:.17em;text-transform:uppercase;color:#5f615c}
.checkout-form input,.checkout-form textarea,.contact-form input,.contact-form textarea{width:100%;border:0;border-bottom:1px solid #bdb7aa;background:transparent;padding:12px 0;color:var(--ink);font-size:12px;letter-spacing:0;text-transform:none;outline:0}
.checkout-form textarea,.contact-form textarea{resize:vertical}
.checkout-form .full,.contact-form .full{grid-column:1/-1}
.checkout-submit,.contact-form .button{grid-column:1/-1;margin-top:8px}
.payment-placeholder{margin-top:34px;padding:24px;border:1px solid #c6c0b3;background:#efebe2}
.payment-placeholder small{font-size:7px;letter-spacing:.18em;color:#777}
.payment-placeholder p{margin:8px 0 0;font:17px/1.5 var(--serif);color:var(--ink)}
.form-success-note{font-size:10px;line-height:1.8;color:#777;margin:0}
.stock-note{font-size:10px;letter-spacing:.08em;color:#777;margin:18px 0 0;text-transform:uppercase}
.qty-control{display:inline-flex;align-items:center;gap:12px;margin:10px 0}
.qty-control button{width:24px;height:24px;border:1px solid #aaa;background:transparent;cursor:pointer}
.qty-control span{min-width:14px;text-align:center;font-size:10px}
.remove-item{display:block;margin-top:4px}
.bag-checkout{width:100%;margin-top:18px}
@media(max-width:900px){.checkout-section,.contact-section{grid-template-columns:1fr;padding:95px 9%}.checkout-copy,.contact-copy{max-width:none}}
@media(max-width:600px){.checkout-section,.contact-section{padding:85px 6%}.checkout-form,.contact-form{grid-template-columns:1fr;padding:26px}.checkout-submit,.contact-form .button{width:100%}.bag-item{align-items:flex-start}.bag-item img{width:76px;height:96px}}

.success-main{min-height:82vh;padding:170px 6% 100px;display:grid;place-items:center;background:var(--cream)}
.success-card{max-width:760px;text-align:center}
.success-card h1{font:clamp(54px,8vw,104px)/.95 var(--serif);letter-spacing:.08em;margin:24px 0}
.success-card h1 em{font-weight:400;color:var(--sage)}
.success-card p:not(.eyebrow){max-width:560px;margin:0 auto;font-size:13px;line-height:1.9;color:#62645f}
.success-actions{display:flex;align-items:center;justify-content:center;gap:28px;flex-wrap:wrap;margin-top:42px}
@media(max-width:600px){.success-main{padding:140px 7% 80px}.success-card{text-align:left}.success-actions{justify-content:flex-start}.success-card h1{font-size:48px}}

/* Legal pages */
.policy-main{padding:170px 6% 100px;background:var(--paper)}
.policy-hero{max-width:860px;margin:0 auto 70px;text-align:center}
.policy-hero h1{font:clamp(48px,7vw,92px)/.95 var(--serif);letter-spacing:.08em;margin:24px 0}
.policy-hero p{max-width:620px;margin:auto;font-size:13px;line-height:1.9;color:#62645f}
.policy-content{max-width:880px;margin:auto;border-top:1px solid #d2ccc0}
.policy-block{padding:36px 0;border-bottom:1px solid #d2ccc0}
.policy-block h2{font:32px/1.1 var(--serif);margin:0 0 18px}
.policy-block p,.policy-block li{font-size:12px;line-height:1.9;color:#5f615c}
.policy-block ul{margin:0;padding-left:18px}
.policy-note{margin-top:38px;padding:24px;background:#efebe2;border:1px solid #d2ccc0}
.policy-nav{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;margin-top:38px}
.policy-nav a{font-size:8px;letter-spacing:.17em;text-transform:uppercase;border-bottom:1px solid}
@media(max-width:600px){.policy-main{padding:135px 7% 80px}.policy-hero{text-align:left}.policy-nav{justify-content:flex-start}.policy-block h2{font-size:28px}}

/* Journal pages */
.journal-page-main{padding:160px 5% 110px;background:var(--paper)}
.journal-page-hero{max-width:980px;margin:0 auto 72px;text-align:center}
.journal-page-hero h1{font:clamp(54px,8vw,108px)/.95 var(--serif);letter-spacing:.08em;margin:24px 0}
.journal-page-hero p{max-width:640px;margin:auto;font-size:13px;line-height:1.9;color:#62645f}
.journal-index-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:28px;max-width:1240px;margin:auto}
.journal-card{color:var(--ink)}
.journal-card .crop{height:390px;margin-bottom:22px;background:#eae6dc}
.journal-card.featured-card .crop{height:560px}
.journal-card small,.article-meta{display:block;font-size:7px;letter-spacing:.17em;color:#777;text-transform:uppercase}
.journal-card h2,.journal-card h3{font:32px/1.15 var(--serif);margin:11px 0}
.journal-card p{font-size:11px;line-height:1.8;color:#62645f}
.article-main{background:var(--paper)}
.article-hero{padding:155px 5% 70px;text-align:center}
.article-hero h1{font:clamp(48px,7vw,96px)/.98 var(--serif);letter-spacing:.06em;max-width:980px;margin:24px auto}
.article-hero p{max-width:660px;margin:auto;font-size:13px;line-height:1.9;color:#62645f}
.article-image{max-width:1120px;height:620px;margin:0 auto 80px;overflow:hidden}
.article-image picture,.article-image img{display:block;width:100%;height:100%;object-fit:cover}
.article-body{max-width:760px;margin:0 auto;padding:0 5% 90px}
.article-body p{font-size:15px;line-height:2;color:#4f524d;margin:0 0 28px}
.article-body h2{font:38px/1.12 var(--serif);margin:52px 0 22px}
.article-related{padding:80px 5% 120px;background:var(--cream)}
.article-related-inner{max-width:1120px;margin:auto}
.article-related h2{font:46px/1.08 var(--serif);margin:0 0 34px}
.related-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}
.related-card{border-top:1px solid #c9c2b5;padding-top:20px}
.related-card h3{font:28px/1.12 var(--serif);margin:10px 0}
.related-card p{font-size:11px;line-height:1.8;color:#62645f}
@media(max-width:900px){.journal-index-grid{grid-template-columns:1fr 1fr}.journal-card.featured-card{grid-column:1/-1}.article-image{height:500px}}
@media(max-width:600px){.journal-page-main{padding:135px 6% 80px}.journal-page-hero{text-align:left}.journal-index-grid,.related-grid{grid-template-columns:1fr}.journal-card .crop,.journal-card.featured-card .crop{height:410px}.article-hero{text-align:left;padding:135px 6% 50px}.article-image{height:390px;margin-bottom:55px}.article-body{padding-inline:6%}.article-body p{font-size:13px}.article-related h2{font-size:38px}}
