/* PlantedMD — site styles
   Brand colors and fonts are set once in :root below. Change them there, not in individual rules. */
/* Layout: flat charcoal / off-white blocks, flower used large and cropped at the edge, brass hairlines, generous space */
:root{
  --charcoal:#1F1B1B;
  --offwhite:#F5EFE6;
  --paper:#FBF8F3;
  --orange:#D9643C;
  --oxblood:#8A3B2F;
  --brass:#B08D3E;
  --ink-soft:#4A4240;
  --line:#DCD2C2;
  --display:Georgia,"Times New Roman",serif;
  --body:"Carlito",Calibri,"Segoe UI",system-ui,sans-serif;
  color-scheme:light;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{margin:0;background:var(--offwhite);color:var(--charcoal);font-family:var(--body);font-size:18px;line-height:1.6}
a{color:inherit}
:focus-visible{outline:2px solid var(--orange);outline-offset:3px}
.wrap{max-width:1120px;margin:0 auto;padding-inline:24px}
@media (max-width:480px){.wrap{padding-inline:18px}}
.eyebrow{font-family:var(--body);font-size:13px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--oxblood);margin:0}
.dark .eyebrow{color:var(--brass)}
h1,h2,h3{font-family:var(--display);font-weight:400;text-wrap:balance;margin:0;line-height:1.08}
h1{font-size:clamp(38px,6vw,72px);letter-spacing:-.01em}
h2{font-size:clamp(34px,5vw,56px)}
h3{font-size:26px}
p{margin:0}
.rule{height:1px;background:var(--brass);border:0;margin:0;width:64px}
.dark{background:var(--charcoal);color:var(--offwhite)}
.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--body);font-weight:700;font-size:15px;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;padding:15px 24px;border:1.5px solid currentColor;background:none;color:inherit;cursor:pointer}
.btn.solid{background:var(--orange);border-color:var(--orange);color:var(--charcoal)}
.btn:hover{transform:translateY(-1px)}
.btn.solid:hover{background:#E4744D;border-color:#E4744D}

/* Age gate */
.gate{position:fixed;inset:0;z-index:50;background:var(--charcoal);color:var(--offwhite);display:flex;align-items:center;justify-content:center;padding:calc(24px + env(safe-area-inset-top,0px)) 20px calc(24px + env(safe-area-inset-bottom,0px));overflow:auto}
.gate-inner{width:100%;max-width:440px;display:grid;gap:22px;text-align:center;justify-items:center}
.gate img{width:min(280px,70vw);height:auto}
.gate h2{font-size:30px}
.gate p{color:#CFC6B8;font-size:16px}
.dob{display:flex;gap:10px;justify-content:center;width:100%}
.dob label{display:grid;gap:6px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--brass);font-weight:700;text-align:left}
.dob input{width:100%;font:inherit;font-size:22px;font-family:var(--display);text-align:center;padding:12px 6px;background:transparent;color:var(--offwhite);border:1px solid #6B6260;border-radius:0;font-variant-numeric:tabular-nums}
.dob input:focus{border-color:var(--orange);outline:none}
.dob .mm,.dob .dd{flex:1 1 0}.dob .yy{flex:1.6 1 0}
.gate .btn{width:100%;justify-content:center}
.gate-error{color:#F08A66!important;min-height:1.4em;font-size:15px!important}
.gate-fine{font-size:13px!important;color:#9A9088!important}

/* Header */
header.site{position:sticky;top:env(safe-area-inset-top,0px);z-index:10;background:var(--offwhite);border-bottom:1px solid var(--line)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:14px}
.bar img{height:58px;width:auto;display:block}
nav{display:flex;gap:28px;font-size:14px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
nav a{text-decoration:none}
nav a:hover{color:var(--oxblood)}
@media (max-width:760px){nav{display:none}.bar img{height:48px}}

/* Hero */
.hero{position:relative;overflow:hidden}
.hero .wrap{position:relative;z-index:1;padding-block:110px 120px;display:grid;gap:30px;max-width:1120px}
.hero-copy{max-width:820px;display:grid;gap:28px}
.hero h1 span{color:var(--orange)}
.hero .lede{max-width:34em;font-size:21px;color:#DCD3C6;max-width:34em}
.hero .ctas{display:flex;flex-wrap:wrap;gap:14px}
.hero-flower{position:absolute;right:-180px;top:50%;transform:translateY(-50%);width:640px;max-width:none;opacity:.95;pointer-events:none}
@media (max-width:1240px) and (min-width:901px){.hero-flower{opacity:.35}}
@media (max-width:900px){.hero-flower{width:400px;right:-210px;top:auto;bottom:-230px;transform:none;opacity:.5}.hero .wrap{padding-block:72px 120px}}
.hero-meta{display:flex;flex-wrap:wrap;gap:10px 28px;font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:var(--brass);font-weight:700}

/* Name */
.name{padding-block:110px}
.name-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;margin-top:56px}
@media (max-width:760px){.name-grid{grid-template-columns:1fr;gap:44px}}
.word{display:grid;gap:14px;align-content:start;border-top:1px solid var(--brass);padding-top:26px}
.word .big{font-family:var(--display);font-size:clamp(56px,8vw,96px);line-height:1}
.word .big.md{color:var(--orange)}
.word p{color:var(--ink-soft);max-width:30em}
.name-head{display:grid;gap:20px;max-width:720px}

/* Flower story */
.flower-band{background:var(--paper);border-block:1px solid var(--line)}
.flower-band .wrap{display:grid;grid-template-columns:300px 1fr;gap:64px;align-items:center;padding-block:90px}
.flower-band img{width:100%;height:auto}
.flower-band .copy{display:grid;gap:18px;max-width:560px}
.flower-band .copy p{color:var(--ink-soft)}
@media (max-width:760px){.flower-band .wrap{grid-template-columns:1fr;gap:36px}.flower-band img{width:200px}}

/* Promise */
.promise{padding-block:110px}
.promise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:52px}
@media (max-width:760px){.promise-grid{grid-template-columns:1fr;gap:32px}}
.promise-item{display:grid;gap:12px;align-content:start}
.promise-item h3{font-size:32px}
.promise-item h3::after{content:"";display:block;width:40px;height:1px;background:var(--brass);margin-top:16px}
.promise-item p{color:var(--ink-soft)}

/* Careers */
.careers .wrap{padding-block:110px;display:grid;gap:52px}
.careers-head{display:grid;gap:20px;max-width:720px}
.careers-head p{color:#D6CDBF;font-size:19px}
.roles{display:grid;border-top:1px solid #4A4240}
.role{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.6fr) minmax(0,1fr);gap:28px;padding-block:28px;border-bottom:1px solid #4A4240;align-items:start}
@media (max-width:820px){.role{grid-template-columns:1fr;gap:10px}}
.role h3{font-size:28px}
.role .type{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--brass);font-weight:700;margin-top:8px}
.role p{color:#D6CDBF;font-size:17px}
.role .exp{font-size:15px;color:#B9AFA3}
.role .exp strong{display:block;color:var(--offwhite);font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:4px}
.tbd{display:inline-block;margin-top:10px;font-size:13px;font-weight:700;letter-spacing:.06em;color:var(--charcoal);background:#E8C77E;padding:3px 8px}
.apply{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
@media (max-width:820px){.apply{grid-template-columns:1fr;gap:36px}}
.apply h3{font-size:30px;margin-bottom:14px}
.apply ul{margin:0;padding-left:20px;color:#D6CDBF;display:grid;gap:8px}
.email-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:6px}
.email{font-family:var(--display);font-size:clamp(24px,3.4vw,34px);color:var(--orange);user-select:all;word-break:break-all}
.apply-steps{color:#D6CDBF;margin-top:16px;font-size:16px}
.copy-btn{font-size:13px;padding:10px 16px}

/* Visit */
.visit{padding-block:110px}
.visit-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:64px;margin-top:48px}
@media (max-width:820px){.visit-grid{grid-template-columns:1fr;gap:40px}}
.facts{display:grid;gap:0;border-top:1px solid var(--line)}
.fact{display:grid;grid-template-columns:140px 1fr;gap:20px;padding-block:20px;border-bottom:1px solid var(--line)}
@media (max-width:480px){.fact{grid-template-columns:1fr;gap:4px}}
.fact dt{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--oxblood);padding-top:4px}
.fact dd{margin:0;font-size:19px}
.fact dd .addr{font-family:var(--display);font-size:24px;line-height:1.3}
.near p{color:var(--ink-soft)}
.near{display:grid;gap:16px;align-content:start}
.areas{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.areas span{font-size:14px;border:1px solid var(--line);background:var(--paper);padding:6px 12px}

/* Signup */
.signup{background:var(--orange);color:var(--charcoal)}
.signup .wrap{padding-block:90px;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:end}
@media (max-width:820px){.signup .wrap{grid-template-columns:1fr;gap:28px}}
.signup .eyebrow{color:var(--charcoal)}
.signup h2{margin-top:14px}
.signup form{display:grid;gap:12px}
.signup .row{display:flex;gap:0;flex-wrap:wrap}
.signup input{flex:1 1 220px;min-width:0;font:inherit;font-size:18px;padding:16px 18px;border:1.5px solid var(--charcoal);background:var(--offwhite);color:var(--charcoal);border-radius:0}
.signup .btn{background:var(--charcoal);color:var(--offwhite);border-color:var(--charcoal)}
.signup small{font-size:14px;color:#3A2A24}
.signup .msg{font-weight:700;min-height:1.4em}

/* Footer */
footer{padding-block:72px 48px}
.foot{display:grid;grid-template-columns:auto 1fr;gap:56px;align-items:start}
@media (max-width:760px){.foot{grid-template-columns:1fr;gap:36px}}
.foot img{width:220px;height:auto}
.foot-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
@media (max-width:560px){.foot-cols{grid-template-columns:1fr}}
.foot h4{margin:0 0 10px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--brass)}
.foot p{font-size:15px;color:#CFC6B8}
.legal{margin-top:56px;padding-top:24px;border-top:1px solid #4A4240;display:grid;gap:10px;font-size:13px;color:#9A9088}
.legal strong{color:var(--offwhite);font-weight:700;letter-spacing:.08em}
.signup .fallback{font-size:19px}
.signup .fallback a{font-weight:700}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
a.mail{text-decoration:none}
a.mail:hover{text-decoration:underline}
body.gated{overflow:hidden}


/* Privacy / legal page */
.legal-page .wrap{max-width:760px;padding-block:72px 96px;display:grid;gap:16px}
.legal-page h1{font-size:clamp(36px,5vw,52px);margin-top:8px}
.legal-page h2{font-size:24px;margin-top:22px}
.legal-page p,.legal-page li{color:var(--ink-soft);font-size:17px}
.legal-page ul{margin:0;padding-left:20px;display:grid;gap:10px}
.legal-page .updated{font-size:14px;color:var(--oxblood)}
.legal-page a{color:var(--oxblood)}
.legal a{color:inherit}
