/*
Theme Name: Skinvest Clinic
Theme URI: https://skinvest.co.id
Author: Skinvest
Description: Tema resmi Skinvest yang responsif dan mudah dikelola melalui WordPress.
Version: 1.7.0
Text Domain: skinvest
*/

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600&family=Philosopher:wght@400;700&display=swap');

:root { --cream:#efeae6; --paper:#fffdfb; --brown:#503924; --taupe:#7b6b60; --sand:#b49d8a; --line:rgba(80,57,36,.18); --ink:#201a16; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:"Montserrat",Arial,sans-serif; }
a { color:inherit; text-decoration:none; }
button,a { -webkit-tap-highlight-color:transparent; }
.site-header { position:sticky; top:0; z-index:20; height:78px; display:flex; align-items:center; justify-content:space-between; padding:0 clamp(24px,6vw,88px); background:rgba(255,253,251,.92); border-bottom:1px solid var(--line); backdrop-filter:blur(14px); }
.brand { display:flex; align-items:center; gap:11px; font-size:14px; font-weight:600; letter-spacing:.18em; }
.brand-mark { display:grid; place-items:center; width:34px; height:34px; border:1px solid var(--brown); border-radius:50%; font-family:"Philosopher",Georgia,serif; font-size:20px; }
.brand-logo { gap:9px; line-height:0; }
.logo-mark { width:34px; height:34px; object-fit:contain; }
.logo-wordmark { width:118px; height:auto; object-fit:contain; }
nav { display:flex; align-items:center; gap:clamp(18px,3vw,42px); font-size:14px; }
.desktop-nav>a:not(.nav-cta),.nav-menu summary { font-weight:500; transition:transform .2s ease,font-weight .2s ease,color .2s ease; transform-origin:center; }
.desktop-nav>a:not(.nav-cta):hover,.nav-menu summary:hover { color:var(--brown); font-weight:700; transform:scale(1.09); }
.nav-cta { padding:11px 18px; border:1px solid var(--brown); border-radius:999px; }
.hero { min-height:690px; display:grid; grid-template-columns:1.02fr .98fr; background:var(--cream); }
.hero-copy { display:flex; flex-direction:column; justify-content:center; padding:clamp(62px,8vw,126px) clamp(28px,7vw,112px); }
.eyebrow,.small-label { margin:0 0 18px; color:var(--taupe); font-size:12px; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
h1,h2,h3 { font-family:"Philosopher",Georgia,serif; font-weight:400; }
h1 { max-width:720px; margin:0; font-size:clamp(46px,6vw,84px); line-height:.98; letter-spacing:-.035em; }
.hero-lead { max-width:610px; margin:30px 0 0; color:var(--taupe); font-size:17px; line-height:1.75; }
.hero-actions { display:flex; align-items:center; gap:28px; margin-top:34px; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:14px; min-height:50px; padding:13px 22px; border-radius:999px; font-size:14px; font-weight:500; transition:transform .2s,background .2s; }
.button:hover { transform:translateY(-2px); }
.primary { background:var(--brown); color:white; }
.text-link { padding:10px 0; border-bottom:1px solid var(--brown); font-size:14px; }
.trust-row { display:flex; flex-wrap:wrap; gap:10px 24px; margin-top:56px; color:var(--taupe); font-size:12px; }
.trust-row span::before { content:"•"; margin-right:9px; color:var(--sand); }
.hero-image { position:relative; min-height:620px; margin:0; overflow:hidden; }
.hero-image img { width:100%; height:100%; object-fit:cover; }
.hero-image::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(239,234,230,.16),transparent 45%); }
.hero-image figcaption { position:absolute; z-index:1; right:28px; bottom:28px; max-width:230px; padding:13px 16px; background:rgba(255,253,251,.88); color:var(--brown); font-family:"Philosopher",Georgia,serif; font-size:16px; backdrop-filter:blur(10px); }
.featured { padding:clamp(72px,9vw,132px) clamp(24px,7vw,104px); }
.section-heading { display:grid; grid-template-columns:.8fr 1.2fr; gap:70px; align-items:end; padding-bottom:42px; border-bottom:1px solid var(--line); }
.section-heading h2,.list-intro h2,.location-strip h2 { margin:0; color:var(--brown); font-size:clamp(38px,4.7vw,66px); line-height:1.03; }
.section-heading>p { max-width:660px; margin:0; color:var(--taupe); font-size:17px; line-height:1.75; }
.featured-grid { display:grid; grid-template-columns:.9fr 1.1fr .8fr; gap:1px; background:var(--line); border-bottom:1px solid var(--line); }
.featured-grid>* { background:var(--paper); padding:42px 36px; }
.info-panel h3 { margin:0 0 22px; font-size:27px; }
.check-list { display:grid; gap:15px; margin:0; padding:0; list-style:none; }
.check-list li { display:flex; align-items:center; gap:12px; font-size:15px; }
.check-list svg { width:20px; color:var(--sand); }
.area-list { display:flex; flex-wrap:wrap; gap:9px; }
.area-list span { padding:9px 13px; border:1px solid var(--line); border-radius:999px; color:var(--brown); font-size:13px; }
.consult-note { margin:30px 0 0; color:var(--taupe); font-size:14px; line-height:1.7; }
.price-panel { display:flex; flex-direction:column; justify-content:center; background:var(--brown)!important; color:white; }
.price-panel p { margin:0 0 8px; color:#dccfc4; font-size:13px; }
.price-panel strong { font-family:"Philosopher",Georgia,serif; font-size:clamp(28px,3vw,42px); font-weight:400; }
.price-panel>span { margin:11px 0 26px; color:#d7c9bd; font-size:11px; line-height:1.5; }
.light { align-self:flex-start; background:white; color:var(--brown); }
.treatment-list { display:grid; grid-template-columns:.7fr 1.3fr; gap:clamp(44px,8vw,120px); padding:clamp(80px,10vw,146px) clamp(24px,7vw,104px); background:var(--cream); }
.list-intro { position:sticky; top:118px; align-self:start; }
.list-intro p:last-child { max-width:440px; color:var(--taupe); line-height:1.75; }
.cards { display:grid; gap:20px; }
.treatment-card { padding:clamp(28px,4vw,46px); background:var(--paper); border:1px solid rgba(80,57,36,.1); border-radius:2px; box-shadow:0 22px 70px rgba(80,57,36,.05); }
.card-top { display:flex; justify-content:space-between; color:var(--sand); font-size:12px; letter-spacing:.12em; }
.price-mini { padding:7px 11px; background:var(--cream); border-radius:999px; color:var(--brown); letter-spacing:0; }
.treatment-card h3 { margin:20px 0 12px; color:var(--brown); font-size:clamp(30px,3.4vw,45px); }
.treatment-card>p { max-width:700px; color:var(--taupe); line-height:1.72; }
.treatment-card h4 { margin:26px 0 10px; font-size:13px; font-weight:600; }
.treatment-card ul { display:flex; flex-wrap:wrap; gap:8px 24px; margin:0; padding:0; list-style:none; color:var(--taupe); font-size:14px; }
.treatment-card ul li::before { content:"—"; margin-right:8px; color:var(--sand); }
.compact span { padding:7px 11px; }
.treatment-card>a { display:inline-block; margin-top:32px; padding-bottom:5px; border-bottom:1px solid var(--brown); color:var(--brown); font-size:13px; font-weight:500; }
.location-strip { display:grid; grid-template-columns:1fr .7fr auto; gap:40px; align-items:center; padding:70px clamp(24px,7vw,104px); background:#fff; border-top:1px solid var(--line); }
.location-strip h2 { font-size:clamp(36px,4vw,58px); }
.location-strip>p { color:var(--taupe); line-height:1.8; }
.location-strip>p strong { color:var(--brown); font-size:18px; }
footer { display:flex; justify-content:space-between; padding:28px clamp(24px,7vw,104px); background:var(--brown); color:#e9ded5; font-size:12px; }
footer span { letter-spacing:.2em; } footer p { margin:0; }
@media (max-width:920px) { .hero{grid-template-columns:1fr}.hero-copy{padding-top:84px;padding-bottom:72px}.hero-image{min-height:520px}.section-heading,.treatment-list{grid-template-columns:1fr;gap:32px}.featured-grid{grid-template-columns:1fr 1fr}.price-panel{grid-column:1/-1}.list-intro{position:static}.location-strip{grid-template-columns:1fr 1fr}.location-strip .button{grid-column:1/-1;justify-self:start} }
@media (max-width:620px) { .site-header{height:68px}nav>a:not(.nav-cta){display:none}.nav-cta{padding:9px 14px}.hero{min-height:auto}.hero-copy{padding:64px 24px 54px}h1{font-size:47px}.hero-lead{font-size:16px}.hero-actions{align-items:flex-start;flex-direction:column;gap:14px}.trust-row{margin-top:38px}.hero-image{min-height:390px}.hero-image img{object-position:61% center}.section-heading{align-items:start}.featured-grid{grid-template-columns:1fr}.price-panel{grid-column:auto}.featured-grid>*{padding:32px 24px}.location-strip{grid-template-columns:1fr;gap:18px}.location-strip .button{grid-column:auto}footer{flex-direction:column;gap:10px} }
@media (prefers-reduced-motion:reduce) { html{scroll-behavior:auto}.button{transition:none} }

/* Main-site prototype */
.desktop-nav { height:100%; }
.nav-menu { position:relative; height:100%; }
.nav-menu summary { display:flex; align-items:center; gap:6px; height:100%; cursor:pointer; list-style:none; }
.nav-menu summary::-webkit-details-marker { display:none; }
.mega-menu { position:absolute; top:68px; left:50%; width:min(760px,calc(100vw - 48px)); display:grid; grid-template-columns:repeat(3,1fr); gap:30px; padding:32px; transform:translateX(-50%); background:#fffdfb; border:1px solid var(--line); box-shadow:0 28px 70px rgba(80,57,36,.13); }
.mega-menu>div { display:flex; flex-direction:column; gap:10px; }
.mega-menu p { margin:0 0 5px; color:var(--brown); font-family:"Philosopher",Georgia,serif; font-size:21px; }
.mega-menu a { color:var(--taupe); font-size:13px; }
.mega-menu a:hover { color:var(--brown); }
.mega-all { grid-column:1/-1; padding-top:18px; border-top:1px solid var(--line); color:var(--brown)!important; font-weight:600; }
.treatment-menu { width:min(720px,calc(100vw - 48px)); }
.mobile-menu { display:none; position:relative; }
.mobile-menu summary { cursor:pointer; list-style:none; font-size:13px; font-weight:600; }
.mobile-menu summary::-webkit-details-marker { display:none; }
.mobile-menu>div { position:absolute; top:44px; right:-90px; width:230px; display:grid; padding:12px; background:var(--paper); border:1px solid var(--line); box-shadow:0 22px 55px rgba(80,57,36,.14); }
.mobile-menu a { padding:13px 12px; border-bottom:1px solid var(--line); font-size:14px; }
.mobile-menu a:last-child { border-bottom:0; }

.home-hero { min-height:680px; display:grid; grid-template-columns:1.04fr .96fr; background:var(--cream); }
.home-hero-copy { display:flex; flex-direction:column; justify-content:center; padding:clamp(70px,8vw,126px) clamp(28px,7vw,112px); }
.home-hero-copy h1 { max-width:760px; }
.home-hero-copy>p:not(.eyebrow) { max-width:630px; margin:28px 0 0; color:var(--taupe); font-size:17px; line-height:1.75; }
.home-hero-image { position:relative; min-height:600px; margin:0; overflow:hidden; }
.home-hero-image img { width:100%; height:100%; object-fit:cover; }
.home-hero-image figcaption { position:absolute; right:28px; bottom:28px; display:flex; flex-direction:column; min-width:190px; padding:15px 18px; background:rgba(255,253,251,.9); color:var(--taupe); backdrop-filter:blur(10px); }
.home-hero-image figcaption span { font-size:11px; text-transform:uppercase; letter-spacing:.1em; }
.home-hero-image figcaption strong { margin-top:3px; color:var(--brown); font-family:"Philosopher",Georgia,serif; font-size:24px; font-weight:400; }

.promise-section,.doctor-section,.review-section,.home-treatment,.location-section { padding:clamp(76px,9vw,132px) clamp(24px,7vw,104px); }
.section-title { max-width:780px; margin-bottom:44px; }
.section-title h2,.product-section h2,.media-strip h2 { margin:0; color:var(--brown); font-family:"Philosopher",Georgia,serif; font-size:clamp(38px,4.8vw,66px); font-weight:400; line-height:1.04; }
.section-title>p:last-child { color:var(--taupe); line-height:1.7; }
.section-title.split { max-width:none; display:grid; grid-template-columns:1.15fr .85fr; gap:clamp(38px,8vw,120px); align-items:end; }
.section-title.split>p { margin:0; max-width:480px; }
.promise-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.promise-grid article { min-height:280px; padding:34px 28px; border-right:1px solid var(--line); }
.promise-grid article:last-child { border-right:0; }
.promise-grid article>span { color:var(--sand); font-size:12px; }
.promise-grid h3 { margin:60px 0 14px; color:var(--brown); font-size:27px; }
.promise-grid p { margin:0; color:var(--taupe); font-size:14px; line-height:1.65; }

.doctor-section { background:var(--cream); }
.doctor-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.doctor-grid article { background:var(--paper); padding-bottom:25px; }
.doctor-portrait { min-height:310px; display:grid; place-items:center; background:linear-gradient(145deg,#e4d9d0,#f7f2ed); color:var(--sand); font-family:"Philosopher",Georgia,serif; font-size:64px; }
.doctor-grid h3 { min-height:55px; margin:25px 22px 6px; color:var(--brown); font-size:22px; }
.doctor-grid p { margin:0 22px; color:var(--taupe); font-size:12px; }

.review-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.review-grid blockquote { min-height:300px; display:flex; flex-direction:column; justify-content:space-between; margin:0; padding:34px; background:var(--cream); }
.stars { color:var(--brown); letter-spacing:.15em; }
.review-grid blockquote>p { color:var(--brown); font-family:"Philosopher",Georgia,serif; font-size:23px; line-height:1.45; }
.review-grid footer { display:flex; flex-direction:column; gap:3px; }
.review-grid footer span { font-weight:600; }
.review-grid footer small,.content-note { color:var(--taupe); font-size:11px; }

.home-treatment { background:var(--brown); color:white; }
.home-treatment .eyebrow,.home-treatment .section-title h2,.home-treatment .text-link { color:white; }
.category-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid rgba(255,255,255,.25); }
.category-grid a { min-height:190px; padding:26px; border-right:1px solid rgba(255,255,255,.18); border-bottom:1px solid rgba(255,255,255,.18); }
.category-grid a:nth-child(4n) { border-right:0; }
.category-grid span { color:#cdbbad; font-size:11px; }
.category-grid h3 { margin:62px 0 0; font-size:25px; }
.category-grid b { float:right; color:#cdbbad; font-weight:400; }

.product-section { display:grid; grid-template-columns:1.15fr .85fr; gap:70px; align-items:center; padding:clamp(76px,9vw,132px) clamp(24px,9vw,150px); background:#f6f2ee; }
.product-section>div:first-child>p:not(.eyebrow) { max-width:580px; color:var(--taupe); line-height:1.75; }
.outline { margin-top:20px; border:1px solid var(--brown); color:var(--brown); }
.product-visual { min-height:440px; display:grid; place-items:center; align-content:center; background:linear-gradient(150deg,#c8b5a5,#7b6b60); color:white; box-shadow:0 28px 70px rgba(80,57,36,.14); }
.product-visual span { display:grid; place-items:center; width:70px; height:70px; border:1px solid white; border-radius:50%; font-family:"Philosopher",Georgia,serif; font-size:40px; }
.product-visual p { text-align:center; letter-spacing:.18em; line-height:1.7; }

.location-section .section-title { max-width:850px; }
.map-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.map-grid article { border:1px solid var(--line); background:#fff; }
.map-grid iframe { width:100%; height:330px; border:0; filter:saturate(.7) sepia(.08); }
.map-grid article>div { padding:28px; }
.map-grid h3 { margin:0 0 10px; color:var(--brown); font-size:28px; }
.map-grid p { min-height:70px; color:var(--taupe); font-size:14px; line-height:1.65; }
.map-grid a { display:inline-block; padding-bottom:4px; border-bottom:1px solid var(--brown); color:var(--brown); font-size:13px; }
.media-strip { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; padding:76px clamp(24px,7vw,104px); background:var(--cream); }
.media-strip>div:last-child { display:grid; gap:12px; }
.media-strip a { display:flex; justify-content:space-between; padding:20px 0; border-bottom:1px solid var(--line); }
.media-strip a span { color:var(--taupe); font-size:13px; }
.media-strip a strong { color:var(--brown); font-weight:500; }

.footer { display:grid; grid-template-columns:1fr 1.25fr 1.25fr; gap:34px; padding:66px clamp(24px,7vw,104px) 28px; background:#2e2117; color:#e8ddd4; }
.footer>div:first-child>p,.footer div>p { color:#bfae9f; font-size:12px; line-height:1.7; }
.footer h3 { margin:5px 0 12px; color:white; font-family:"Montserrat",Arial,sans-serif; font-size:13px; font-weight:600; }
.footer small { grid-column:1/-1; margin-top:32px; padding-top:22px; border-top:1px solid rgba(255,255,255,.14); color:#9d8e83; }
.footer-brand { width:max-content; padding:0; background:transparent; }
.footer-brand .logo-mark { width:30px; height:30px; }
.footer-brand .logo-wordmark { width:105px; }

.page-hero { padding:clamp(85px,10vw,150px) clamp(24px,10vw,170px); background:var(--cream); }
.page-hero h1,.detail-hero h1 { max-width:900px; margin:0; font-size:clamp(48px,7vw,92px); }
.page-hero>p:last-child { max-width:690px; color:var(--taupe); font-size:17px; line-height:1.75; }
.treatment-catalog,.solution-list { padding:30px clamp(24px,7vw,104px) 110px; }
.treatment-catalog article,.solution-list article { display:grid; grid-template-columns:.8fr 1.2fr; gap:70px; padding:62px 0; border-bottom:1px solid var(--line); scroll-margin-top:100px; }
.treatment-catalog article>div:first-child>span,.solution-list article>div:first-child>span { color:var(--sand); font-size:11px; text-transform:uppercase; letter-spacing:.14em; }
.treatment-catalog h2,.solution-list h2,.promo-grid h2,.about-grid h2,.empty-product h2 { margin:12px 0; color:var(--brown); font-family:"Philosopher",Georgia,serif; font-size:38px; font-weight:400; }
.treatment-catalog p,.solution-list p { color:var(--taupe); line-height:1.7; }
.treatment-catalog article>div:last-child { display:grid; }
.treatment-catalog article>div:last-child a { display:grid; grid-template-columns:1fr auto auto; gap:20px; align-items:center; padding:18px 0; border-bottom:1px solid var(--line); }
.treatment-catalog small { color:var(--taupe); }
.solution-list article>div:last-child { display:flex; flex-direction:column; align-items:flex-start; }
.solution-list article>div:last-child a { margin:4px 0; color:var(--brown); }

.detail-hero { display:grid; grid-template-columns:1.35fr .65fr; background:var(--cream); }
.detail-hero>div { padding:110px clamp(24px,8vw,130px); }
.breadcrumb { margin:0 0 50px; color:var(--taupe); font-size:12px; }
.detail-hero>div>p:last-child { max-width:680px; color:var(--taupe); font-size:17px; line-height:1.75; }
.detail-hero aside { display:flex; flex-direction:column; justify-content:center; padding:55px; background:var(--brown); color:white; }
.detail-hero aside>p { margin:0 0 10px; color:#d9cbbf; font-size:13px; }
.detail-hero aside strong { font-family:"Philosopher",Georgia,serif; font-size:46px; font-weight:400; }
.detail-hero aside small { margin:10px 0 30px; color:#cdbbad; }
.detail-content { display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--line); }
.detail-content article { min-height:440px; padding:70px clamp(28px,7vw,105px); background:var(--paper); }
.large-list { display:grid; gap:18px; padding:0; list-style:none; color:var(--sand); }
.large-list span { margin-left:12px; color:var(--brown); font-size:17px; }
.detail-content article>p:last-child { margin-top:32px; color:var(--taupe); line-height:1.75; }
.promo-grid,.about-grid,.empty-product { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; padding:80px clamp(24px,7vw,104px) 120px; }
.promo-grid article,.about-grid article { min-height:320px; padding:34px; background:var(--cream); }
.promo-grid article>span,.about-grid article>span { color:var(--sand); }
.promo-grid article>p,.about-grid article>p { color:var(--taupe); line-height:1.7; }
.promo-grid article>a { display:inline-block; margin-top:40px; border-bottom:1px solid var(--brown); font-size:13px; }
.promo-hero { background:linear-gradient(135deg,#f3ece5 0%,#e8ddd3 100%); }
.promo-hero h1 { max-width:820px; }
.promo-gallery { padding:90px clamp(20px,7vw,104px) 120px; background:#faf8f5; }
.promo-intro { display:grid; grid-template-columns:1.15fr .65fr; gap:80px; align-items:end; margin-bottom:48px; }
.promo-intro h2,.promo-contact h2 { max-width:760px; margin:10px 0 0; color:var(--brown); font-family:"Philosopher",Georgia,serif; font-size:clamp(38px,4.5vw,62px); font-weight:400; line-height:1.05; }
.promo-intro>p,.promo-contact>div>p:last-child { margin:0; color:var(--taupe); font-size:15px; line-height:1.75; }
.promo-image-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; align-items:start; }
.promo-card { overflow:hidden; border:1px solid rgba(70,48,35,.12); background:#eee6df; box-shadow:0 14px 34px rgba(58,39,27,.08); }
.promo-card a { position:relative; display:block; overflow:hidden; }
.promo-card img { display:block; width:100%; height:auto; transition:transform .55s ease,filter .55s ease; }
.promo-card span { position:absolute; right:16px; bottom:16px; padding:10px 14px; background:rgba(46,33,23,.9); color:#fff; font-size:11px; font-weight:600; letter-spacing:.05em; opacity:0; transform:translateY(8px); transition:opacity .25s ease,transform .25s ease; }
.promo-card a:hover img { transform:scale(1.018); filter:brightness(.9); }
.promo-card a:hover span,.promo-card a:focus-visible span { opacity:1; transform:translateY(0); }
.promo-contact { display:grid; grid-template-columns:1fr auto; gap:50px; align-items:end; margin-top:78px; padding:52px clamp(28px,5vw,68px); background:#432c20; color:#fff; }
.promo-contact .eyebrow { color:#d8c1ae; }
.promo-contact h2 { color:#fff; font-size:clamp(34px,4vw,54px); }
.promo-contact>div>p:last-child { max-width:660px; margin-top:16px; color:#d7c9bf; }
.promo-contact .primary-button { flex:none; border-color:#fff; background:#f7f0e9; color:#432c20; white-space:nowrap; }
.empty-product { grid-template-columns:.8fr 1.2fr; align-items:center; }

@media (max-width:920px) {
  .desktop-nav { display:none; }
  .mobile-menu { display:block; margin-left:auto; margin-right:16px; }
  .home-hero,.product-section,.media-strip,.detail-hero { grid-template-columns:1fr; }
  .home-hero-image { min-height:520px; }
  .promise-grid,.doctor-grid,.category-grid { grid-template-columns:repeat(2,1fr); }
  .promise-grid article:nth-child(2) { border-right:0; }
  .section-title.split,.treatment-catalog article,.solution-list article { grid-template-columns:1fr; gap:25px; }
  .doctor-grid article { min-width:0; }
  .review-grid { grid-template-columns:1fr; }
  .footer { grid-template-columns:1fr 1fr; }
  .detail-content { grid-template-columns:1fr; }
  .promo-grid,.about-grid { grid-template-columns:1fr; }
  .promo-intro { grid-template-columns:1fr; gap:22px; }
  .promo-image-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .promo-contact { grid-template-columns:1fr; align-items:start; }
}
@media (max-width:620px) {
  .site-header { padding:0 16px; }
  .brand>span:last-child { display:none; }
  .mobile-menu { margin-right:10px; }
  .mobile-menu>div { right:-92px; }
  .site-header>.nav-cta { padding:9px 12px; font-size:12px; }
  .promise-grid,.doctor-grid,.category-grid,.map-grid,.footer,.empty-product { grid-template-columns:1fr; }
  .promo-gallery { padding-top:64px; padding-bottom:84px; }
  .promo-image-grid { grid-template-columns:1fr; gap:18px; }
  .promo-intro { margin-bottom:32px; }
  .promo-contact { margin-top:54px; padding:36px 24px; }
  .promo-card span { opacity:1; transform:none; }
  .promise-grid article { min-height:auto; border-right:0; border-bottom:1px solid var(--line); }
  .promise-grid h3 { margin-top:35px; }
  .doctor-portrait { min-height:250px; }
  .category-grid a { min-height:140px; border-right:0; }
  .category-grid h3 { margin-top:36px; }
  .map-grid p { min-height:auto; }
  .footer small { grid-column:auto; }
  .detail-hero>div { padding:72px 24px; }
  .detail-hero aside { padding:42px 24px; }
  .home-hero-copy { padding:64px 24px; }
}

/* Editorial visual direction — homepage v2 */
.editorial-hero { min-height:760px; }
.editorial-hero .home-hero-copy { position:relative; z-index:1; padding-right:clamp(40px,8vw,132px); }
.editorial-hero .home-hero-copy::after { content:""; position:absolute; right:-36px; bottom:70px; width:90px; height:90px; border:1px solid rgba(80,57,36,.2); border-radius:50%; pointer-events:none; }
.campaign-image { min-height:760px; }
.campaign-image img { object-position:50% 35%; filter:saturate(.82) contrast(.98); transform:scale(1.012); }
.campaign-image::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(80,57,36,.08),transparent 28%),linear-gradient(0deg,rgba(32,26,22,.15),transparent 38%); }
.campaign-image figcaption { left:28px; right:auto; bottom:28px; min-width:260px; }
.campaign-image figcaption strong { font-size:19px; }
.hero-proof { display:flex; flex-wrap:wrap; gap:9px; margin-top:48px; }
.hero-proof span { padding:9px 13px; border:1px solid var(--line); border-radius:999px; color:var(--taupe); font-size:11px; text-transform:uppercase; letter-spacing:.08em; }

.editorial-promise { display:grid; grid-template-columns:.82fr 1.18fr; gap:clamp(54px,8vw,128px); align-items:center; background:var(--paper); }
.promise-visual { position:relative; height:min(690px,72vw); min-height:560px; overflow:hidden; background:var(--cream); }
.promise-visual img { width:100%; height:100%; object-fit:cover; object-position:center 42%; filter:saturate(.78); }
.promise-visual::after { content:""; position:absolute; inset:0; border:18px solid rgba(255,253,251,.25); }
.promise-visual>span { position:absolute; right:0; bottom:0; padding:18px 24px; background:var(--brown); color:white; font-family:"Philosopher",Georgia,serif; font-size:20px; }
.promise-content .section-title { margin-bottom:26px; }
.promise-list { border-top:1px solid var(--line); }
.promise-list article { display:grid; grid-template-columns:48px 1fr; gap:18px; padding:25px 0; border-bottom:1px solid var(--line); }
.promise-list article>span { padding-top:4px; color:var(--sand); font-size:11px; }
.promise-list h3 { margin:0 0 7px; color:var(--brown); font-size:25px; }
.promise-list p { margin:0; color:var(--taupe); font-size:13px; line-height:1.65; }

.doctor-editorial { display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(54px,9vw,145px); align-items:start; background:var(--cream); }
.doctor-intro { position:sticky; top:116px; }
.doctor-intro .section-title { margin-bottom:28px; }
.doctor-list { border-top:1px solid var(--line); }
.doctor-list article { display:grid; grid-template-columns:46px 1fr auto; gap:20px; align-items:center; min-height:132px; padding:24px 6px; border-bottom:1px solid var(--line); transition:padding .25s,background .25s; }
.doctor-list article:hover { padding-left:20px; padding-right:20px; background:rgba(255,253,251,.65); }
.doctor-list article>span,.doctor-list article>b { color:var(--sand); font-size:11px; font-weight:400; }
.doctor-list h3 { margin:0 0 7px; color:var(--brown); font-size:clamp(23px,2.25vw,34px); }
.doctor-list p { margin:0; color:var(--taupe); font-size:12px; }

.review-editorial { background:var(--paper); }
.review-layout { display:grid; grid-template-columns:.82fr 1.18fr; gap:22px; }
.review-photo { position:relative; min-height:690px; overflow:hidden; background:var(--cream); }
.review-photo img { width:100%; height:100%; object-fit:cover; object-position:center 35%; filter:saturate(.78); }
.review-photo span { position:absolute; left:24px; bottom:24px; padding:12px 16px; background:rgba(255,253,251,.9); color:var(--brown); font-family:"Philosopher",Georgia,serif; font-size:18px; backdrop-filter:blur(10px); }
.review-stack { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.review-stack blockquote { min-height:260px; display:flex; flex-direction:column; justify-content:space-between; margin:0; padding:30px; background:var(--cream); }
.review-stack .featured-review { grid-column:1/-1; min-height:410px; padding:clamp(34px,5vw,60px); background:var(--brown); color:white; }
.review-stack blockquote>p { color:var(--brown); font-family:"Philosopher",Georgia,serif; font-size:clamp(19px,2vw,28px); line-height:1.45; }
.review-stack .featured-review>p { color:white; font-size:clamp(26px,3vw,41px); }
.review-stack footer { display:flex; flex-direction:column; gap:3px; padding:0; background:transparent; color:inherit; }
.review-stack footer small { color:var(--taupe); }
.review-stack .featured-review .stars,.review-stack .featured-review footer small { color:#d3c0b0; }

.treatment-editorial { background:#33241a; }
.treatment-gallery { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.treatment-gallery a { position:relative; min-height:440px; overflow:hidden; background:#574235; }
.treatment-gallery .wide-card { grid-column:span 2; }
.treatment-gallery img { width:100%; height:100%; object-fit:cover; object-position:center 33%; filter:saturate(.65) brightness(.78); transition:transform .55s,filter .55s; }
.treatment-gallery a:hover img { transform:scale(1.035); filter:saturate(.82) brightness(.68); }
.treatment-gallery a::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(30,20,14,.86),transparent 62%); }
.treatment-gallery a>div { position:absolute; z-index:1; inset:auto 25px 25px; display:grid; grid-template-columns:auto 1fr auto; gap:14px; align-items:end; }
.treatment-gallery a span { grid-row:1; color:#d6c4b6; font-size:10px; }
.treatment-gallery a p { grid-column:2/4; margin:0; color:#d6c4b6; font-size:11px; text-align:right; }
.treatment-gallery h3 { grid-column:1/3; margin:8px 0 0; color:white; font-size:clamp(27px,3vw,42px); }
.treatment-gallery b { color:white; font-size:18px; font-weight:400; }

.product-editorial { background:var(--cream); }
.product-photo { position:relative; min-height:600px; overflow:hidden; box-shadow:0 30px 80px rgba(80,57,36,.12); }
.product-photo img { width:100%; height:100%; object-fit:cover; object-position:center 26%; filter:saturate(.72); }
.product-photo>div { position:absolute; left:24px; right:24px; bottom:24px; display:flex; justify-content:space-between; align-items:end; padding:20px; background:rgba(255,253,251,.9); color:var(--brown); backdrop-filter:blur(10px); }
.product-photo span { color:var(--taupe); font-size:10px; text-transform:uppercase; letter-spacing:.14em; }
.product-photo strong { font-family:"Philosopher",Georgia,serif; font-size:22px; font-weight:400; line-height:1.15; text-align:right; }

.media-editorial { grid-template-columns:.9fr 1.1fr; gap:clamp(50px,9vw,135px); padding-top:clamp(78px,9vw,128px); padding-bottom:clamp(78px,9vw,128px); }
.media-photo { position:relative; min-height:570px; overflow:hidden; }
.media-photo img { width:100%; height:100%; object-fit:cover; object-position:center 22%; filter:saturate(.75); }
.media-photo>span { position:absolute; right:20px; bottom:20px; padding:10px 14px; background:var(--brown); color:white; font-size:11px; }
.media-editorial>div:last-child { display:block; }
.media-links { margin-top:42px; }
.media-links a { display:flex; justify-content:space-between; padding:22px 0; border-bottom:1px solid var(--line); }
.media-links a span { color:var(--taupe); font-size:13px; }
.media-links a strong { color:var(--brown); font-weight:500; }

@media (max-width:920px) {
  .editorial-promise,.doctor-editorial,.review-layout { grid-template-columns:1fr; }
  .promise-visual { height:680px; }
  .doctor-intro { position:static; }
  .treatment-gallery { grid-template-columns:1fr 1fr; }
  .treatment-gallery .wide-card { grid-column:span 2; }
  .review-photo { min-height:600px; }
}
@media (max-width:620px) {
  .editorial-hero,.campaign-image { min-height:auto; }
  .campaign-image { height:540px; }
  .campaign-image img { object-position:center 28%; }
  .editorial-hero .home-hero-copy::after { display:none; }
  .hero-proof { margin-top:34px; }
  .editorial-promise { gap:42px; }
  .promise-visual { height:520px; min-height:0; }
  .doctor-list article { grid-template-columns:34px 1fr auto; min-height:116px; }
  .review-photo { min-height:500px; }
  .review-stack { grid-template-columns:1fr; }
  .review-stack .featured-review { grid-column:auto; min-height:340px; }
  .treatment-gallery { grid-template-columns:1fr; }
  .treatment-gallery .wide-card { grid-column:auto; }
  .treatment-gallery a { min-height:390px; }
  .product-photo { min-height:520px; }
  .media-photo { min-height:460px; }
}

/* Compact commercial homepage — approval preview */
.compact-hero {
  position:relative;
  min-height:clamp(590px,50vw,700px);
  display:flex;
  align-items:center;
  isolation:isolate;
  overflow:hidden;
  padding:82px clamp(24px,8vw,128px);
  background:#e8ded5;
  color:var(--brown);
}
.compact-hero::before { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,rgba(250,245,241,.96) 0%,rgba(250,245,241,.88) 31%,rgba(250,245,241,.42) 49%,rgba(250,245,241,0) 67%); pointer-events:none; }
.compact-hero-visual { position:absolute; z-index:-2; inset:0; }
.compact-hero-visual img { width:100%; height:100%; display:block; object-fit:cover; object-position:center; }
.compact-hero-inner { position:relative; z-index:1; width:min(690px,48%); }
.hero-kicker { margin:0 0 24px; color:#806955; font-size:12px; font-weight:600; letter-spacing:.18em; text-transform:uppercase; }
.compact-hero h1 { max-width:690px; color:#39251b; font-size:clamp(46px,5.35vw,76px); line-height:1.01; }
.hero-copy { max-width:620px; display:block; margin:28px 0 0; padding:0; color:#5f493b; font-family:"Philosopher",Georgia,serif; font-size:clamp(19px,1.55vw,24px); line-height:1.52; }
.hero-button { background:#39251b; color:white; }
.hero-secondary-button { border:1px solid #39251b; background:rgba(255,253,251,.62); color:#39251b; backdrop-filter:blur(7px); }
.hero-button,.hero-secondary-button { cursor:pointer; box-shadow:0 10px 25px rgba(57,37,27,.09); }
.hero-button:hover,.hero-secondary-button:hover { box-shadow:0 15px 32px rgba(57,37,27,.16); }
.hero-link { padding:9px 0; border-bottom:1px solid rgba(57,37,27,.55); color:#39251b; font-size:13px; }
.hero-meta { display:flex; gap:0; margin-top:42px; color:#715c4d; font-size:11px; letter-spacing:.07em; text-transform:uppercase; }
.hero-meta span { padding:0 18px; border-right:1px solid rgba(57,37,27,.22); }
.hero-meta span:first-child { padding-left:0; }
.hero-meta span:last-child { border:0; }

.compact-section { padding:clamp(68px,7vw,104px) clamp(24px,7vw,104px); }
.compact-heading { max-width:820px; margin-bottom:38px; }
.compact-heading h2,.social-compact h2 { margin:0; color:var(--brown); font-size:clamp(36px,4.2vw,58px); line-height:1.05; }
.promise-intro { max-width:690px; margin:22px 0 0; color:var(--taupe); font-size:15px; line-height:1.75; }
.heading-row { max-width:none; display:grid; grid-template-columns:1.1fr .9fr; gap:70px; align-items:end; }
.heading-row>p { max-width:520px; margin:0; color:var(--taupe); font-size:14px; line-height:1.75; }

.promise-compact { background:#eee7e1; }
.promise-compact-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.promise-compact-grid article { position:relative; isolation:isolate; min-height:218px; overflow:hidden; padding:23px 21px; background:rgba(255,253,251,.9); border:1px solid rgba(80,57,36,.1); box-shadow:0 18px 50px rgba(57,37,27,.055); transition:transform .25s,box-shadow .25s; }
.promise-compact-grid article:nth-child(2),.promise-compact-grid article:nth-child(4) { background:#e3d6cc; }
.promise-compact-grid article:hover { transform:translateY(-4px); box-shadow:0 24px 55px rgba(57,37,27,.09); }
.promise-card-top { display:flex; align-items:center; justify-content:space-between; }
.promise-card-top>span { color:var(--sand); font-size:15px; font-weight:700; letter-spacing:.08em; }
.promise-watermark { position:absolute; z-index:-1; right:-22px; bottom:-23px; width:190px; height:190px; object-fit:cover; border-radius:50%; opacity:.23; filter:grayscale(.7) contrast(.95); transform:rotate(-5deg); }
.promise-compact-grid h3 { margin:34px 0 10px; color:var(--brown); font-size:25px; font-weight:700; line-height:1.12; }
.promise-compact-grid p { position:relative; z-index:1; margin:0; color:var(--taupe); font-size:13px; line-height:1.62; }

.doctors-compact { background:#efe9e4; }
.doctor-group-card { position:relative; overflow:hidden; aspect-ratio:2/1; background:#d7d0cb; box-shadow:0 26px 70px rgba(57,37,27,.09); }
.doctor-group-card { display:block; cursor:pointer; }
.doctor-group-card>img { width:100%; height:100%; display:block; object-fit:cover; object-position:center 40%; filter:saturate(.9) contrast(.98); }
.doctor-group-card::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(39,25,18,.48),transparent 42%); pointer-events:none; }
.doctor-group-card>div { position:absolute; z-index:1; left:clamp(22px,4vw,58px); right:clamp(22px,4vw,58px); bottom:clamp(22px,3.5vw,48px); display:flex; align-items:end; justify-content:space-between; gap:24px; }
.doctor-group-card p { margin:0; color:white; font-family:"Philosopher",Georgia,serif; font-size:clamp(27px,3vw,43px); }
.doctor-button { min-height:46px; background:rgba(255,253,251,.94); color:var(--brown); }
.doctor-group-card:hover .doctor-button { background:var(--brown); color:white; transform:translateY(-2px); }
.doctor-card-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.doctor-card { overflow:hidden; background:#fff; transition:transform .25s,box-shadow .25s; }
.doctor-card:hover { transform:translateY(-5px); box-shadow:0 20px 50px rgba(57,37,27,.1); }
.doctor-photo { height:clamp(330px,35vw,510px); overflow:hidden; background:#d9d1cb; }
.doctor-photo img { width:100%; height:100%; object-fit:cover; object-position:center 18%; filter:saturate(.86) contrast(.98); transition:transform .45s; }
.doctor-card:hover img { transform:scale(1.02); }
.doctor-card>div:last-child { min-height:150px; padding:22px 20px; }
.doctor-card h3 { min-height:51px; margin:0 0 7px; color:var(--brown); font-size:clamp(19px,1.8vw,25px); line-height:1.16; }
.doctor-card p { margin:0 0 19px; color:var(--taupe); font-size:11px; }
.doctor-card span { color:var(--brown); font-size:11px; font-weight:600; }

.results-compact { background:#33241b; color:white; }
.results-compact .eyebrow,.results-compact .compact-heading h2 { color:white; }
.results-compact .heading-row>p { color:#d2c3b7; }
.result-wall { display:grid; width:min(100%,900px); margin-inline:auto; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; }
.result-wall a { position:relative; aspect-ratio:1/1; overflow:hidden; background:#eadfd7; border:0; }
.result-wall a::after { content:""; position:absolute; inset:44% 0 0; background:linear-gradient(0deg,rgba(28,18,13,.78),transparent); pointer-events:none; }
.result-wall img { width:100%; height:100%; display:block; object-fit:cover; transition:transform .35s ease,filter .35s ease; }
.result-wall a:hover img { transform:scale(1.035); filter:saturate(1.04); }
.result-wall strong { position:absolute; z-index:1; left:15px; right:15px; bottom:14px; color:white; font-family:"Philosopher",Georgia,serif; font-size:17px; font-weight:600; line-height:1.15; text-shadow:0 2px 12px rgba(24,14,10,.85); transition:font-size .25s ease,font-weight .25s ease,transform .25s ease; }
.result-wall a:hover strong { font-size:19px; font-weight:700; transform:translateY(-2px); }
.result-disclaimer { margin:20px 0 0; color:#ad9d91; font-size:10px; line-height:1.6; }

.reviews-compact { background:var(--paper); }
.review-card-grid { display:flex; gap:13px; overflow-x:auto; padding:2px 1px 16px; scroll-snap-type:x mandatory; scrollbar-width:thin; scrollbar-color:#bda998 transparent; }
.review-card-grid blockquote { flex:0 0 300px; min-height:225px; display:flex; flex-direction:column; justify-content:space-between; margin:0; padding:23px; background:#f1ebe6; border:1px solid rgba(80,57,36,.08); scroll-snap-align:start; }
.review-card-grid blockquote:nth-child(4n+2) { background:#53392a; color:white; }
.review-card-grid blockquote>p { display:-webkit-box; overflow:hidden; -webkit-line-clamp:5; -webkit-box-orient:vertical; margin:18px 0; color:var(--brown); font-family:"Philosopher",Georgia,serif; font-size:17px; line-height:1.48; }
.review-card-grid blockquote:nth-child(4n+2)>p { color:white; }
.review-card-grid footer { display:flex; flex-direction:row; align-items:center; gap:11px; padding:0; background:transparent; color:inherit; }
.review-card-grid footer>img { width:40px; height:40px; flex:0 0 40px; border-radius:50%; object-fit:cover; background:#ddd3ca; }
.review-card-grid footer>span { display:flex; min-width:0; flex-direction:column; gap:3px; }
.review-card-grid footer strong { font-size:12px; }
.review-card-grid footer small { color:var(--taupe); font-size:10px; }
.review-card-grid blockquote:nth-child(4n+2) .stars,.review-card-grid blockquote:nth-child(4n+2) footer small { color:#d8c4b5; }
.review-source { align-self:end; justify-self:start; padding-bottom:5px; border-bottom:1px solid var(--brown); color:var(--brown)!important; font-weight:600; }

.explore-section { background:#f2ede9; }
.explore-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.explore-card { position:relative; min-height:470px; display:flex; flex-direction:column; justify-content:space-between; overflow:hidden; padding:30px; }
.treatment-card-home { background:#3a281e; color:white; }
.treatment-card-home>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; transition:transform .45s; }
.treatment-card-home::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(42,27,19,.96) 0%,rgba(42,27,19,.46) 48%,rgba(42,27,19,.08) 76%),linear-gradient(180deg,rgba(42,27,19,.24),transparent 34%); }
.treatment-card-home:hover>img { transform:scale(1.025); }
.explore-number { position:relative; z-index:1; color:#cdb9aa; font-size:11px; }
.explore-card>div { position:relative; z-index:2; }
.explore-card p { margin:0 0 11px; color:#d6c7bc; font-size:12px; }
.explore-card h3 { margin:0 0 22px; font-size:clamp(36px,4.3vw,60px); }
.explore-card>div>span { padding-bottom:5px; border-bottom:1px solid currentColor; font-size:12px; }
.product-card-home { justify-content:flex-end; color:var(--brown); }
.product-card-home { background:#b9a89b; }
.product-card-home>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 54%; filter:saturate(.62) sepia(.18) contrast(.94) brightness(.92); transition:transform .45s,filter .45s; }
.product-card-home::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(67,45,32,.94) 0%,rgba(73,51,38,.28) 54%,rgba(176,151,132,.15) 100%); }
.product-card-home:hover>img { transform:scale(1.025); filter:saturate(.72) sepia(.16) contrast(.96) brightness(.88); }
.product-card-home,.product-card-home h3,.product-card-home>div>span { color:white; }
.product-card-home p { color:#e1d4ca; }

.locations-compact { background:#fff; }
.mini-map-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.mini-map-grid article { display:grid; grid-template-columns:.9fr 1.1fr; min-height:230px; overflow:hidden; border:1px solid #654a3d; background:#4b3328; box-shadow:0 20px 48px rgba(57,37,27,.09); }
.mini-map-grid article:nth-child(2) { background:#4b3328; }
.mini-map-grid iframe { width:100%; height:100%; min-height:230px; border:0; filter:saturate(.65) sepia(.08); }
.mini-map-grid article>div { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:26px; }
.mini-map-grid h3 { margin:0 0 9px; color:#fff8ef; font-size:27px; }
.mini-map-grid h3 strong { font-weight:700; }
.mini-map-grid p { margin:0 0 21px; color:#e9ddd3; font-size:12px; line-height:1.65; }
.mini-map-grid a { padding-bottom:4px; border-bottom:1px solid rgba(255,248,239,.72); color:#fff8ef; font-size:11px; font-weight:600; }

.social-compact { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; padding:58px clamp(24px,7vw,104px); background:#e9e0da; }
.social-compact h2 { font-size:clamp(31px,3.6vw,48px); }
.social-compact>div:last-child { display:grid; }
.social-compact a { display:flex; justify-content:space-between; gap:20px; padding:16px 0; border-bottom:1px solid var(--line); color:var(--taupe); font-size:12px; }
.social-compact a strong { color:var(--brown); font-weight:600; }

@media (max-width:980px) {
  .compact-hero-inner { width:min(590px,56%); }
  .promise-compact-grid,.doctor-card-grid { grid-template-columns:repeat(2,1fr); }
  .doctor-photo { height:540px; }
  .mini-map-grid article { grid-template-columns:1fr; }
  .mini-map-grid iframe { min-height:190px; }
}
@media (max-width:680px) {
  .compact-hero { min-height:0; display:grid; grid-template-rows:auto auto; align-items:stretch; padding:0; background:#f7f1eb; }
  .compact-hero::before { display:none; }
  .compact-hero-visual { position:relative; z-index:0; grid-row:2; height:min(580px,135vw); overflow:hidden; }
  .compact-hero-visual img { object-position:48% center; }
  .compact-hero-inner { z-index:1; grid-row:1; width:100%; padding:38px 24px 36px; background:transparent; border:0; box-shadow:none; backdrop-filter:none; }
  .hero-kicker { margin-bottom:14px; }
  .compact-hero h1 { max-width:530px; font-size:clamp(38px,10.5vw,46px); }
  .hero-copy { display:block; margin-top:20px; font-size:18px; line-height:1.5; }
  .hero-meta,.hero-link { display:none; }
  .hero-actions { margin-top:22px; }
  .hero-button { min-height:46px; padding:11px 18px; }
  .heading-row,.explore-grid,.mini-map-grid,.social-compact { grid-template-columns:1fr; gap:28px; }
  .promise-compact-grid { grid-template-columns:1fr 1fr; }
  .promise-compact-grid article { min-height:178px; padding:20px 16px; }
  .promise-card-top>span { font-size:13px; }
  .promise-compact-grid h3 { margin-top:27px; font-size:21px; }
  .doctor-group-card { aspect-ratio:4/5; }
  .doctor-group-card>img { object-position:center 64%; }
  .doctor-group-card>div { align-items:flex-start; flex-direction:column; }
  .doctor-button { min-height:43px; }
  .review-card-grid blockquote { flex:0 0 78vw; }
  .result-wall { grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; }
  .result-wall a { aspect-ratio:1/1; }
  .result-wall strong { left:11px; right:11px; bottom:10px; font-size:14px; }
  .result-wall a:hover strong { font-size:16px; }
  .explore-card { min-height:410px; }
.social-compact { padding-top:48px; padding-bottom:48px; }
}

/* Solution and treatment discovery */
.solution-page-hero,.treatment-page-hero { background:#eee6df; }
.solution-card-grid,.category-teaser-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; padding:12px clamp(24px,7vw,104px) clamp(76px,8vw,116px); background:#33241b; }
.solution-card,.category-teaser { position:relative; min-height:420px; overflow:hidden; background:#4d392c; color:white; }
.featured-solution,.wide-category { grid-column:span 2; }
.solution-card>img,.category-teaser>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; filter:saturate(.72) brightness(.82); transition:transform .5s ease,filter .5s ease; }
.solution-card:hover>img,.category-teaser:hover>img { transform:scale(1.035); filter:saturate(.86) brightness(.7); }
.solution-shade,.category-shade { position:absolute; inset:0; background:linear-gradient(0deg,rgba(31,19,13,.92) 0%,rgba(31,19,13,.2) 68%,transparent); }
.solution-card>div,.category-teaser>div { position:absolute; z-index:1; left:clamp(22px,3vw,38px); right:clamp(22px,3vw,38px); bottom:clamp(22px,3vw,36px); }
.solution-card>div>span,.category-teaser small { color:#dbc9ba; font-size:11px; font-weight:600; letter-spacing:.13em; text-transform:uppercase; }
.solution-card h2,.category-teaser h2 { margin:10px 0 9px; color:white; font-size:clamp(30px,3vw,46px); }
.solution-card p,.category-teaser p { max-width:600px; margin:0 0 18px; color:#e4d8ce; font-size:13px; line-height:1.65; }
.solution-card b,.category-teaser b { color:white; font-size:12px; font-weight:600; }

.category-teaser-grid { grid-template-columns:repeat(2,minmax(0,1fr)); background:#efe8e2; }
.category-teaser { min-height:440px; }
.category-teaser:nth-child(4n+2),.category-teaser:nth-child(4n+3) { min-height:380px; }
.visual-catalog { background:#fffdfb; }
.visual-catalog article { scroll-margin-top:95px; }
.visual-catalog article>div:last-child a { transition:padding .2s ease,background .2s ease; }
.visual-catalog article>div:last-child a:hover { padding-left:15px; padding-right:15px; background:#f2ebe5; }

.concern-hero { min-height:650px; display:grid; grid-template-columns:.92fr 1.08fr; background:#efe8e2; }
.concern-hero-copy { display:flex; flex-direction:column; justify-content:center; padding:clamp(72px,8vw,124px) clamp(28px,7vw,108px); }
.concern-hero h1,.treatment-detail-hero h1 { margin:0; color:#38261c; font-size:clamp(48px,6vw,82px); line-height:1.02; }
.concern-hero-copy>p:last-child,.treatment-detail-hero>div>p:not(.breadcrumb):not(.eyebrow) { max-width:620px; margin:25px 0 0; color:var(--taupe); font-size:16px; line-height:1.78; }
.concern-hero figure { position:relative; min-height:650px; margin:0; overflow:hidden; background:#d4c8bf; }
.concern-hero figure>img { width:100%; height:100%; object-fit:cover; object-position:center; filter:saturate(.8); }
.concern-hero figcaption { position:absolute; left:22px; bottom:22px; padding:10px 14px; background:rgba(255,253,251,.88); color:#5e493b; font-size:10px; backdrop-filter:blur(8px); }
.concern-article { display:grid; grid-template-columns:1.2fr .9fr .9fr; gap:1px; background:var(--line); }
.concern-article article { min-height:390px; padding:clamp(40px,5vw,74px); background:#fffdfb; }
.concern-article .condition-intro { background:#3b291f; color:white; }
.condition-intro .eyebrow { color:#d5c2b3; }
.concern-article h2 { margin:12px 0 24px; color:white; font-size:clamp(32px,3.6vw,50px); line-height:1.08; }
.concern-article .condition-intro>p:last-child { color:#d7c8bc; font-size:15px; line-height:1.8; }
.concern-article article>span { color:var(--sand); font-size:12px; font-weight:700; }
.concern-article h3 { margin:48px 0 22px; color:var(--brown); font-size:27px; }
.concern-article ul { display:grid; gap:13px; margin:0; padding:0; list-style:none; color:var(--taupe); font-size:14px; line-height:1.55; }
.concern-article li::before { content:"—"; margin-right:10px; color:var(--sand); }

.recommended-treatments { padding:clamp(74px,8vw,118px) clamp(24px,7vw,104px); background:#efe8e2; }
.recommendation-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; }
.recommendation-grid>a { overflow:hidden; background:#fffdfb; box-shadow:0 18px 50px rgba(57,37,27,.06); transition:transform .25s ease,box-shadow .25s ease; }
.recommendation-grid>a:hover { transform:translateY(-5px); box-shadow:0 25px 62px rgba(57,37,27,.12); }
.recommendation-grid img { width:100%; height:230px; display:block; object-fit:cover; filter:saturate(.78); }
.recommendation-grid>a>div { display:flex; flex-direction:column; min-height:330px; padding:26px; }
.recommendation-grid small,.recommendation-grid>*>div>span { color:var(--sand); font-size:10px; font-weight:600; letter-spacing:.1em; text-transform:uppercase; }
.recommendation-grid h3 { margin:9px 0; color:var(--brown); font-size:27px; }
.recommendation-grid p { margin:0 0 24px; color:var(--taupe); font-size:13px; line-height:1.65; }
.recommendation-grid strong { margin:7px 0 20px; color:var(--brown); font-family:"Philosopher",Georgia,serif; font-size:21px; font-weight:400; }
.recommendation-grid b { margin-top:auto; color:var(--brown); font-size:12px; }
.medical-note { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-top:28px; padding:24px 28px; background:#503924; color:white; }
.medical-note p { margin:0; font-family:"Philosopher",Georgia,serif; font-size:23px; }

.treatment-detail-hero { min-height:680px; display:grid; grid-template-columns:1.05fr .95fr; background:#efe8e2; }
.treatment-detail-hero figure { min-height:680px; margin:0; overflow:hidden; background:#d6cbc3; }
.treatment-detail-hero figure img { width:100%; height:100%; object-fit:cover; object-position:center; filter:saturate(.78); }
.treatment-detail-hero figure img.product-packshot { padding:clamp(34px,6vw,88px); object-fit:contain; background:#f4f0ec; filter:none; }
.treatment-detail-hero>div { display:flex; flex-direction:column; justify-content:center; align-items:flex-start; padding:clamp(70px,7vw,116px); }
.detail-price { width:100%; display:grid; margin:34px 0 26px; padding:20px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.detail-price span { color:var(--taupe); font-size:11px; text-transform:uppercase; letter-spacing:.12em; }
.detail-price strong { margin-top:7px; color:var(--brown); font-family:"Philosopher",Georgia,serif; font-size:30px; font-weight:400; }
.detail-price small { margin-top:5px; color:var(--taupe); font-size:10px; }
.treatment-detail-content { display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--line); }
.treatment-detail-content article { min-height:440px; padding:clamp(54px,6vw,88px) clamp(28px,7vw,104px); background:#fffdfb; }
.treatment-detail-content article:nth-child(2) { background:#f4eee9; }
.treatment-detail-content h2 { margin:12px 0 28px; color:var(--brown); font-size:clamp(32px,3.4vw,47px); }
.treatment-detail-content ul { display:grid; gap:15px; margin:0; padding:0; list-style:none; color:var(--taupe); }
.treatment-detail-content li { display:flex; gap:12px; align-items:flex-start; font-size:15px; line-height:1.5; }
.treatment-detail-content li span { color:var(--sand); }
.detail-area-list { display:flex; flex-wrap:wrap; gap:9px; }
.detail-area-list span { padding:10px 14px; border:1px solid var(--line); border-radius:999px; color:var(--brown); font-size:13px; background:#fffdfb; }
.consult-copy { max-width:540px; margin-top:30px; color:var(--taupe); font-size:14px; line-height:1.75; }
.treatment-disclaimer { display:flex; justify-content:space-between; gap:28px; align-items:center; padding:30px clamp(24px,7vw,104px); background:#3b291f; color:#d8c8bd; font-size:12px; }
.treatment-disclaimer p { max-width:700px; margin:0; line-height:1.6; }
.treatment-disclaimer a { color:white; border-bottom:1px solid rgba(255,255,255,.5); }

@media (max-width:920px) {
  .solution-card-grid { grid-template-columns:1fr 1fr; }
  .featured-solution { grid-column:span 2; }
  .concern-hero,.treatment-detail-hero { grid-template-columns:1fr; }
  .concern-hero figure,.treatment-detail-hero figure { min-height:540px; }
  .concern-article { grid-template-columns:1fr 1fr; }
  .condition-intro { grid-column:1/-1; }
  .recommendation-grid { grid-template-columns:1fr 1fr; }
}

@media (max-width:620px) {
  .solution-card-grid,.category-teaser-grid { grid-template-columns:1fr; padding-left:0; padding-right:0; gap:1px; }
  .featured-solution,.wide-category { grid-column:auto; }
  .solution-card,.category-teaser,.category-teaser:nth-child(4n+2),.category-teaser:nth-child(4n+3) { min-height:390px; }
  .solution-card>div,.category-teaser>div { left:22px; right:22px; bottom:24px; }
  .concern-hero-copy,.treatment-detail-hero>div { padding:68px 24px; }
  .concern-hero figure,.treatment-detail-hero figure { min-height:430px; }
  .concern-article,.treatment-detail-content,.recommendation-grid { grid-template-columns:1fr; }
  .condition-intro { grid-column:auto; }
  .concern-article article { min-height:auto; }
  .recommendation-grid>a>div { min-height:300px; }
  .medical-note,.treatment-disclaimer { align-items:flex-start; flex-direction:column; }
}

.doctor-profile-hero { min-height:720px; display:grid; grid-template-columns:.82fr 1.18fr; background:#efe9e4; }
.doctor-profile-photo { min-height:720px; overflow:hidden; background:#d8d0ca; }
.doctor-profile-photo img { width:100%; height:100%; object-fit:cover; object-position:center 16%; filter:saturate(.86); }
.doctor-profile-hero>div:last-child { display:flex; flex-direction:column; justify-content:center; align-items:flex-start; padding:80px clamp(28px,8vw,130px); }
.doctor-profile-hero h1 { max-width:760px; color:var(--brown); font-size:clamp(48px,6.5vw,86px); }
.doctor-role { margin:18px 0 0; color:var(--brown); font-size:13px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; }
.doctor-profile-note { max-width:610px; margin:35px 0 24px; color:var(--taupe); font-size:15px; line-height:1.8; }
.doctor-training { display:grid; grid-template-columns:.75fr 1.25fr; gap:clamp(50px,9vw,140px); padding:clamp(70px,8vw,120px) clamp(24px,8vw,128px); background:var(--paper); }
.doctor-training>div { position:sticky; top:115px; align-self:start; }
.doctor-training h2 { margin:0; color:var(--brown); font-size:clamp(38px,4.5vw,62px); line-height:1.05; }
.doctor-training>div>p:last-child { max-width:460px; margin-top:22px; color:var(--taupe); font-size:13px; line-height:1.7; }
.doctor-training ol { margin:0; padding:0; list-style:none; border-top:1px solid var(--line); }
.doctor-training li { display:grid; grid-template-columns:42px 1fr; gap:16px; padding:21px 4px; border-bottom:1px solid var(--line); }
.doctor-training li span { padding-top:3px; color:var(--sand); font-size:10px; }
.doctor-training li p { margin:0; color:var(--brown); font-size:14px; line-height:1.6; }
@media (max-width:780px) { .doctor-profile-hero { grid-template-columns:1fr; }.doctor-profile-photo { min-height:520px; height:62vh; }.doctor-profile-hero>div:last-child { padding:58px 24px 72px; } }
@media (max-width:780px) { .doctor-training { grid-template-columns:1fr; gap:35px; }.doctor-training>div { position:static; } }

/* Article-led solutions and simplified treatment discovery */
.article-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; padding:1px; background:#d7ccc3; }
.article-teaser-card { position:relative; min-height:520px; overflow:hidden; background:#3d2b20; color:white; }
.article-teaser-card>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; filter:saturate(.72) brightness(.74); transition:transform .5s ease,filter .5s ease; }
.article-teaser-card:hover>img { transform:scale(1.025); filter:saturate(.85) brightness(.62); }
.article-teaser-card>div { position:absolute; z-index:2; left:clamp(24px,4vw,54px); right:clamp(24px,4vw,54px); bottom:clamp(28px,4vw,52px); }
.article-teaser-card>div>span { color:#e0cfc2; font-size:10px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.article-teaser-card h2 { max-width:760px; margin:12px 0; color:white; font-size:clamp(31px,3.6vw,52px); line-height:1.06; }
.article-teaser-card p { display:-webkit-box; max-width:650px; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:3; margin:0 0 22px; color:#eadfd7; font-size:13px; line-height:1.65; }
.article-teaser-card b { padding-bottom:5px; border-bottom:1px solid rgba(255,255,255,.72); font-size:11px; }

.treatment-only-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; padding:1px; background:#d8cec6; }
.treatment-only-grid .treatment-category-card { min-height:560px; }
.treatment-only-grid .category-teaser:nth-child(n) { min-height:560px; }
.treatment-category-card>img { filter:saturate(.82) brightness(.83); }
.treatment-category-card .category-shade { background:linear-gradient(0deg,rgba(37,23,16,.88) 0%,rgba(37,23,16,.06) 58%,transparent); }
.treatment-category-card h2 { max-width:410px; margin:0 0 14px; font-size:clamp(34px,3.7vw,52px); }
.treatment-category-card b { display:inline-block; padding-bottom:5px; border-bottom:1px solid rgba(255,255,255,.72); }

.treatment-category-hero { min-height:720px; display:grid; grid-template-columns:1.05fr .95fr; background:#eee6df; }
.treatment-category-hero figure { min-height:720px; margin:0; overflow:hidden; background:#d7cbc2; }
.treatment-category-hero figure img { width:100%; height:100%; object-fit:cover; object-position:center; filter:saturate(.82); }
.treatment-category-hero>div { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:clamp(70px,8vw,130px); }
.treatment-category-hero h1 { margin:0; color:var(--brown); font-size:clamp(52px,7vw,92px); line-height:1; }
.treatment-category-hero>div>p:not(.breadcrumb):not(.eyebrow) { max-width:620px; margin:26px 0 34px; color:var(--taupe); font-size:16px; line-height:1.78; }
.category-treatment-section { padding:clamp(75px,8vw,120px) clamp(24px,7vw,104px); background:#faf7f4; }
.category-treatment-heading { display:grid; grid-template-columns:1.15fr .7fr; gap:70px; align-items:end; margin-bottom:46px; }
.category-treatment-heading h2 { max-width:750px; margin:10px 0 0; color:var(--brown); font-size:clamp(39px,4.8vw,65px); line-height:1.05; }
.category-treatment-heading>p { margin:0; color:var(--taupe); font-size:14px; line-height:1.75; }
.category-treatment-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.category-treatment-grid>a { display:flex; flex-direction:column; overflow:hidden; background:#fff; border:1px solid rgba(68,45,31,.09); box-shadow:0 16px 42px rgba(57,37,27,.06); transition:transform .25s ease,box-shadow .25s ease; }
.category-treatment-grid>a:hover { transform:translateY(-4px); box-shadow:0 23px 54px rgba(57,37,27,.12); }
.category-treatment-grid img { width:100%; height:260px; object-fit:cover; filter:saturate(.78); }
.category-treatment-grid img.product-packshot { padding:18px; object-fit:contain; background:#f4f0ec; filter:none; }
.category-treatment-grid>a>div { display:flex; flex:1; flex-direction:column; padding:27px; }
.category-treatment-grid span { color:var(--sand); font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.category-treatment-grid h3 { margin:9px 0 12px; color:var(--brown); font-size:29px; }
.category-treatment-grid p { margin:0 0 24px; color:var(--taupe); font-size:13px; line-height:1.68; }
.category-treatment-grid b { margin-top:auto; color:var(--brown); font-size:11px; }

.editorial-article { background:#fbf8f5; }
.article-hero { min-height:760px; display:grid; grid-template-columns:1.08fr .92fr; background:#eee6df; }
.article-hero>div { display:flex; flex-direction:column; justify-content:center; padding:clamp(78px,8vw,130px); }
.article-hero h1 { max-width:850px; margin:0; color:var(--brown); font-size:clamp(48px,6.2vw,86px); line-height:1.01; }
.article-status { width:max-content; max-width:100%; margin:28px 0 0; padding:10px 14px; background:#e1d4ca; color:#634b3d; font-size:10px; font-weight:600; letter-spacing:.04em; }
.article-hero figure { min-height:760px; margin:0; overflow:hidden; background:#d2c6bd; }
.article-hero figure img { width:100%; height:100%; object-fit:cover; object-position:center; filter:saturate(.78); }
.article-answer { padding:clamp(58px,7vw,96px) clamp(24px,14vw,220px); background:#3b291f; color:white; }
.article-answer .eyebrow { color:#d6c2b3; }
.article-answer>p:last-child { max-width:1040px; margin:18px 0 0; font-family:"Philosopher",Georgia,serif; font-size:clamp(27px,3.2vw,43px); line-height:1.35; }
.article-layout { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:clamp(50px,8vw,125px); width:min(1280px,calc(100% - 48px)); margin:0 auto; padding:clamp(76px,9vw,130px) 0; }
.article-body { max-width:780px; }
.article-body>section { margin-bottom:64px; }
.article-body h2 { margin:0 0 22px; color:var(--brown); font-size:clamp(32px,3.6vw,47px); line-height:1.14; }
.article-body p { margin:0 0 18px; color:#665246; font-size:16px; line-height:1.87; }
.article-faq { padding-top:10px; border-top:1px solid var(--line); }
.article-faq details { border-bottom:1px solid var(--line); }
.article-faq summary { padding:22px 0; color:var(--brown); font-weight:600; line-height:1.45; cursor:pointer; }
.article-faq details p { padding:0 0 20px; }
.article-sources ul { display:grid; gap:14px; padding:0; list-style:none; }
.article-sources a { color:var(--brown); font-size:13px; line-height:1.55; border-bottom:1px solid var(--line); }
.article-aside { position:sticky; top:120px; align-self:start; padding:35px; background:#ede4dd; }
.article-aside h2 { margin:10px 0 17px; color:var(--brown); font-size:35px; line-height:1.08; }
.article-aside>p:not(.eyebrow) { color:var(--taupe); font-size:13px; line-height:1.72; }
.article-aside .button { margin:10px 0 22px; }
.article-aside small { display:block; padding-top:18px; border-top:1px solid rgba(78,55,40,.16); color:#806d60; font-size:10px; line-height:1.65; }

@media (max-width:980px) {
  .treatment-only-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .treatment-category-hero,.article-hero { grid-template-columns:1fr; }
  .treatment-category-hero figure,.article-hero figure { min-height:560px; }
  .category-treatment-heading { grid-template-columns:1fr; gap:20px; }
  .category-treatment-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .article-layout { grid-template-columns:minmax(0,1fr); }
  .article-aside { position:static; }
}

@media (max-width:650px) {
  .article-card-grid,.treatment-only-grid,.category-treatment-grid { grid-template-columns:1fr; }
  .article-teaser-card { min-height:480px; }
  .article-teaser-card h2 { font-size:34px; }
  .treatment-only-grid .treatment-category-card,.treatment-only-grid .category-teaser:nth-child(n) { min-height:520px; }
  .treatment-category-hero figure,.article-hero figure { min-height:500px; }
  .treatment-category-hero>div,.article-hero>div { padding:62px 24px 70px; }
  .article-status { width:auto; }
  .article-answer { padding:48px 24px; }
  .article-layout { width:calc(100% - 48px); }
  .article-body>section { margin-bottom:52px; }
}

/* WordPress integration */
.admin-bar .site-header { top:32px; }
.review-avatar { width:40px; height:40px; flex:0 0 40px; display:grid!important; place-items:center; border-radius:50%; background:#d9cbbf; color:var(--brown); font-family:"Philosopher",Georgia,serif; font-size:18px; font-weight:700; }
.solution-longform { display:block; max-width:980px; margin:0 auto; }
.solution-longform .condition-intro { width:100%; }
.solution-longform .entry-content { max-width:820px; }
.solution-longform .entry-content h2 { margin:50px 0 16px; color:var(--brown); font-size:clamp(30px,3.5vw,46px); line-height:1.15; }
.solution-longform .entry-content h3 { margin:30px 0 10px; color:var(--brown); font-size:25px; }
.solution-longform .entry-content p,.entry-content p { color:var(--taupe); font-size:16px; line-height:1.82; }
.entry-content h2 { color:var(--brown); font-size:clamp(32px,4vw,50px); }
.entry-content a { color:var(--brown); text-decoration:underline; }
@media (max-width:782px) { .admin-bar .site-header { top:46px; } }

.review-avatar-img{width:36px;height:36px;border-radius:50%;object-fit:cover;flex:0 0 auto}
.review-meta{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.review-rating{margin:0;color:var(--taupe);font-size:13px}
.review-rating strong{color:var(--brown);font-family:"Philosopher",Georgia,serif;font-size:22px;font-weight:400}
.review-card-grid blockquote footer strong a{border-bottom:1px solid var(--line)}

.skinvest-lang{display:flex;align-items:center;flex:0 0 auto}
.skinvest-lang select{border:1px solid var(--line);border-radius:999px;padding:7px 12px;background:transparent;
  font:inherit;font-size:13px;color:var(--brown);cursor:pointer}
.skinvest-lang .gt_container-,.skinvest-lang .gtranslate_wrapper{display:flex;align-items:center}
@media (max-width:920px){.skinvest-lang{display:none}}

/* --- Keterbacaan blok gelap di halaman solusi ---------------------------
   .entry-content mewarnai judul dan paragraf dengan var(--brown)/var(--taupe).
   Saat blok itu berada di dalam .condition-intro yang berlatar #3b291f,
   hasilnya cokelat di atas cokelat dan nyaris tak terbaca. Aturan di bawah
   mengembalikan kontras khusus di dalam blok gelap saja. */
.condition-intro .entry-content h2,
.condition-intro .entry-content h3,
.condition-intro h2,
.condition-intro h3 { color:#fdf9f6; }

.condition-intro .entry-content p,
.condition-intro p,
.condition-intro li { color:#e3d6ca; }

.condition-intro .entry-content a { color:#f0e0d2; text-decoration:underline; }
.condition-intro li::before { color:#c7a98c; }
.condition-intro strong { color:#fdf9f6; }


/* --- Jarak elemen header ------------------------------------------------
   .site-header memakai space-between untuk membagi ruang antara logo, menu,
   dan tombol. Menambah elemen keempat (tombol bahasa) membuat pembagian itu
   tidak lagi cukup, sehingga logo menempel ke menu. Gap eksplisit menjamin
   jarak minimum berapa pun jumlah elemennya. */
.site-header { gap:clamp(20px,3.5vw,56px); }
.site-header > .brand-logo { flex:0 0 auto; margin-right:clamp(8px,2vw,24px); }
.site-header > .nav-cta { flex:0 0 auto; }
.desktop-nav { gap:clamp(18px,2.4vw,36px); }

@media (max-width:1180px){
  .site-header { gap:clamp(14px,2vw,28px); }
  .desktop-nav { gap:clamp(12px,1.6vw,22px); }
  .logo-wordmark { width:96px; }
}
@media (max-width:1040px){
  .skinvest-lang { display:none; }   /* dahulukan menu utama saat ruang menyempit */
}

/* Kursor tautan pada menu utama yang bisa diklik ke halaman arsip. */
.nav-menu > summary[data-href] { cursor:pointer; }

/* --- Proses konsultasi empat langkah ---------------------------------- */
.steps-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);
  gap:1px;background:var(--line);border:1px solid var(--line);border-radius:16px;overflow:hidden}
.steps-grid li{background:var(--paper);padding:30px 26px 34px;position:relative}
.steps-grid li > span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;
  border:1px solid var(--line);font-family:"Philosopher",Georgia,serif;font-size:15px;
  color:var(--brown);margin-bottom:20px}
.steps-grid h3{margin:0 0 11px;font-size:19px}
.steps-grid p{font-size:14.5px;color:var(--taupe);margin:0}
.steps-cta{display:inline-block;margin-top:28px;background:var(--brown);color:#fff}
.steps-cta:hover{background:#3b291f}
@media (max-width:980px){.steps-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:620px){.steps-grid{grid-template-columns:1fr}.steps-cta{width:100%;text-align:center}}

/* --- Halaman Our Product: status segera hadir ------------------------- */
.product-soon{display:flex;justify-content:center}
.product-soon-card{max-width:620px;text-align:center;background:var(--paper);
  border:1px solid var(--line);border-radius:18px;padding:clamp(32px,5vw,56px)}
.product-soon-tag{display:inline-block;font-size:12px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--sand);border:1px solid var(--line);
  border-radius:999px;padding:6px 14px;margin-bottom:22px}
.product-soon-card h2{margin:0 0 18px}
.product-soon-card p{color:var(--taupe);margin:0 0 14px}
.product-soon-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:30px}
.product-soon-actions .button{background:var(--brown);color:#fff}
.product-soon-actions .button:hover{background:#3b291f}
.product-soon-secondary{background:transparent!important;color:var(--brown)!important;
  border:1px solid var(--line)}
.product-soon-secondary:hover{background:var(--cream)!important}
@media (max-width:520px){.product-soon-actions .button{width:100%;text-align:center}}
