/*
Theme Name: Care Smith Corp
Theme URI: https://caresmithcorp.com
Author: ApeShot Productions
Description: Hand-built launch site for Care Smith Corp (Spring Hill, FL). Front page ported from the ApeShot sample concept.
Version: 0.1.0
Text Domain: caresmith
*/

  :root{
    color-scheme:light;
    --forest:#1b3a32; --forest-deep:#132a24;
    --accent:#8a6b31;            /* bronze: text-safe accent on linen (eyebrows, labels) */
    --accent-display:#a88a4a;    /* warmer sand for large display accents */
    --accent-fill:#c4a46b; --accent-fill-hover:#b08f55; --on-accent:#132a24;
    --sand:#c4a46b; --sand-soft:#ebdfc6; --sage:#8d9c86; --sage-soft:#e3e8df;
    --linen:#f7f3ec; --paper:#fffdf9; --ink:#22302b; --ink-soft:#5b6a63; --rule:#e4dccc;
    --bg:var(--linen); --surface:var(--paper); --surface-alt:#f1ebe0;
    --text:var(--ink); --text-soft:var(--ink-soft); --heading:var(--forest);
    --ghost-border:var(--forest); --icon:var(--forest); --chip-text:var(--forest); --focus-ring:rgba(196,164,107,.35);
    --nav-bg:rgba(247,243,236,.92);
    --band-bg:var(--forest); --band-text:#f3eee4; --band-soft:#b9c7bf; --band-accent:#c4a46b;
    --shadow:0 24px 60px -30px rgba(27,58,50,.35);
  }

  *,*::before,*::after{box-sizing:border-box}
  html{scroll-behavior:smooth}
  @media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}
  body{
    margin:0;background:var(--bg);color:var(--text);
    font-family:'Source Sans 3',system-ui,-apple-system,'Segoe UI',sans-serif;
    font-size:17px;line-height:1.6;
    -webkit-font-smoothing:antialiased;
  }
  img{max-width:100%;display:block}
  a{color:inherit}
  h1,h2,h3,h4{font-family:'Cormorant Garamond',Georgia,'Times New Roman',serif;color:var(--heading);font-weight:500;line-height:1.1;margin:0;text-wrap:balance}
  p{margin:0}
  :focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:2px}

  .wrap{width:min(1180px,calc(100% - 48px));margin:0 auto}
  .eyebrow{
    font-family:'Source Sans 3',sans-serif;font-weight:600;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);
    display:flex;align-items:center;gap:12px;
  }
  .eyebrow::before{content:"";width:28px;height:1px;background:var(--sand)}
  .lede{font-size:1.2rem;line-height:1.55;color:var(--text-soft);max-width:34em}
  .measure{max-width:36em}

  /* nav */
  .nav{
    position:sticky;top:0;z-index:20;background:var(--nav-bg);backdrop-filter:blur(10px);
    border-bottom:1px solid var(--rule);
  }
  .nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;height:88px}
  .brand{display:flex;align-items:center;gap:14px;text-decoration:none}
  .brand img{height:66px;width:auto}
  .brand span{font-family:'Cormorant Garamond',serif;font-size:1.35rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--heading)}
  .nav ul{list-style:none;display:flex;gap:30px;margin:0;padding:0}
  .nav ul a{text-decoration:none;font-weight:500;font-size:.95rem;color:var(--text);position:relative;padding:6px 0}
  .nav ul a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .25s}
  .nav ul a:hover::after{transform:scaleX(1)}
  .btn{
    display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-weight:600;font-size:.95rem;
    padding:13px 24px;border-radius:999px;border:1.5px solid transparent;transition:background .2s,color .2s,border-color .2s,transform .2s;
    cursor:pointer;font-family:inherit;line-height:1;
  }
  .btn-primary{background:var(--accent-fill);color:var(--on-accent)}
  .btn-primary:hover{background:var(--accent-fill-hover)}
  .btn-ghost{border-color:var(--ghost-border);color:var(--heading);background:transparent}
  .btn-ghost:hover{background:var(--sage-soft)}
  .btn-light{background:var(--accent-fill);color:var(--on-accent)}
  .btn-light:hover{background:var(--accent-fill-hover)}
  .nav-cta{padding:11px 20px}
  .menu-toggle{display:none;background:none;border:0;font:inherit;color:var(--text);cursor:pointer;padding:8px}

  /* arch frames — the logo motif */
  .arch{
    position:relative;overflow:hidden;
    border-radius:50% 50% 18px 18px / 46% 46% 18px 18px;
    background:var(--sage-soft);
  }
  .arch img{width:100%;height:100%;object-fit:cover}
  .arch-tag{
    position:absolute;left:18px;bottom:18px;background:rgba(255,253,249,.94);color:var(--forest);
    font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;font-weight:600;padding:8px 14px;border-radius:999px;
  }

  /* hero */
  .hero{padding:72px 0 80px;position:relative;overflow:hidden}
  .hero .wrap{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:64px;align-items:center}
  .hero h1{font-size:clamp(2.6rem,5.2vw,4.4rem);font-weight:500;letter-spacing:-.01em}
  .hero h1 em{font-style:italic;font-weight:400;color:var(--accent-display)}
  .hero-copy{display:grid;gap:26px}
  .hero-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
  .hero-note{font-size:.9rem;color:var(--text-soft)}
  .hero-note a{color:var(--heading);font-weight:600}
  .hero-art{position:relative}
  .hero-art .arch{aspect-ratio:4/5;box-shadow:var(--shadow)}
  .hero-art .arch-tag{left:auto;right:18px}
  .hero-art::before{
    content:"";position:absolute;inset:-22px -22px auto auto;width:62%;height:62%;
    border:1.5px solid var(--sand);border-radius:50% 50% 0 0 / 46% 46% 0 0;z-index:-1;opacity:.7;
  }
  .hero-badge{
    position:absolute;left:-28px;bottom:48px;background:var(--surface);border:1px solid var(--rule);
    border-radius:16px;padding:16px 20px;box-shadow:var(--shadow);display:grid;gap:4px;max-width:250px;
  }
  .hero-badge strong{font-family:'Cormorant Garamond',serif;font-size:1.45rem;color:var(--heading);font-weight:600;line-height:1.1}
  .hero-badge span{font-size:.85rem;color:var(--text-soft);line-height:1.4}

  /* trust strip */
  .trust{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);background:var(--surface)}
  .trust .wrap{display:grid;grid-template-columns:repeat(4,1fr)}
  .trust div{padding:26px 24px;display:grid;gap:4px;border-left:1px solid var(--rule)}
  .trust div:first-child{border-left:0;padding-left:0}
  .trust b{font-family:'Cormorant Garamond',serif;font-size:1.3rem;font-weight:600;color:var(--heading);line-height:1.15}
  .trust span{font-size:.9rem;color:var(--text-soft)}

  /* sections */
  .section{padding:104px 0}
  .section-head{display:grid;gap:18px;margin-bottom:56px}
  .section-head h2{font-size:clamp(2.1rem,3.8vw,3.1rem)}
  .split{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
  .split .arch{aspect-ratio:5/6}
  .stack{display:grid;gap:22px}
  .stack .btn{justify-self:start}
  .stack h2{font-size:clamp(2.1rem,3.8vw,3rem)}
  .stack p{color:var(--text-soft)}
  .stack p strong{color:var(--text);font-weight:600}
  .pull{
    font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.5rem;line-height:1.35;color:var(--heading);
    border-left:2px solid var(--sand);padding-left:22px;margin-top:6px;
  }
  .pull small{display:block;font-family:'Source Sans 3',sans-serif;font-style:normal;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-top:12px;font-weight:600}

  /* CareWELL */
  .carewell{background:var(--surface);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
  .acronym{
    display:flex;flex-wrap:wrap;gap:10px 0;justify-content:center;margin:0 auto 18px;
    font-family:'Cormorant Garamond',serif;font-weight:600;font-size:clamp(3rem,8.5vw,6.5rem);line-height:1;letter-spacing:.06em;color:var(--heading);
  }
  .acronym span{padding:0 .12em}
  .acronym .well{color:var(--accent-display)}
  .acronym-key{
    display:flex;flex-wrap:wrap;justify-content:center;gap:8px 22px;color:var(--text-soft);font-size:.95rem;text-align:center;margin-bottom:64px;
  }
  .acronym-key b{color:var(--heading);font-weight:600}
  .acronym-key i{color:var(--sand);font-style:normal}
  .pillars{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}
  .pillar{
    background:var(--bg);border:1px solid var(--rule);border-radius:20px;padding:28px 24px 30px;display:grid;gap:14px;align-content:start;
    transition:transform .25s,border-color .25s;
  }
  .pillar:hover{transform:translateY(-4px);border-color:var(--sand)}
  .pillar .ico{width:44px;height:44px;border-radius:50% 50% 8px 8px;background:var(--sage-soft);display:grid;place-items:center;color:var(--icon)}
  .pillar .ico svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
  .pillar h3{font-size:1.5rem;font-weight:600}
  .pillar p{font-size:.95rem;color:var(--text-soft);line-height:1.55}

  .wide-img{margin-top:56px;border-radius:24px;overflow:hidden;aspect-ratio:21/9;box-shadow:var(--shadow);background:var(--sage-soft)}
  .wide-img img{width:100%;height:100%;object-fit:cover}
  .wide-img + .pillars{margin-top:56px}

  /* holistic trio */
  .holistic{background:var(--surface);border-bottom:1px solid var(--rule)}
  .trio{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
  .trio figure{margin:0;display:grid;gap:16px}
  .trio .arch{aspect-ratio:4/5}
  .trio figcaption{display:grid;gap:6px}
  .trio figcaption b{font-family:'Cormorant Garamond',serif;font-size:1.5rem;font-weight:600;color:var(--heading)}
  .trio figcaption span{font-size:.95rem;color:var(--text-soft);line-height:1.55}

  /* founder */
  .founder .arch{aspect-ratio:3/4}
  .creds{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
  .creds span{font-size:.8rem;font-weight:600;letter-spacing:.06em;padding:6px 12px;border-radius:999px;background:var(--sand-soft);color:var(--chip-text)}
  .sig{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.35rem;color:var(--heading);margin-top:8px}
  .sig small{display:block;font-family:'Source Sans 3',sans-serif;font-style:normal;font-size:.85rem;color:var(--text-soft);margin-top:2px}

  /* home gallery */
  .home{background:var(--surface-alt)}
  .gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
  .gallery figure{margin:0;display:grid;gap:14px}
  .gallery .arch{aspect-ratio:4/5}
  .gallery figcaption{display:grid;gap:4px}
  .gallery figcaption b{font-family:'Cormorant Garamond',serif;font-size:1.35rem;font-weight:600;color:var(--heading)}
  .gallery figcaption span{font-size:.92rem;color:var(--text-soft)}

  /* placement steps — a real sequence, so numbered */
  .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--rule)}
  .step{padding:32px 26px 8px 0;display:grid;gap:12px;align-content:start;position:relative}
  .step + .step{padding-left:26px;border-left:1px solid var(--rule)}
  .step .n{font-family:'Cormorant Garamond',serif;font-size:2.4rem;color:var(--accent-display);line-height:1;font-weight:500}
  .step h3{font-size:1.45rem;font-weight:600}
  .step p{font-size:.95rem;color:var(--text-soft)}

  /* for families & partners band */
  .band{background:var(--band-bg);color:var(--band-text);padding:96px 0}
  .band h2{color:var(--band-text);font-size:clamp(2rem,3.6vw,2.9rem)}
  .band .eyebrow{color:var(--band-accent)}
  .band-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
  .band-list{display:grid;gap:18px;margin:0;padding:0;list-style:none}
  .band-list li{display:grid;grid-template-columns:22px 1fr;gap:16px;color:var(--band-soft);line-height:1.55}
  .band-list li strong{color:var(--band-text);display:block;font-weight:600}
  .band-list svg{width:22px;height:22px;stroke:var(--band-accent);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;margin-top:3px}
  .band p.lede{color:var(--band-soft)}

  /* inquiry */
  .inquiry .wrap{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:72px;align-items:start}
  .contact-list{display:grid;gap:20px;margin-top:10px}
  .contact-list a{text-decoration:none}
  .contact-item{display:grid;gap:2px}
  .contact-item span{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--accent)}
  .contact-item b{font-family:'Cormorant Garamond',serif;font-size:1.5rem;font-weight:600;color:var(--heading)}
  .contact-item small{color:var(--text-soft);font-size:.9rem}
  form{background:var(--surface);border:1px solid var(--rule);border-radius:24px;padding:36px;display:grid;gap:18px;box-shadow:var(--shadow)}
  .row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
  label{display:grid;gap:7px;font-size:.88rem;font-weight:600;color:var(--heading)}
  input,select,textarea{
    font:inherit;font-size:1rem;color:var(--text);background:var(--bg);border:1px solid var(--rule);border-radius:12px;padding:13px 14px;width:100%;
  }
  input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}
  textarea{min-height:120px;resize:vertical}
  .form-foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px}
  .form-foot small{color:var(--text-soft);font-size:.85rem;max-width:30em}
  .thanks{display:none;background:var(--surface);border:1px solid var(--sand);border-radius:24px;padding:40px;text-align:center}
  .thanks h3{font-size:2rem;margin-bottom:10px}
  .thanks p{color:var(--text-soft)}
  .form-error{margin-top:14px;color:#9b3b2e;font-size:.95rem}
  .form-error a{color:inherit;text-decoration:underline}
  #inquirySubmit[disabled]{opacity:.6;cursor:wait}

  /* footer */
  footer{border-top:1px solid var(--rule);padding:48px 0 32px;background:var(--surface)}
  .foot{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;align-items:start}
  .foot .brand img{height:64px}
  .foot p{color:var(--text-soft);font-size:.92rem;max-width:32em;margin-top:14px}
  .foot h4{font-size:1.1rem;font-weight:600;margin-bottom:12px;letter-spacing:.04em}
  .foot ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
  .foot ul a{text-decoration:none;color:var(--text-soft);font-size:.95rem}
  .foot ul a:hover{color:var(--accent)}
  .legal{margin-top:40px;padding-top:20px;border-top:1px solid var(--rule);display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:.82rem;color:var(--text-soft)}
  .legal a{color:inherit}

  /* reveal */
  .reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}
  .reveal.in{opacity:1;transform:none}
  @media (prefers-reduced-motion: reduce){.reveal{opacity:1;transform:none;transition:none}}

  /* responsive */
  @media (max-width: 1000px){
    .hero .wrap{grid-template-columns:1fr;gap:48px}
    .hero-art{max-width:520px}
    .hero-badge{left:12px}
    .trust .wrap{grid-template-columns:1fr 1fr}
    .trust div:nth-child(3){border-left:0;padding-left:0}
    .trust div{border-top:1px solid var(--rule)}
    .trust div:nth-child(-n+2){border-top:0}
    .split,.band-grid,.inquiry .wrap{grid-template-columns:1fr;gap:44px}
    .split .arch{max-width:520px}
    .pillars{grid-template-columns:repeat(2,1fr)}
    .pillar:last-child{grid-column:1/-1}
    .steps{grid-template-columns:1fr 1fr}
    .step + .step{padding-left:0;border-left:0}
    .step:nth-child(even){padding-left:26px;border-left:1px solid var(--rule)}
    .gallery,.trio{grid-template-columns:1fr}
    .gallery .arch,.trio .arch{aspect-ratio:4/3}
    .wide-img{aspect-ratio:16/9}
    .foot{grid-template-columns:1fr}
  }
  @media (max-width: 760px){
    body{font-size:16px}
    .wrap{width:min(1180px,calc(100% - 36px))}
    .nav ul{display:none}
    .nav .nav-cta{display:none}
    .menu-toggle{display:block}
    .nav.open ul{display:grid;position:absolute;top:88px;left:0;right:0;background:var(--nav-bg);padding:18px 24px 26px;border-bottom:1px solid var(--rule);gap:14px}
    .section{padding:72px 0}
    .hero{padding:48px 0 64px}
    .trust .wrap{grid-template-columns:1fr}
    .trust div{border-left:0;padding-left:0;border-top:1px solid var(--rule)}
    .trust div:first-child{border-top:0}
    .pillars{grid-template-columns:1fr}
    .steps{grid-template-columns:1fr}
    .step:nth-child(even){padding-left:0;border-left:0}
    .row{grid-template-columns:1fr}
    form{padding:26px}
    .hero-badge{position:static;margin-top:18px;max-width:none}
    .acronym{font-size:9vw;letter-spacing:.04em;flex-wrap:nowrap}
    .acronym span{padding:0 .08em}
  }

/* ===== Subpages (added 2026-09-08) ===== */
.page-hero{padding:64px 0 56px;position:relative;overflow:hidden;background:var(--surface-alt,var(--bg));border-bottom:1px solid var(--rule)}
.page-hero .wrap{display:grid;gap:48px;align-items:center}
.page-hero.has-img .wrap{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}
.page-hero h1{font-size:clamp(2.4rem,4.6vw,3.6rem);line-height:1.05;margin:14px 0 18px}
.page-hero .lede{max-width:34em}
.page-hero .hero-art .arch{aspect-ratio:4/3}
.page-hero .hero-art .arch img{width:100%;height:100%;object-fit:cover;display:block}
.page-body .section{padding:88px 0}
.page-body .section + .section{padding-top:0}
.page-body .section.home,.page-body .section.holistic,.page-body .section.carewell,.page-body .section.founder,.page-body .section.inquiry{padding-top:88px}
.page-body .section-head{margin-bottom:44px}
.page-body .pillars{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.page-body .split .arch img{width:100%;height:100%;object-fit:cover;display:block}
.faq{display:grid;gap:12px;max-width:820px}
.faq details{background:var(--surface);border:1px solid var(--rule);border-radius:16px;padding:0 22px}
.faq summary{cursor:pointer;list-style:none;padding:18px 0;font-family:'Cormorant Garamond',serif;font-size:1.3rem;font-weight:600;color:var(--heading);display:flex;justify-content:space-between;align-items:center;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:'Source Sans 3',sans-serif;font-size:1.4rem;color:var(--accent);transition:transform .25s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{margin:0 0 20px;color:var(--text-soft)}
.cta-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:8px}
@media (max-width:900px){
  .page-hero.has-img .wrap{grid-template-columns:1fr}
  .page-hero .hero-art{max-width:520px}
  .page-body .section{padding:64px 0}
}
