/* Delmarva Family Care — Elder Support at Home
   Resweep 2026-10-24: deep greens + warm gold on warm cream.
   Calm, professional, healthcare-grade. Photo bands with green scrims,
   soft sage section rhythm, one gold accent used sparingly. */

:root{
  --g950:#07231a;
  --g900:#0a3527;
  --g800:#0e4633;
  --g700:#14563f;
  --g600:#1d7050;
  --g500:#2e8b66;
  --sage:#dce9de;
  --sage-soft:#edf3ec;
  --mint:#f4f8f1;
  --cream:#faf6ee;
  --paper:#fffdf8;
  --gold:#b9852e;
  --gold-deep:#8a5f14;
  --gold-soft:#f5e9cd;
  --ink:#1e2b25;
  --muted:#54655c;
  --line:#cfddd2;
  --notice-bg:#fdf3d3;
  --notice-line:#c99b2f;
  --error-bg:#fdecec;
  --error-line:#c0392b;
  --error-ink:#7b1a12;
  --radius:14px;
  --radius-lg:24px;
  --shadow:0 2px 6px rgba(10,53,39,.08),0 14px 34px rgba(10,53,39,.10);
  --shadow-lift:0 4px 10px rgba(10,53,39,.10),0 22px 44px rgba(10,53,39,.16);
  --wrap:1120px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:18px;line-height:1.65}
h1,h2,h3,.wordmark,.btn,nav,select,input,textarea,button,.eyebrow,.footer-heading,.charm-name,.step-badge,.req-name{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
h1{font-size:2.25rem;line-height:1.15;margin:0 0 1rem;color:var(--g900)}
h2{font-size:1.6rem;line-height:1.25;margin:0 0 .85rem;color:var(--g900)}
h3{font-size:1.15rem;margin:0 0 .5rem;color:var(--g900)}
p{margin:0 0 1rem}
a{color:var(--g700);text-decoration:underline;text-underline-offset:3px}
a:hover{color:var(--g900)}
a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
img{max-width:100%;height:auto;display:block;border-radius:var(--radius)}
figure{margin:0}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
.narrow{max-width:780px}
.lead{font-size:1.2rem;line-height:1.55;color:#34463d}
.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;font-weight:700;color:var(--g600);margin-bottom:.75rem}
.mt{margin-top:2.5rem}
.note{font-size:.92rem;color:var(--muted)}
.skip-link{position:absolute;left:-9999px;top:0;background:var(--g900);color:#fff;padding:.75rem 1rem;z-index:20}
.skip-link:focus{left:0}

/* Header */
.site-header{background:var(--paper);border-bottom:1px solid var(--line);padding:1rem 0;position:relative;z-index:5}
.site-header::after{content:"";display:block;height:4px;background:linear-gradient(90deg,var(--g800),var(--g500) 55%,var(--gold));margin-bottom:-1rem;position:relative;top:1rem}
.header-inner{display:flex;flex-direction:column;gap:1rem}
.brand{text-decoration:none;color:var(--g900);display:flex;flex-direction:column}
.wordmark{font-size:1.3rem;font-weight:800;letter-spacing:.09em;line-height:1.15}
.tagline{font-size:.95rem;color:var(--muted);margin-top:.25rem}
.main-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem 1.1rem;align-items:center}
.main-nav a{text-decoration:none;font-size:.98rem;font-weight:600}
.main-nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--gold);text-decoration-thickness:2px}

/* Buttons */
.btn{display:inline-block;text-decoration:none;font-weight:700;font-size:1rem;line-height:1.3;padding:.8rem 1.35rem;border-radius:10px;border:2px solid var(--g700);cursor:pointer;transition:background .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease}
.btn-primary{background:var(--g700);color:#fff;box-shadow:0 4px 14px rgba(20,86,63,.25)}
.btn-primary:hover{background:var(--g800);color:#fff;transform:translateY(-1px)}
.btn-secondary{background:transparent;color:var(--g700)}
.btn-secondary:hover{background:var(--sage-soft);color:var(--g900)}
.btn-gold{background:var(--gold);border-color:var(--gold);color:#fff;box-shadow:0 4px 14px rgba(185,133,46,.35)}
.btn-gold:hover{background:var(--gold-deep);border-color:var(--gold-deep);color:#fff;transform:translateY(-1px)}
.btn-light{background:#fff;border-color:#fff;color:var(--g900)}
.btn-light:hover{background:var(--sage-soft);color:var(--g950)}
.btn-outline-light{background:transparent;border-color:rgba(255,255,255,.85);color:#fff}
.btn-outline-light:hover{background:rgba(255,255,255,.14);color:#fff}
.btn-nav{padding:.55rem 1rem}
.cta-row{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:1.5rem}

/* ---------- The Sign Up charm (homepage eye-catcher) ---------- */
.charm-band{background:linear-gradient(180deg,var(--sage-soft),var(--cream));padding:1.75rem 0 .5rem}
.charm{display:flex;flex-wrap:wrap;gap:1.1rem;align-items:center;background:linear-gradient(135deg,#ffffff 0%,var(--sage-soft) 58%,var(--sage) 100%);border:1.5px solid var(--gold);border-radius:var(--radius-lg);padding:1.35rem 1.5rem;text-decoration:none;color:var(--g900);box-shadow:var(--shadow);transition:transform .18s ease,box-shadow .18s ease}
.charm:hover{transform:translateY(-3px);box-shadow:var(--shadow-lift);color:var(--g900)}
.charm-medal{flex:0 0 auto;width:76px;height:76px;border-radius:22px;background:linear-gradient(150deg,var(--g600),var(--g900));display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 2px rgba(255,255,255,.35),0 6px 16px rgba(10,53,39,.3)}
.charm-medal svg{width:42px;height:42px}
.charm-text{flex:1 1 300px}
.charm-name{display:block;font-size:1.9rem;font-weight:800;letter-spacing:.06em;line-height:1.05;color:var(--g900)}
.charm-desc{display:block;font-size:1.05rem;color:#3c5045;margin-top:.3rem;max-width:640px}
.charm-go{flex:0 0 auto;display:inline-flex;align-items:center;gap:.5rem;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-weight:700;color:var(--gold-deep);font-size:1.02rem}
.charm-go .arrow{transition:transform .18s ease}
.charm:hover .charm-go .arrow{transform:translateX(4px)}

/* Track charms (Sign Up hub chooser) */
.track-grid{display:flex;flex-wrap:wrap;gap:1.25rem;margin:1.5rem 0}
.track{display:block;flex:1 1 320px;background:linear-gradient(150deg,#ffffff,var(--sage-soft));border:1.5px solid var(--line);border-radius:var(--radius-lg);padding:1.6rem;text-decoration:none;color:var(--ink);box-shadow:var(--shadow);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.track:hover{transform:translateY(-3px);box-shadow:var(--shadow-lift);border-color:var(--gold);color:var(--ink)}
.track h3{font-size:1.35rem;margin-bottom:.4rem}
.track p{color:#3c5045;margin-bottom:.75rem}
.track .track-go{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-weight:700;color:var(--gold-deep)}

/* Hero / sections */
.hero{position:relative;padding:3.25rem 0 3.75rem;color:#fff;overflow:hidden}
.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center 38%}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(7,35,26,.93) 0%,rgba(10,53,39,.85) 46%,rgba(10,53,39,.45) 78%,rgba(10,53,39,.30) 100%);z-index:1}
.hero .wrap{position:relative;z-index:2}
.hero h1{color:#fff;max-width:640px}
.hero .lead{color:#e8f1e6;max-width:600px}
.hero .eyebrow{color:var(--gold-soft)}
.hero-grid{display:flex;flex-wrap:wrap;gap:2rem}
.hero-grid>*{flex:1 1 320px}
.intro-photo img{width:100%;height:340px;object-fit:cover;object-position:center 48%}
.page-hero{padding:2.5rem 0 1rem}
.page-hero--photo{position:relative;padding:3.25rem 0 3rem;color:#fff;overflow:hidden;margin-bottom:0}
.page-hero--photo .ph-bg{position:absolute;inset:0;background-size:cover;background-position:center}
.page-hero--photo::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(7,35,26,.92),rgba(10,53,39,.78) 55%,rgba(10,53,39,.45));z-index:1}
.page-hero--photo .wrap{position:relative;z-index:2}
.page-hero--photo h1{color:#fff}
.page-hero--photo .lead{color:#e8f1e6;max-width:680px}
.page-hero--photo .eyebrow{color:var(--gold-soft)}
.page-hero--green{background:linear-gradient(120deg,var(--g900),var(--g700) 70%,var(--g600));color:#fff;padding:3rem 0}
.page-hero--green h1{color:#fff}
.page-hero--green .lead{color:#e8f1e6;max-width:680px}
.page-hero--green .eyebrow{color:var(--gold-soft)}
.section{padding:2.75rem 0}
.section-alt{background:var(--sage-soft)}
.section-green{background:linear-gradient(150deg,var(--g800),var(--g900));color:#eaf3ec}
.section-green h2,.section-green h3{color:#fff}
.section-green a{color:var(--gold-soft)}
.section-intro{max-width:720px}
.content-photo{margin-bottom:2rem}
.content-photo img{box-shadow:var(--shadow)}
.packet-block{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}

/* Photo band — full-bleed photograph with a green scrim and a short message */
.band-photo{position:relative;padding:4rem 0;color:#fff;overflow:hidden}
.band-photo .ph-bg{position:absolute;inset:0;background-size:cover;background-position:center}
.band-photo::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,35,26,.88),rgba(10,53,39,.62) 60%,rgba(10,53,39,.38));z-index:1}
.band-photo .wrap{position:relative;z-index:2}
.band-photo h2{color:#fff;max-width:620px}
.band-photo p{max-width:600px;color:#eef5ee;font-size:1.12rem}
.band-photo .eyebrow{color:var(--gold-soft)}

/* Notice */
.notice-band{background:var(--notice-bg);border-top:3px solid var(--notice-line);border-bottom:3px solid var(--notice-line);padding:1.75rem 0}
.notice-band h2{font-size:1.25rem}
.notice-band p{max-width:860px;margin:0;font-size:1.02rem}

/* Steps, cards, boxes */
.steps{list-style:none;margin:0 0 2rem;padding:0;display:flex;flex-direction:column;gap:1.25rem}
.steps li,.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:1.4rem}
.steps li{box-shadow:0 1px 3px rgba(10,53,39,.05)}
.steps-full li{padding:1.6rem}
.cards{display:flex;flex-wrap:wrap;gap:1.25rem}
.card{flex:1 1 260px;box-shadow:0 1px 3px rgba(10,53,39,.05);border-top:4px solid var(--g500)}
.cards-2 .card{flex-basis:340px}
.card--gold{border-top-color:var(--gold)}
.two-col{display:flex;flex-wrap:wrap;gap:1.25rem;margin-bottom:1.5rem}
.two-col>*{flex:1 1 340px}
.card ul,.info-box ul{margin:.25rem 0 0;padding-left:1.25rem}
.card li,.info-box li{margin-bottom:.5rem}
.info-box{background:var(--paper);color:var(--ink);border:1px solid var(--line);border-left:5px solid var(--g600);border-radius:var(--radius);padding:1.5rem;margin:1.75rem 0;box-shadow:0 1px 3px rgba(10,53,39,.05)}
.example-box{border-left-color:var(--gold);background:#fffaf0}
.flow{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:1.4rem 1.4rem 1.4rem 2.6rem}
.flow li{margin-bottom:.75rem}
.cta-panel{background:var(--sage-soft);border:1px solid var(--line);border-radius:var(--radius);padding:1.75rem;margin-top:2.5rem}

/* Step map (Sign Up flow orientation) */
.stepmap{list-style:none;margin:1.5rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:1rem}
.stepmap li{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:1.15rem 1.25rem;display:flex;gap:1rem;align-items:flex-start;flex:1 1 100%;box-shadow:0 1px 3px rgba(10,53,39,.05)}
.step-badge{flex:0 0 auto;width:44px;height:44px;border-radius:14px;background:linear-gradient(150deg,var(--g600),var(--g900));color:#fff;font-weight:800;font-size:1.2rem;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 2px rgba(255,255,255,.3)}
.stepmap h3{margin-bottom:.25rem}
.stepmap p{margin:0;color:#3c5045}

/* Requirements (Sign Up hub) */
.req{background:var(--paper);color:var(--ink);border:1px solid var(--line);border-left:5px solid var(--g600);border-radius:var(--radius);padding:1.35rem 1.5rem;margin-bottom:1.1rem;box-shadow:0 1px 3px rgba(10,53,39,.05)}
.req--gold{border-left-color:var(--gold)}
.req-name{font-size:1.12rem;font-weight:700;color:var(--g900);margin:0 0 .35rem}
.req p{margin:0 0 .55rem;color:#33443a}
.req p:last-child{margin-bottom:0}
.verify{font-size:.95rem;color:var(--muted);margin-top:.6rem;padding-top:.6rem;border-top:1px dashed var(--line)}
.verify a{font-weight:600}
.checklist{list-style:none;margin:.5rem 0 1rem;padding:0}
.checklist li{position:relative;padding:.45rem 0 .45rem 2.1rem;border-bottom:1px solid var(--sage-soft)}
.checklist li:last-child{border-bottom:none}
.checklist li::before{content:"";position:absolute;left:0;top:.55rem;width:1.15rem;height:1.15rem;border:2px solid var(--g600);border-radius:4px;background:#fff}
table.facts{width:100%;border-collapse:collapse;margin:1rem 0;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;font-size:1rem}
table.facts th,table.facts td{text-align:left;padding:.7rem .9rem;border-bottom:1px solid var(--sage-soft);vertical-align:top}
table.facts th{background:var(--sage-soft);color:var(--g900);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
table.facts tr:last-child td{border-bottom:none}

/* Next-step panel */
.next-step{background:linear-gradient(140deg,var(--g800),var(--g900));color:#eaf3ec;border-radius:var(--radius-lg);padding:1.9rem;margin-top:2.75rem;box-shadow:var(--shadow)}
.next-step h2{color:#fff;margin-bottom:.5rem}
.next-step p{max-width:720px;color:#dcebe0}
.next-step .cta-row{margin-top:1.1rem}

/* Forms */
form{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:1.6rem;box-shadow:var(--shadow)}
.field{margin-bottom:1.25rem}
.field label{display:block;font-weight:700;font-size:.98rem;margin-bottom:.4rem}
.field input[type="text"],.field input[type="tel"],.field input[type="email"],.field select,.field textarea{width:100%;padding:.75rem .85rem;border:1px solid #9db8a6;border-radius:7px;background:#fff;font-size:1rem;color:var(--ink)}
.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid var(--sage);outline-offset:1px;border-color:var(--g700)}
.field-consent{display:flex;gap:.7rem;align-items:flex-start}
.field-consent input{margin-top:.3rem;width:1.2rem;height:1.2rem;flex:0 0 auto}
.field-consent label{font-weight:400;margin:0}
.form-status{background:var(--error-bg);border:1px solid var(--error-line);color:var(--error-ink);border-radius:7px;padding:.9rem 1rem;margin-bottom:1rem}
.hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.signup-photo img{width:100%;height:100%;object-fit:cover;box-shadow:var(--shadow)}

/* Footer */
.site-footer{background:linear-gradient(180deg,var(--g900),var(--g950));color:#eaf2ef;margin-top:0;padding:2.75rem 0 2rem}
.site-footer a{color:#fff}
.footer-grid{display:flex;flex-wrap:wrap;gap:2rem}
.footer-grid>*{flex:1 1 240px}
.footer-grid>*:first-child{flex-grow:1.4}
.footer-brand .wordmark{color:#fff}
.footer-promise{max-width:300px}
.footer-heading{font-size:1rem;color:#fff;margin:0 0 .75rem}
.footer-links{list-style:none;margin:0;padding:0}
.footer-links li{margin-bottom:.55rem}
.footer-links a{text-decoration:none;font-size:.95rem}
.footer-links a:hover{text-decoration:underline}
.footer-bottom{border-top:1px solid rgba(255,255,255,.25);margin-top:2rem;padding-top:1.5rem;font-size:.92rem}
.disclaimer-short{font-weight:600}

.packet-grid,.signup-grid{display:flex;flex-wrap:wrap;gap:2rem}
.packet-grid>*:first-child,.signup-grid>*:first-child{flex:1.15 1 320px}
.packet-grid>figure,.signup-grid>figure{flex:.85 1 260px}

@media (min-width:720px){
  .header-inner{flex-direction:row;justify-content:space-between;align-items:center}
  .hero{padding:4.5rem 0 5rem}
  .steps-teaser{flex-direction:row}
  .steps-teaser li{flex:1 1 240px}
  .stepmap li{flex-basis:calc(50% - .5rem)}
  .charm{padding:1.6rem 1.9rem}
  .charm-medal{width:92px;height:92px;border-radius:26px}
  .charm-medal svg{width:52px;height:52px}
  .charm-name{font-size:2.3rem}
  h1{font-size:2.75rem}
}
@media (max-width:719px){
  body{font-size:17px}
  .btn{width:auto}
  .band-photo{padding:3rem 0}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .btn,.charm,.track,.charm-go .arrow{transition:none}
  .btn-primary:hover,.btn-gold:hover,.charm:hover,.track:hover{transform:none}
}
