:root{--teal:#05686F;--teal-dark:#07383d;--ink:#0f1720;--muted:#5f6b73;--line:#dfe8e9;--paper:#fff;--soft:#f4f8f8;--cream:#fbfaf6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.public-home-header{height:82px;display:flex;align-items:center;gap:34px;padding:0 clamp(22px,5vw,76px);border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);z-index:40}.public-home-brand{display:inline-flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none;font-weight:800;letter-spacing:.06em;white-space:nowrap}.public-home-brand img{width:38px;height:38px;border-radius:10px}.public-home-brand b{color:var(--teal)}.public-home-nav{display:flex;gap:28px;margin-left:auto}.public-home-nav a,.public-home-footer a{color:#334047;text-decoration:none;font-weight:650}.public-home-nav a:hover,.public-home-footer a:hover{color:var(--teal)}.header-cta{margin-left:8px;text-decoration:none;background:var(--teal);color:#fff;border-radius:999px;padding:12px 18px;font-weight:800;font-size:.9rem}.home-hero{max-width:1240px;margin:0 auto;padding:clamp(70px,10vw,145px) clamp(24px,5vw,72px) clamp(68px,8vw,110px);display:grid;grid-template-columns:minmax(0,1.5fr) minmax(250px,.6fr);gap:60px;align-items:center}.eyebrow{margin:0 0 14px;color:var(--teal);font-size:.78rem;font-weight:900;letter-spacing:.19em}.home-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(3rem,7vw,6.3rem);line-height:.96;letter-spacing:-.045em;max-width:900px;margin:0}.home-hero-text{font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.72;color:#4f5b61;max-width:760px;margin:30px 0}.home-hero-actions{display:flex;gap:13px;flex-wrap:wrap}.primary-link,.secondary-link{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border-radius:999px;text-decoration:none;font-weight:850}.primary-link{background:var(--teal);color:white}.secondary-link{border:1px solid #c9d7d8;color:var(--ink);background:#fff}.home-hero-mark{aspect-ratio:1;border-radius:42px;background:linear-gradient(145deg,var(--teal-dark),var(--teal));display:grid;place-items:center;align-content:center;gap:20px;box-shadow:0 30px 70px rgba(5,104,111,.22);padding:40px}.home-hero-mark img{width:min(62%,180px);height:auto;border-radius:30px}.home-hero-mark span{color:#fff;font-family:Georgia,serif;font-size:1.25rem}.home-featured,.home-latest,.home-topics,.home-newsletter{max-width:1240px;margin:0 auto;padding:72px clamp(24px,5vw,72px)}.home-featured{padding-top:24px}.section-intro{margin-bottom:30px}.section-intro h2{font-family:Georgia,serif;font-size:clamp(2rem,4vw,3.5rem);letter-spacing:-.035em;margin:0}.section-intro.split{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end}.section-intro.split>p{color:var(--muted);line-height:1.7;margin:0}.home-article-card{border:1px solid var(--line);border-radius:24px;overflow:hidden;background:#fff;transition:transform .18s ease,box-shadow .18s ease}.home-article-card:hover{transform:translateY(-3px);box-shadow:0 20px 45px rgba(20,52,55,.08)}.featured-card{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);min-height:440px}.home-card-media{display:block;min-height:220px;background:linear-gradient(145deg,#d8eeee,#eef7f6);overflow:hidden}.featured-card .home-card-media{min-height:440px}.home-card-media img{display:block;width:100%;height:100%;object-fit:cover}.home-card-media-empty{display:grid;place-items:center;color:var(--teal);font-weight:900;letter-spacing:.2em;font-size:1.3rem}.home-card-copy{padding:28px}.featured-card .home-card-copy{padding:clamp(34px,5vw,62px);display:flex;flex-direction:column;justify-content:center}.home-card-kicker{color:var(--teal);font-size:.75rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;margin:0 0 12px}.home-card-copy h3{font-family:Georgia,serif;font-size:1.7rem;line-height:1.08;margin:0 0 15px}.featured-card h3{font-size:clamp(2.25rem,4vw,4rem)}.home-card-copy h3 a{color:var(--ink);text-decoration:none}.home-card-copy>p:not(.home-card-kicker){color:var(--muted);line-height:1.7;margin:0 0 20px}.home-card-meta{display:flex;gap:14px;flex-wrap:wrap;color:#718087;font-size:.86rem;margin-top:auto}.home-card-meta a{color:var(--teal);font-weight:750;text-decoration:none}.home-latest{background:var(--soft);max-width:none;padding-left:max(24px,calc((100vw - 1096px)/2));padding-right:max(24px,calc((100vw - 1096px)/2))}.home-latest>.section-intro,.home-latest>.home-article-grid{max-width:1096px;margin-left:auto;margin-right:auto}.home-article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.topic-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.topic-card{min-height:118px;padding:24px;border:1px solid var(--line);border-radius:20px;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;justify-content:space-between;background:#fff}.topic-card span{font-family:Georgia,serif;font-weight:700;font-size:1.25rem}.topic-card small{color:var(--teal);font-weight:800}.home-cache-cta{max-width:1096px;margin:45px auto 0;border-radius:34px;background:var(--teal-dark);color:#fff;padding:clamp(38px,7vw,76px);display:grid;grid-template-columns:1fr 220px;gap:50px;align-items:center}.home-cache-cta .eyebrow{color:#9ed8da}.home-cache-cta h2{font-family:Georgia,serif;font-size:clamp(2.5rem,5vw,4.5rem);line-height:1;margin:0}.home-cache-cta p:not(.eyebrow){color:#d8e7e8;line-height:1.75;font-size:1.05rem;max-width:720px;margin:22px 0 28px}.home-cache-cta img{width:100%;border-radius:42px}.primary-link.light{background:white;color:var(--teal-dark)}.home-newsletter{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.home-newsletter h2{font-family:Georgia,serif;font-size:clamp(2rem,4vw,3.25rem);line-height:1.05;margin:0}.home-newsletter p:not(.eyebrow){color:var(--muted);line-height:1.7}.newsletter-preview{display:grid;grid-template-columns:1fr auto;gap:10px}.newsletter-preview input{min-width:0;height:54px;border:1px solid #cdd9da;border-radius:14px;padding:0 16px;font:inherit}.newsletter-preview button{height:54px;border:0;border-radius:14px;background:#d9e7e8;color:#6a7a7c;font-weight:850;padding:0 20px;cursor:not-allowed}.newsletter-preview small{grid-column:1/-1;color:#829094}.public-home-footer{border-top:1px solid var(--line);padding:34px clamp(24px,5vw,72px);display:grid;grid-template-columns:1fr auto 1fr;gap:24px;align-items:center}.public-home-footer p{margin:0;color:#67747a;text-align:center}.public-home-footer>div{display:flex;justify-content:flex-end;gap:20px}.home-empty-feature,.home-empty-list{padding:42px;border:1px dashed #bfd0d1;border-radius:24px;color:var(--muted)}.home-empty-feature h2{font-family:Georgia,serif;color:var(--ink);font-size:2.2rem;margin:0 0 12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:900px){.public-home-nav{display:none}.header-cta{margin-left:auto}.home-hero{grid-template-columns:1fr}.home-hero-mark{display:none}.featured-card{grid-template-columns:1fr}.featured-card .home-card-media{min-height:320px}.section-intro.split{grid-template-columns:1fr;gap:14px}.home-article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-cache-cta{grid-template-columns:1fr}.home-cache-cta img{display:none}.home-newsletter{grid-template-columns:1fr}.public-home-footer{grid-template-columns:1fr;text-align:left}.public-home-footer p{text-align:left}.public-home-footer>div{justify-content:flex-start}}@media(max-width:600px){.public-home-header{height:70px;padding:0 18px}.public-home-brand img{width:34px;height:34px}.public-home-brand span{font-size:.92rem}.header-cta{padding:10px 13px;font-size:.75rem}.home-hero{padding:64px 22px 58px}.home-hero h1{font-size:clamp(2.7rem,13vw,4.2rem)}.home-hero-text{font-size:1rem}.home-featured,.home-latest,.home-topics,.home-newsletter{padding:56px 22px}.featured-card .home-card-media{min-height:240px}.featured-card .home-card-copy{padding:28px}.featured-card h3{font-size:2.25rem}.home-article-grid,.topic-grid{grid-template-columns:1fr}.home-cache-cta{margin:24px 22px 0;padding:38px 26px;border-radius:26px}.home-newsletter{gap:24px}.newsletter-preview{grid-template-columns:1fr}.newsletter-preview button{width:100%}.public-home-footer{padding:30px 22px}}

/* Phase 5A refinement: editorial scale and public navigation */
.home-hero{grid-template-columns:minmax(0,1fr);max-width:1096px;padding-top:clamp(58px,7vw,92px);padding-bottom:clamp(52px,6vw,82px)}
.home-hero-copy{max-width:900px}
.home-hero h1{font-size:clamp(2.7rem,5vw,4.8rem);line-height:1.02;letter-spacing:-.04em}
.home-hero-text{font-size:clamp(1rem,1.5vw,1.18rem);max-width:720px;margin:24px 0}
.home-hero-mark{display:none}
.header-cta{display:none}
.public-home-nav{margin-left:auto}
.topic-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.topic-card:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(20,52,55,.08);border-color:#bfd0d1}
.home-cache-cta{grid-template-columns:1fr;max-width:1096px;padding:clamp(34px,5vw,58px)}
.home-cache-cta h2{font-size:clamp(2rem,3.5vw,3.4rem)}
.home-cache-cta img{display:none}
.public-directory{max-width:1096px;margin:0 auto;padding:64px 24px 90px}
.public-directory-head{margin-bottom:34px}
.public-directory-head h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.5rem,5vw,4.4rem);line-height:1.02;letter-spacing:-.04em;margin:0 0 14px}
.public-directory-head>p:not(.eyebrow){color:var(--muted);font-size:1.08rem;line-height:1.7;max-width:720px}
.directory-article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.directory-topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.directory-topic-grid .topic-card{min-height:150px}
.directory-topic-grid .topic-card p{color:var(--muted);line-height:1.5;margin:10px 0 18px}
.public-search-form{display:flex;gap:10px;max-width:760px;margin:26px 0 36px}
.public-search-form input{flex:1;min-width:0;height:52px;border:1px solid #cbd8da;border-radius:14px;padding:0 16px;font:inherit}
.public-search-form button{height:52px;border:0;border-radius:14px;padding:0 22px;background:var(--teal);color:#fff;font-weight:800}
.directory-empty{padding:34px;border:1px dashed #bfd0d1;border-radius:20px;color:var(--muted)}
@media(max-width:900px){.public-home-nav{display:flex;gap:18px}.directory-article-grid,.directory-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.public-home-nav a:nth-child(4){display:none}.public-home-nav{gap:13px;font-size:.82rem}.home-hero h1{font-size:clamp(2.45rem,11vw,3.6rem)}.directory-article-grid,.directory-topic-grid{grid-template-columns:1fr}.public-search-form{flex-direction:column}.public-search-form button{width:100%}}
@media(max-width:520px){.public-home-nav a:nth-child(3){display:none}}

/* Phase 5A refinement v2 */
.home-hero{padding-top:54px;padding-bottom:50px}
.home-hero-copy{max-width:760px}
.home-hero h1{font-size:clamp(2.35rem,4.2vw,4rem);line-height:1.04;max-width:760px}
.home-hero-text{font-size:clamp(.98rem,1.25vw,1.1rem);line-height:1.65;max-width:680px;margin:20px 0 24px}
.home-featured{padding-top:34px}
.featured-card{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);min-height:auto}
.featured-card .home-card-media{min-height:0;background:#f7f9f9;display:flex;align-items:center;justify-content:center}
.featured-card .home-card-media img{width:100%;height:auto;max-height:none;object-fit:contain}
.featured-card .home-card-copy{padding:38px}
.featured-card h3{font-size:clamp(2rem,3vw,3.15rem)}

.public-search-toggle{width:40px;height:40px;border:0;background:transparent;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:#334047;cursor:pointer;padding:0}
.public-search-toggle:hover{background:var(--soft);color:var(--teal)}
.public-search-toggle svg,.public-search-box svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.public-search-overlay[hidden]{display:none}
.public-search-overlay{position:fixed;inset:0;background:rgba(15,23,32,.38);z-index:1000;padding:96px 20px 20px;display:flex;align-items:flex-start;justify-content:center}
.public-search-panel{width:min(760px,100%);max-height:calc(100vh - 116px);overflow:auto;background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:0 28px 80px rgba(15,23,32,.22);padding:26px}
.public-search-panel-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}
.public-search-panel-head h2{font-family:Georgia,"Times New Roman",serif;font-size:2rem;margin:0 0 18px}
.public-search-close{border:0;background:var(--soft);width:40px;height:40px;border-radius:999px;font-size:1.7rem;line-height:1;cursor:pointer;color:var(--ink)}
.public-search-box{display:flex;align-items:center;gap:10px;border:1px solid #cbd8da;border-radius:14px;padding:0 14px;height:54px}
.public-search-box input{border:0;outline:0;min-width:0;flex:1;font:inherit;font-size:1rem;background:transparent}
.public-search-results{margin-top:16px;display:grid;gap:8px}
.public-search-result{display:grid;grid-template-columns:74px 1fr;gap:14px;align-items:center;padding:10px;border-radius:14px;text-decoration:none;color:var(--ink)}
.public-search-result:hover{background:var(--soft)}
.public-search-result img{width:74px;height:64px;object-fit:cover;border-radius:10px}
.public-search-result span{min-width:0;display:block}
.public-search-result small{display:block;color:var(--teal);font-weight:800;font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px}
.public-search-result strong{display:block;font-size:1rem;line-height:1.3}
.public-search-result em{display:block;font-style:normal;color:var(--muted);font-size:.86rem;line-height:1.4;margin-top:4px}
.public-search-empty{padding:20px;color:var(--muted);background:var(--soft);border-radius:14px}
.public-search-open{overflow:hidden}

@media(max-width:900px){
  .featured-card{grid-template-columns:1fr}
  .featured-card .home-card-media{min-height:0}
  .public-home-nav{display:flex}
}
@media(max-width:700px){
  .public-home-nav a:nth-of-type(1){display:none}
  .public-home-nav a:nth-of-type(4){display:none}
  .public-home-nav{gap:10px}
  .public-search-toggle{width:36px;height:36px}
}
@media(max-width:600px){
  .home-hero{padding:44px 22px 42px}
  .home-hero h1{font-size:clamp(2.35rem,9vw,3.4rem)}
  .home-featured{padding-top:38px}
  .featured-card .home-card-copy{padding:25px}
  .featured-card h3{font-size:2rem}
  .public-search-overlay{padding:76px 12px 12px}
  .public-search-panel{padding:20px;border-radius:20px;max-height:calc(100vh - 88px)}
  .public-search-result{grid-template-columns:58px 1fr}
  .public-search-result img{width:58px;height:54px}
}
@media(max-width:460px){
  .public-home-nav a:nth-of-type(2){display:none}
  .public-home-nav{margin-left:auto}
}


/* Phase 5A refinement: compact editorial hero + resilient search cards */
.home-hero{
  padding-top:38px;
  padding-bottom:38px;
}
.home-hero-copy{
  max-width:720px;
}
.home-hero h1{
  font-size:clamp(2.05rem,3.5vw,3.4rem);
  line-height:1.045;
  max-width:720px;
}
.home-hero-text{
  font-size:clamp(.96rem,1.1vw,1.04rem);
  line-height:1.6;
  margin:17px 0 21px;
  max-width:650px;
}
.home-hero-actions{
  gap:10px;
}
.home-hero-actions .primary-link,
.home-hero-actions .secondary-link{
  min-height:46px;
  padding-left:19px;
  padding-right:19px;
}
.home-featured{
  padding-top:24px;
}

.public-search-results{
  width:100%;
}
.public-search-result{
  width:100%;
  min-width:0;
}
.public-search-result:not(:has(img)){
  grid-template-columns:minmax(0,1fr);
}
.public-search-result:not(:has(img)) > span{
  grid-column:1;
}
.public-search-result > span{
  min-width:0;
  width:100%;
}
.public-search-result strong,
.public-search-result em{
  overflow-wrap:anywhere;
}
.public-search-result em{
  max-width:62ch;
}
@media(max-width:600px){
  .home-hero{
    padding-top:34px;
    padding-bottom:34px;
  }
  .home-hero h1{
    font-size:clamp(2rem,9vw,2.85rem);
  }
}


/* Phase 5A typography + navigation alignment refinement */
.home-hero{
  padding-top:30px;
  padding-bottom:30px;
}
.home-hero-copy{
  max-width:650px;
}
.home-hero h1{
  font-size:clamp(1.82rem,2.85vw,2.85rem);
  line-height:1.06;
  max-width:650px;
}
.home-hero-text{
  font-size:clamp(.92rem,1vw,1rem);
  line-height:1.55;
  max-width:620px;
  margin:14px 0 18px;
}
.home-hero-actions .primary-link,
.home-hero-actions .secondary-link{
  min-height:43px;
  padding:9px 17px;
}
.home-featured{
  padding-top:18px;
}
.home-featured h2,
.featured-section h2{
  font-size:clamp(1.85rem,3vw,3rem);
  line-height:1.05;
}

/* Keep the search control optically level with text navigation */
.public-nav,
.site-nav,
.public-header nav{
  align-items:center;
}
.public-nav a,
.site-nav a,
.public-header nav a,
.public-search-trigger,
.search-trigger,
button[aria-label*="Search"],
button[aria-label*="search"]{
  align-self:center;
}
.public-search-trigger,
.search-trigger,
button[aria-label*="Search"],
button[aria-label*="search"]{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  vertical-align:middle;
  line-height:1;
  margin-top:0 !important;
  transform:none !important;
}
.public-search-trigger svg,
.search-trigger svg,
button[aria-label*="Search"] svg,
button[aria-label*="search"] svg{
  display:block;
}

@media(max-width:600px){
  .home-hero{
    padding-top:27px;
    padding-bottom:27px;
  }
  .home-hero h1{
    font-size:clamp(1.8rem,8vw,2.45rem);
  }
  .home-featured h2,
  .featured-section h2{
    font-size:clamp(1.75rem,8vw,2.35rem);
  }
}


/* Phase 5A aesthetic composition refinement */
@media(min-width:901px){
  /* One shared editorial grid for hero + featured */
  .home-hero,
  .home-featured{
    width:min(calc(100% - 96px),1096px);
    max-width:1096px;
    margin-left:auto;
    margin-right:auto;
    padding-left:0;
    padding-right:0;
  }

  .home-hero{
    padding-top:42px;
    padding-bottom:34px;
  }

  .home-hero-copy{
    max-width:700px;
  }

  .home-hero h1{
    font-size:clamp(2rem,2.7vw,2.75rem);
    line-height:1.075;
    max-width:700px;
    letter-spacing:-.035em;
  }

  .home-hero-text{
    max-width:660px;
    margin-top:16px;
    margin-bottom:20px;
  }

  .home-featured{
    padding-top:26px;
    padding-bottom:62px;
  }

  .home-featured .section-intro{
    margin-bottom:24px;
  }

  .home-featured .section-intro h2,
  .home-featured h2{
    font-size:clamp(1.8rem,2.45vw,2.55rem);
    line-height:1.06;
    letter-spacing:-.03em;
  }

  .featured-card{
    grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
  }

  .featured-card .home-card-copy{
    padding:34px 36px;
  }

  .featured-card h3{
    font-size:clamp(1.85rem,2.45vw,2.65rem);
    line-height:1.06;
  }

  /* Exact shared-header alignment */
  .public-home-nav{
    display:flex;
    align-items:center;
    gap:28px;
    min-height:40px;
  }

  .public-home-nav > a{
    display:inline-flex;
    align-items:center;
    height:40px;
    line-height:1;
  }

  .public-home-nav > .public-search-toggle{
    flex:0 0 40px;
    width:40px;
    height:40px;
    min-width:40px;
    margin:0;
    padding:0;
    position:relative;
    top:0;
    transform:none;
    align-self:center;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    line-height:0;
  }

  .public-home-nav > .public-search-toggle svg{
    display:block;
    width:20px;
    height:20px;
    margin:0;
    position:static;
    transform:none;
  }
}

@media(max-width:900px){
  .public-home-nav{
    align-items:center;
  }
  .public-home-nav > a{
    display:inline-flex;
    align-items:center;
    min-height:36px;
    line-height:1;
  }
  .public-home-nav > .public-search-toggle{
    width:36px;
    height:36px;
    min-width:36px;
    margin:0;
    padding:0;
    position:relative;
    top:0;
    transform:none;
    align-self:center;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    line-height:0;
  }
  .public-home-nav > .public-search-toggle svg{
    display:block;
    width:19px;
    height:19px;
    margin:0;
  }
}


/* Phase 5A intro-panel refinement
   Keeps the approved typography/grid intact and adds visual separation only. */
.home-hero{
  position:relative;
  isolation:isolate;
}

.home-hero::before{
  content:"";
  position:absolute;
  inset:0 -32px;
  z-index:-1;
  border:1px solid rgba(5,104,111,.10);
  border-radius:28px;
  background:
    radial-gradient(circle at 88% 18%, rgba(5,104,111,.08), transparent 28%),
    radial-gradient(circle at 72% 86%, rgba(5,104,111,.045), transparent 34%),
    linear-gradient(135deg, #f7fbfb 0%, #eef7f7 52%, #f8fbfa 100%);
  box-shadow:0 16px 42px rgba(15,23,32,.035);
}

@media(min-width:901px){
  .home-hero{
    padding-top:42px;
    padding-bottom:42px;
  }

  .home-featured{
    padding-top:44px;
  }
}

@media(max-width:900px){
  .home-hero::before{
    inset:0 10px;
    border-radius:24px;
  }
}

@media(max-width:600px){
  .home-hero::before{
    inset:0 8px;
    border-radius:20px;
  }
}


/* Phase 5A visual identity + discovery refinement */

/* Subtle CACHE-inspired circular language on the quiet side of the hero */
.home-hero-copy{
  position:relative;
  z-index:2;
}
.home-hero::after{
  content:"";
  position:absolute;
  z-index:1;
  pointer-events:none;
  width:min(38vw,430px);
  aspect-ratio:1;
  right:clamp(26px,5vw,82px);
  top:50%;
  transform:translateY(-50%);
  opacity:.34;
  background:
    radial-gradient(circle at 50% 50%,
      transparent 0 16%,
      rgba(5,104,111,.055) 16.4% 17.7%,
      transparent 18.1% 31%,
      rgba(5,104,111,.045) 31.4% 32.5%,
      transparent 32.9% 46%,
      rgba(5,104,111,.035) 46.4% 47.4%,
      transparent 47.8%),
    radial-gradient(circle at 31% 31%, rgba(5,104,111,.07) 0 3px, transparent 4px),
    radial-gradient(circle at 71% 27%, rgba(5,104,111,.06) 0 2px, transparent 3px),
    radial-gradient(circle at 74% 70%, rgba(5,104,111,.055) 0 3px, transparent 4px),
    radial-gradient(circle at 28% 73%, rgba(5,104,111,.05) 0 2px, transparent 3px);
}

/* Let the featured story remain the visual star */
.home-featured .section-intro h2,
.home-featured h2{
  font-size:clamp(1.7rem,2.2vw,2.3rem);
}

/* Compact, functional topic discovery strip after Featured */
.home-discovery-strip{
  width:min(calc(100% - 96px),1096px);
  max-width:1096px;
  margin:0 auto 58px;
  padding:14px 16px;
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  border-top:1px solid rgba(5,104,111,.12);
  border-bottom:1px solid rgba(5,104,111,.12);
}
.home-discovery-label{
  margin-right:4px;
  color:var(--teal);
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.home-discovery-strip a{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:7px 12px;
  border-radius:999px;
  color:#334047;
  text-decoration:none;
  font-size:.88rem;
  font-weight:720;
  background:#f6f9f9;
  border:1px solid #e2ebec;
  transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease;
}
.home-discovery-strip a:hover{
  color:var(--teal);
  background:#eef7f7;
  border-color:#c8dedf;
  transform:translateY(-1px);
}
.home-discovery-strip .home-discovery-all{
  margin-left:auto;
  background:transparent;
  border-color:transparent;
  color:var(--teal);
}

@media(max-width:900px){
  .home-hero::after{
    width:min(54vw,360px);
    right:16px;
    opacity:.22;
  }
  .home-discovery-strip{
    width:calc(100% - 44px);
    margin-bottom:46px;
  }
  .home-discovery-strip .home-discovery-all{
    margin-left:0;
  }
}

@media(max-width:600px){
  .home-hero::after{
    width:270px;
    right:-54px;
    top:48%;
    opacity:.16;
  }
  .home-discovery-strip{
    width:calc(100% - 36px);
    padding:12px 0;
    gap:7px;
  }
  .home-discovery-label{
    width:100%;
    margin-bottom:2px;
  }
  .home-discovery-strip a{
    font-size:.82rem;
    min-height:32px;
    padding:6px 10px;
  }
}


/* Phase 5A Explore + Latest heading refinement */
.home-discovery-strip{
  margin-top:0;
  margin-bottom:42px;
  padding-top:9px;
  padding-bottom:9px;
  min-height:0;
}

.home-latest .section-intro h2{
  font-size:clamp(1.85rem,3vw,3rem);
  line-height:1.06;
}

@media(max-width:900px){
  .home-discovery-strip{
    margin-bottom:36px;
    padding-top:8px;
    padding-bottom:8px;
  }
}

@media(max-width:600px){
  .home-discovery-strip{
    margin-bottom:32px;
    padding-top:7px;
    padding-bottom:7px;
  }

  .home-latest .section-intro h2{
    font-size:clamp(1.75rem,8vw,2.5rem);
  }
}


/* Phase 5A: Latest Money Guides carousel + topic-heading refinement */
.home-latest .latest-carousel{
  max-width:1096px;
  margin-left:auto;
  margin-right:auto;
}
.latest-carousel-controls{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  margin:-6px 0 14px;
}
.latest-carousel-arrow{
  width:40px;
  height:40px;
  border:1px solid #cfdedf;
  border-radius:999px;
  background:#fff;
  color:var(--teal);
  font:inherit;
  font-size:1.05rem;
  font-weight:850;
  line-height:1;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  transition:background .16s ease,border-color .16s ease,opacity .16s ease,transform .16s ease;
}
.latest-carousel-arrow:hover:not(:disabled){
  background:#eef7f7;
  border-color:#b9d4d6;
  transform:translateY(-1px);
}
.latest-carousel-arrow:disabled{
  opacity:.32;
  cursor:default;
}
.latest-carousel-viewport{
  width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  overscroll-behavior-x:contain;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
}
.latest-carousel-viewport::-webkit-scrollbar{
  display:none;
}
.latest-carousel-track{
  display:flex;
  align-items:stretch;
  gap:22px;
}
.latest-carousel-track > .home-article-card{
  flex:0 0 calc((100% - 44px)/3);
  min-width:0;
  scroll-snap-align:start;
  scroll-snap-stop:always;
  display:flex;
  flex-direction:column;
  cursor:pointer;
}
.latest-carousel-track > .home-article-card:focus-visible{
  outline:3px solid rgba(5,104,111,.28);
  outline-offset:3px;
}
.latest-carousel-track > .home-article-card .home-card-copy{
  display:flex;
  flex:1;
  flex-direction:column;
}
.latest-carousel-dots{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:7px;
  padding-top:17px;
}
.latest-carousel-dots button{
  width:7px;
  height:7px;
  padding:0;
  border:0;
  border-radius:999px;
  background:#bdcdce;
  cursor:pointer;
  transition:width .18s ease,background .18s ease;
}
.latest-carousel-dots button.is-active{
  width:22px;
  background:var(--teal);
}
.home-topics .section-intro h2{
  font-size:clamp(1.9rem,3vw,2.8rem);
  line-height:1.06;
}

@media(max-width:900px){
  .latest-carousel-track{
    gap:18px;
  }
  .latest-carousel-track > .home-article-card{
    flex-basis:calc((100% - 18px)/2);
  }
}

@media(max-width:600px){
  .latest-carousel-controls{
    display:none;
  }
  .latest-carousel-track{
    gap:14px;
  }
  .latest-carousel-track > .home-article-card{
    flex-basis:80%;
  }
  .latest-carousel-track .home-card-media{
    min-height:180px;
  }
  .latest-carousel-track .home-card-copy{
    padding:20px;
  }
  .latest-carousel-track .home-card-copy h3{
    font-size:1.32rem;
    line-height:1.12;
  }
  .latest-carousel-track .home-card-copy > p:not(.home-card-kicker){
    font-size:.9rem;
    line-height:1.5;
  }
  .latest-carousel-dots{
    justify-content:flex-start;
    overflow:hidden;
    padding-top:14px;
  }
  .home-topics .section-intro h2{
    font-size:clamp(1.8rem,8vw,2.35rem);
  }
}


/* 2026-09-13 verified mobile containment + carousel width */
html,body{
  max-width:100%;
  overflow-x:hidden;
}
@media(max-width:767px){
  .home-latest,
  .home-latest .latest-carousel,
  .latest-carousel-viewport{
    max-width:100%;
    overflow-x:hidden;
  }
  .latest-carousel-viewport{
    overflow-x:auto;
    touch-action:auto;
  }
  .latest-carousel-track{
    width:max-content;
    max-width:none;
  }
  .latest-carousel-track > .home-article-card{
    flex:0 0 80vw !important;
    width:80vw !important;
    min-width:80vw !important;
    max-width:80vw !important;
  }
}


/* Mobile navigation */
.public-menu-toggle{
  display:none;
  width:36px;
  height:36px;
  border:0;
  background:transparent;
  border-radius:999px;
  padding:8px;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:4px;
  color:#334047;
  cursor:pointer;
}
.public-menu-toggle span{
  display:block;
  width:18px;
  height:2px;
  border-radius:999px;
  background:currentColor;
}
.public-mobile-menu[hidden]{display:none}
.public-mobile-menu{
  position:fixed;
  inset:0;
  z-index:1200;
}
.public-mobile-menu-backdrop{
  position:absolute;
  inset:0;
  background:rgba(15,23,32,.34);
}
.public-mobile-menu-panel{
  position:absolute;
  top:0;
  right:0;
  width:min(86vw,340px);
  height:100%;
  background:#fff;
  border-left:1px solid var(--line);
  box-shadow:-18px 0 50px rgba(15,23,32,.16);
  padding:22px;
  display:flex;
  flex-direction:column;
}
.public-mobile-menu-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding-bottom:18px;
  border-bottom:1px solid var(--line);
  font-weight:850;
  color:var(--ink);
}
.public-mobile-menu-close{
  width:38px;
  height:38px;
  border:0;
  border-radius:999px;
  background:var(--soft);
  color:var(--ink);
  font-size:1.6rem;
  line-height:1;
  cursor:pointer;
}
.public-mobile-menu-panel nav{
  display:grid;
  gap:4px;
  padding-top:14px;
}
.public-mobile-menu-panel nav a{
  display:flex;
  align-items:center;
  min-height:52px;
  padding:0 4px;
  border-bottom:1px solid rgba(223,232,233,.8);
  color:var(--ink);
  text-decoration:none;
  font-weight:750;
  font-size:1rem;
}
.public-mobile-menu-panel nav a:hover{
  color:var(--teal);
}
html.public-menu-open,
html.public-menu-open body{
  overflow:hidden;
}

@media(max-width:700px){
  .public-menu-toggle{
    display:inline-flex;
  }
}


/* Mobile refinement: Latest + Topics directory pages */
@media(max-width:700px){
  /* Latest/article directory cards: shorter media and controlled excerpt height */
  .directory-article-grid .home-card-media{
    height:148px !important;
    min-height:148px !important;
    aspect-ratio:auto !important;
  }
  .directory-article-grid .home-card-media img{
    width:100%;
    height:148px !important;
    object-fit:cover;
  }
  .directory-article-grid .home-card-copy{
    padding:18px 18px 17px;
  }
  .directory-article-grid .home-card-copy>p:not(.home-card-kicker){
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:4;
    overflow:hidden;
  }

  /* Topics directory: retain premium spacing without oversized empty cards */
  .directory-topic-grid .topic-card{
    min-height:112px !important;
    padding:20px 22px;
  }
}


/* Mobile scalable Topics directory */
@media(max-width:700px){
  .directory-topic-grid{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:12px !important;
  }

  .directory-topic-grid .topic-card{
    min-height:132px !important;
    padding:18px 16px !important;
    border-radius:18px;
    justify-content:space-between;
  }

  .directory-topic-grid .topic-card span{
    font-size:1.08rem;
    line-height:1.18;
    overflow-wrap:anywhere;
  }

  .directory-topic-grid .topic-card p{
    display:none !important;
  }

  .directory-topic-grid .topic-card small{
    margin-top:18px;
    font-size:.82rem;
    line-height:1.25;
  }
}

@media(max-width:330px){
  .directory-topic-grid{
    grid-template-columns:minmax(0,1fr) !important;
  }

  .directory-topic-grid .topic-card{
    min-height:104px !important;
    padding:17px 18px !important;
  }
}


/* Mobile public header: persistent navigation on every public page */
@media(max-width:700px){
  body{
    padding-top:70px;
  }

  .public-home-header{
    position:fixed !important;
    top:0;
    left:0;
    right:0;
    width:100%;
    z-index:900;
    background:rgba(255,255,255,.96);
    -webkit-backdrop-filter:blur(14px);
    backdrop-filter:blur(14px);
  }
}


/* Desktop public header: persistent navigation on every public page */
@media(min-width:701px){
  body{
    padding-top:82px;
  }

  .public-home-header{
    position:fixed !important;
    top:0;
    left:0;
    right:0;
    width:100%;
    z-index:900;
    background:rgba(255,255,255,.96);
    -webkit-backdrop-filter:blur(14px);
    backdrop-filter:blur(14px);
  }
}


/* Mobile public header cleanup: search + hamburger only.
   Home, Latest, Topics and CACHE Apps remain available inside the mobile menu. */
@media(max-width:700px){
  .public-home-nav > a{
    display:none !important;
  }

  .public-home-nav > .public-search-toggle,
  .public-home-nav > .public-menu-toggle{
    display:inline-flex !important;
  }
}


/* Phase 5C discovery: scalable topic/tag/search directories. */
.directory-load-more{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:38px}
.directory-load-more-button{display:inline-flex;align-items:center;justify-content:center;min-width:142px;min-height:48px;padding:0 22px;border-radius:999px;background:var(--teal);color:#fff;text-decoration:none;font-weight:850}
.directory-load-more-button:hover{filter:brightness(.96)}
.directory-load-more-button[aria-disabled="true"]{opacity:.62;pointer-events:none}
.directory-load-more-status{min-height:1.3em;margin:0;color:var(--muted);font-size:.9rem}
.directory-result-count{margin:4px 0 0!important;font-size:.92rem!important;font-weight:750;color:var(--teal)!important}

.public-search-all-results{display:flex;align-items:center;justify-content:center;margin-top:8px;padding:12px 14px;border-top:1px solid var(--line);color:var(--teal);font-weight:850;text-decoration:none}
.public-search-all-results:hover{text-decoration:underline;text-underline-offset:3px}


/* Phase 5C correction: full-search action stays visible below live results. */
.public-search-panel{display:flex;flex-direction:column}
.public-search-results{overflow:auto;min-height:0}
.public-search-footer{flex:0 0 auto;padding-top:10px;background:#fff}
.public-search-footer .public-search-all-results{margin:0;border-top:1px solid var(--line);border-radius:0}


/* Phase 5C deep correction: explicit full-search access on every public template. */
.public-search-box{display:flex;align-items:center}
.public-search-box .public-search-submit{
  flex:0 0 auto;
  min-height:38px;
  border:0;
  border-radius:10px;
  padding:0 14px;
  background:var(--teal);
  color:#fff;
  font:800 13px/1 Inter,ui-sans-serif,system-ui,sans-serif;
  cursor:pointer;
}
.public-search-box .public-search-submit:hover{filter:brightness(.96)}
.public-search-panel{display:flex;flex-direction:column}
.public-search-results{overflow:auto;min-height:0}
.public-search-footer{flex:0 0 auto;padding-top:10px;background:#fff}
.public-search-footer .public-search-all-results{
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0;
  padding:12px 14px;
  border-top:1px solid var(--line);
  color:var(--teal);
  font-weight:850;
  text-decoration:none;
}
.public-search-footer .public-search-all-results:hover{text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){
  .public-search-box .public-search-submit{padding:0 11px;font-size:12px}
}


/* Phase 5C mobile discovery polish:
   compact scan-friendly cards for Search, Topic and Tag directory pages only.
   Desktop directory cards remain unchanged. */
@media(max-width:700px){
  .public-directory{
    padding:34px 16px 64px;
  }

  .public-directory-head{
    margin-bottom:24px;
  }

  .public-directory-head h1{
    font-size:clamp(2.15rem,10vw,3rem);
    line-height:1.02;
    margin-bottom:10px;
  }

  .public-directory-head>p:not(.eyebrow){
    font-size:.98rem;
    line-height:1.55;
  }

  .public-search-form{
    gap:9px;
    margin:20px 0 22px;
  }

  .public-search-form input,
  .public-search-form button{
    height:48px;
    border-radius:13px;
  }

  .directory-result-count{
    margin-top:6px!important;
  }

  .public-directory .directory-article-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
  }

  .public-directory .directory-article-grid .home-article-card{
    display:grid;
    grid-template-columns:104px minmax(0,1fr);
    min-height:112px;
    border-radius:17px;
    overflow:hidden;
    cursor:pointer;
  }

  .public-directory .directory-article-grid .home-article-card:hover{
    transform:none;
    box-shadow:none;
  }

  .public-directory .directory-article-grid .home-card-media{
    min-height:112px;
    height:100%;
    border-radius:0;
  }

  .public-directory .directory-article-grid .home-card-media img{
    width:100%;
    height:100%;
    min-height:112px;
    object-fit:cover;
  }

  .public-directory .directory-article-grid .home-card-media-empty{
    min-height:112px;
    font-size:.82rem;
    letter-spacing:.15em;
  }

  .public-directory .directory-article-grid .home-card-copy{
    min-width:0;
    padding:13px 14px 12px;
    display:flex;
    flex-direction:column;
    justify-content:center;
  }

  .public-directory .directory-article-grid .home-card-kicker{
    margin:0 0 5px;
    font-size:.59rem;
    line-height:1.2;
    letter-spacing:.11em;
  }

  .public-directory .directory-article-grid .home-card-copy h3{
    margin:0 0 9px;
    font-size:1rem;
    line-height:1.08;
  }

  .public-directory .directory-article-grid .home-card-copy>p:not(.home-card-kicker){
    display:none;
  }

  .public-directory .directory-article-grid .home-card-meta{
    gap:8px;
    margin-top:0;
    font-size:.68rem;
    line-height:1.2;
  }

  .public-directory .directory-article-grid .home-card-meta a{
    display:none;
  }

  .directory-load-more{
    margin-top:26px;
  }
}

@media(max-width:390px){
  .public-directory .directory-article-grid .home-article-card{
    grid-template-columns:92px minmax(0,1fr);
  }

  .public-directory .directory-article-grid .home-card-media,
  .public-directory .directory-article-grid .home-card-media img,
  .public-directory .directory-article-grid .home-card-media-empty{
    min-height:108px;
  }
}


/* Phase 5D-A newsletter signup */
.cache-newsletter-signup{
  max-width:1096px;
  margin:46px auto 0;
  padding:38px;
  border:1px solid var(--line);
  border-radius:26px;
  background:#eef7f6;
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:42px;
  align-items:center;
}
.cache-newsletter-copy h2{
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(1.9rem,3vw,2.8rem);
  line-height:1.06;
  letter-spacing:-.025em;
  margin:0 0 12px;
}
.cache-newsletter-copy>p:not(.eyebrow){margin:0;color:var(--muted);line-height:1.65}
.cache-newsletter-form{display:grid;gap:13px}
.cache-newsletter-fields{display:grid;grid-template-columns:.8fr 1.2fr;gap:10px}
.cache-newsletter-fields label{display:grid;gap:6px;font-size:12px;font-weight:800;color:var(--ink)}
.cache-newsletter-fields label span{display:flex;gap:5px;align-items:baseline}
.cache-newsletter-fields small{font-weight:600;color:var(--muted)}
.cache-newsletter-fields input{
  width:100%;
  min-width:0;
  height:48px;
  border:1px solid #bfd0d1;
  border-radius:12px;
  background:#fff;
  padding:0 13px;
  font:inherit;
  color:var(--ink);
}
.cache-newsletter-fields input:focus{outline:2px solid rgba(5,104,111,.18);border-color:var(--teal)}
.cache-newsletter-consent{display:flex;align-items:flex-start;gap:9px;color:var(--muted);font-size:12px;line-height:1.45}
.cache-newsletter-consent input{margin-top:2px;accent-color:var(--teal)}
.cache-newsletter-form button{
  justify-self:start;
  min-height:44px;
  padding:0 18px;
  border:0;
  border-radius:999px;
  background:var(--teal);
  color:#fff;
  font-weight:850;
  cursor:pointer;
}
.cache-newsletter-form button:disabled{opacity:.65;cursor:wait}
.cache-newsletter-status{min-height:1.35em;margin:0;font-size:13px;font-weight:750}
.cache-newsletter-status.is-success{color:#05686F}
.cache-newsletter-status.is-error{color:#9b2c2c}
.cache-newsletter-signup-compact{
  max-width:none;
  margin-top:36px;
  padding:28px;
  grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
}
.cache-newsletter-signup-compact .cache-newsletter-copy h2{font-size:clamp(1.6rem,2.6vw,2.15rem)}
@media(max-width:760px){
  .cache-newsletter-signup,.cache-newsletter-signup-compact{
    grid-template-columns:1fr;
    gap:22px;
    padding:26px 20px;
    margin-top:34px;
    border-radius:20px;
  }
  .cache-newsletter-fields{grid-template-columns:1fr}
  .cache-newsletter-form button{width:100%}
}


/* Phase 5D-A mobile polish — presentation only. Desktop newsletter styling is preserved. */
@media(max-width:760px){
  .cache-newsletter-signup{
    gap:17px;
    padding:22px 18px;
    margin-top:30px;
    border-radius:20px;
  }

  .cache-newsletter-signup .cache-newsletter-copy h2{
    font-size:clamp(1.75rem,8.3vw,2.2rem);
    line-height:1.04;
    margin-bottom:9px;
  }

  .cache-newsletter-signup .cache-newsletter-copy>p:not(.eyebrow){
    font-size:.96rem;
    line-height:1.52;
  }

  .cache-newsletter-signup .eyebrow{
    margin-bottom:11px;
  }

  .cache-newsletter-form{
    gap:10px;
  }

  .cache-newsletter-fields{
    gap:9px;
  }

  .cache-newsletter-fields label{
    gap:5px;
    font-size:11.5px;
  }

  .cache-newsletter-fields input{
    height:44px;
    padding:0 12px;
    border-radius:11px;
  }

  .cache-newsletter-consent{
    gap:8px;
    font-size:11.5px;
    line-height:1.38;
  }

  .cache-newsletter-consent input{
    width:17px;
    height:17px;
    flex:0 0 17px;
    margin-top:1px;
  }

  .cache-newsletter-form button{
    min-height:42px;
  }

  .cache-newsletter-status{
    font-size:12px;
    min-height:1.2em;
  }

  .cache-newsletter-signup-compact{
    gap:14px;
    padding:20px 18px;
    margin-top:28px;
  }

  .cache-newsletter-signup-compact .cache-newsletter-copy h2{
    font-size:clamp(1.55rem,7.3vw,1.95rem);
    margin-bottom:7px;
  }

  .cache-newsletter-signup-compact .cache-newsletter-copy>p:not(.eyebrow){
    font-size:.92rem;
    line-height:1.45;
  }

  .cache-newsletter-signup-compact .eyebrow{
    margin-bottom:9px;
  }

  .cache-newsletter-signup-compact .cache-newsletter-form{
    gap:9px;
  }

  .cache-newsletter-signup-compact .cache-newsletter-fields input{
    height:42px;
  }

  .cache-newsletter-signup-compact .cache-newsletter-form button{
    min-height:40px;
  }
}


/* Phase 5D-A final homepage mobile compactness — presentation only. */
@media(max-width:760px){
  .cache-newsletter-signup:not(.cache-newsletter-signup-compact){
    gap:14px;
    padding:18px 16px 16px;
    margin-top:26px;
  }

  .cache-newsletter-signup:not(.cache-newsletter-signup-compact) .cache-newsletter-copy h2{
    font-size:clamp(1.42rem,6.7vw,1.78rem);
    line-height:1.03;
    margin-bottom:7px;
  }

  .cache-newsletter-signup:not(.cache-newsletter-signup-compact) .cache-newsletter-copy>p:not(.eyebrow){
    font-size:.88rem;
    line-height:1.42;
  }

  .cache-newsletter-signup:not(.cache-newsletter-signup-compact) .eyebrow{
    margin-bottom:8px;
  }

  .cache-newsletter-signup:not(.cache-newsletter-signup-compact) .cache-newsletter-form{
    gap:9px;
  }

  .cache-newsletter-signup:not(.cache-newsletter-signup-compact) .cache-newsletter-status{
    min-height:0;
    margin-top:-2px;
  }
}


/* Phase 5D-A desktop newsletter headline refinement — 35% smaller, homepage only. */
@media(min-width:761px){
  .cache-newsletter-signup:not(.cache-newsletter-signup-compact) .cache-newsletter-copy h2{
    font-size:clamp(1.25rem,1.95vw,1.82rem);
  }
}


/* Homepage topic cards — deep CACHE teal on desktop and mobile.
   Scoped to the homepage Topics section so dedicated Topics directory cards remain unchanged. */
.home-topics .topic-card{
  background:#05686F;
  border-color:#05686F;
  color:#fff;
  box-shadow:0 10px 26px rgba(5,104,111,.12);
}
.home-topics .topic-card span{
  color:#fff;
}
.home-topics .topic-card small{
  color:#B9E5E3;
}
.home-topics .topic-card:hover{
  background:#045A60;
  border-color:#045A60;
  box-shadow:0 16px 34px rgba(5,104,111,.2);
}
.home-topics .topic-card:focus-visible{
  outline:3px solid rgba(5,104,111,.22);
  outline-offset:3px;
}

/* Phase 7D — branded public 404 */
.public-not-found{min-height:calc(100vh - 190px);display:grid;place-items:center;padding:clamp(52px,8vw,104px) 24px;background:linear-gradient(180deg,#f7fbfb 0%,#fff 100%)}
.public-not-found-card{width:min(820px,100%);text-align:center;padding:clamp(38px,7vw,72px);border:1px solid var(--line);border-radius:32px;background:#fff;box-shadow:0 20px 60px rgba(18,54,58,.07)}
.public-not-found-code{font-family:Georgia,"Times New Roman",serif;font-size:clamp(5rem,13vw,9rem);line-height:.85;font-weight:700;color:#dceced;letter-spacing:-.05em;margin-bottom:24px}
.public-not-found-card .eyebrow{margin-bottom:14px}
.public-not-found-card h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.25rem,6vw,4.5rem);line-height:1.02;margin:0;color:var(--ink)}
.public-not-found-copy{max-width:610px;margin:22px auto 0;color:var(--muted);font-size:1.05rem;line-height:1.7}
.public-not-found-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:32px}
.public-not-found-actions .primary-link,.public-not-found-actions .secondary-link{min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:0 20px;border-radius:14px;text-decoration:none;font:inherit;font-weight:850;cursor:pointer}
.public-not-found-actions .secondary-link{border:1px solid #c8d8d9;background:#fff;color:var(--teal-dark)}
.public-not-found-actions .secondary-link:hover{background:var(--soft)}
.public-not-found-search{appearance:none}
@media(max-width:600px){.public-not-found{padding:42px 18px}.public-not-found-card{padding:38px 22px;border-radius:24px}.public-not-found-actions{display:grid}.public-not-found-actions .primary-link,.public-not-found-actions .secondary-link{width:100%}}

/* Phase 8C final: dedicated Topics directory uses the same CACHE teal language as homepage Topics. */
.directory-topic-grid .topic-card{background:#05686F;border-color:#05686F;color:#fff;box-shadow:0 10px 26px rgba(5,104,111,.12)}
.directory-topic-grid .topic-card span{color:#fff}.directory-topic-grid .topic-card p{color:#d8eeee}.directory-topic-grid .topic-card small{color:#B9E5E3}
.directory-topic-grid .topic-card:hover{background:#045A60;border-color:#045A60;box-shadow:0 16px 34px rgba(5,104,111,.2)}

/* Phase 14 — editable public company/legal pages */
.public-home-footer>div{flex-wrap:wrap}
.public-info-page{max-width:980px;margin:0 auto;padding:clamp(58px,8vw,100px) clamp(22px,5vw,54px) 90px}
.public-info-hero{max-width:800px;margin-bottom:42px}.public-info-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.7rem,6vw,5rem);line-height:1.02;letter-spacing:-.04em;margin:0}.public-info-intro{font-size:1.04rem;line-height:1.72;color:#334047;margin:18px 0 0}.public-info-date{margin:18px 0 0;color:#718087;font-size:.92rem;font-weight:700}.public-info-content{max-width:780px}.public-info-content p{font-size:1.02rem;line-height:1.82;color:#334047;margin:0 0 24px;white-space:normal}.public-contact-card{margin-top:34px;padding:24px;border:1px solid var(--line);border-radius:20px;background:var(--soft);display:flex;flex-direction:column;gap:8px}.public-contact-card a{color:var(--teal);font-weight:800}.cache-newsletter-consent a{color:inherit;text-decoration:underline;text-underline-offset:2px}

/* Phase 14 correction: public information pages, contact, footer and privacy controls. */
.public-info-hero h1{font-size:clamp(2.35rem,4.6vw,4rem)}
.public-info-content h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.65rem,3vw,2.25rem);margin:38px 0 14px;line-height:1.15}.public-info-image{margin:30px 0}.public-info-image img{display:block;width:100%;height:auto;border-radius:22px}.public-info-image figcaption{margin-top:8px;color:#6a787d;font-size:.88rem}
.public-contact-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.75fr);gap:28px;margin-top:48px}.public-contact-form-card,.public-contact-info{border:1px solid var(--line);border-radius:24px;background:#fff;padding:clamp(22px,4vw,34px);box-shadow:0 14px 36px rgba(8,55,59,.06)}.public-contact-form-card h2,.public-contact-info h2{font-family:Georgia,"Times New Roman",serif;margin:4px 0 22px}.public-contact-form-card h2{font-size:1.8rem}.public-contact-info h2{font-size:1.48rem;line-height:1.12}.cache-contact-form{display:grid;gap:17px}.contact-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.cache-contact-form label{display:grid;gap:7px;font-weight:750;color:#26363b}.cache-contact-form input,.cache-contact-form select,.cache-contact-form textarea{width:100%;box-sizing:border-box;border:1px solid #cdd9da;border-radius:13px;background:#fff;padding:12px 14px;font:inherit;color:#1f3035;outline:none;transition:border-color .15s,box-shadow .15s}.cache-contact-form input:focus,.cache-contact-form select:focus,.cache-contact-form textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(5,104,111,.12)}.cache-contact-form textarea{resize:vertical}.contact-submit{justify-self:start;border:0;border-radius:999px;background:var(--teal);color:#fff;font-weight:850;padding:13px 22px;cursor:pointer}.contact-submit:disabled{opacity:.6;cursor:wait}.contact-form-status{min-height:1.4em;margin:0;font-weight:700}.contact-form-status.is-success{color:#08735f}.contact-form-status.is-error{color:#a43b32}.contact-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.public-contact-info{align-self:start;display:grid;gap:22px}.public-contact-info>div{display:grid;gap:6px;padding-bottom:18px;border-bottom:1px solid var(--line)}.public-contact-info>div:last-child{border-bottom:0;padding-bottom:0}.public-contact-info strong{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:#6a777b}.public-contact-info p{margin:0;line-height:1.65}.public-contact-info a{color:var(--teal);font-weight:750}.contact-product-note{font-size:.92rem;color:#526267}
.public-home-footer{display:block}.public-footer-main{display:grid;grid-template-columns:auto 1fr;column-gap:18px;align-items:center}.public-footer-main>p{grid-column:2}.public-footer-nav,.public-footer-legal{display:flex;flex-wrap:wrap;gap:14px 20px}.public-footer-main .public-footer-nav{grid-column:1/-1;margin-top:18px}.public-footer-legal{margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}.public-footer-legal a,.public-footer-legal button{font:inherit;color:inherit;text-decoration:none;background:none;border:0;padding:0;cursor:pointer}.public-footer-legal a:hover,.public-footer-legal button:hover{text-decoration:underline}.public-footer-copyright{margin:16px 0 0!important;font-size:.86rem!important;color:#6d797d!important}
.cache-cookie-banner{position:fixed;z-index:10000;left:18px;right:18px;bottom:18px;max-width:1120px;margin:auto;border:1px solid #d7e1e2;border-radius:22px;background:#fff;box-shadow:0 18px 60px rgba(15,45,49,.18);padding:20px 22px;display:flex;justify-content:space-between;gap:24px;align-items:center}.cache-cookie-banner strong{font-size:1.05rem}.cache-cookie-banner p{margin:5px 0 6px;color:#526267;line-height:1.5}.cache-cookie-banner a{color:var(--teal);font-weight:700}.cache-cookie-banner-actions,.cache-cookie-actions{display:flex;gap:9px;flex-wrap:wrap}.cookie-primary,.cookie-secondary{border-radius:999px;padding:10px 16px;font:inherit;font-weight:800;cursor:pointer}.cookie-primary{border:1px solid var(--teal);background:var(--teal);color:#fff}.cookie-secondary{border:1px solid #c9d6d7;background:#fff;color:#233438}.cache-cookie-layer{position:fixed;z-index:10001;inset:0;background:rgba(12,29,31,.45);display:grid;place-items:center;padding:20px}.cache-cookie-layer[hidden]{display:none}.cache-cookie-dialog{position:relative;width:min(620px,100%);max-height:88vh;overflow:auto;background:#fff;border-radius:24px;padding:28px;box-shadow:0 24px 80px rgba(0,0,0,.22)}.cache-cookie-dialog h2{font-family:Georgia,"Times New Roman",serif;font-size:2rem;margin:5px 0 10px}.cache-cookie-close{position:absolute;right:18px;top:16px;border:0;background:#edf3f3;border-radius:50%;width:36px;height:36px;font-size:1.4rem;cursor:pointer}.cache-cookie-option{display:flex;justify-content:space-between;gap:18px;align-items:center;border:1px solid #dce5e6;border-radius:16px;padding:16px;margin-top:14px}.cache-cookie-option div{display:grid;gap:4px}.cache-cookie-option small{color:#637176;line-height:1.45}.cache-cookie-option input{width:20px;height:20px;accent-color:var(--teal)}.cache-cookie-actions{margin-top:22px}.cache-cookie-more{margin:16px 0 0}.cache-cookie-more a{color:var(--teal);font-weight:700}
@media(max-width:760px){.public-info-hero h1{font-size:clamp(2.35rem,9vw,3.4rem)}.public-contact-layout{grid-template-columns:1fr}.contact-form-grid{grid-template-columns:1fr}.cache-cookie-banner{align-items:stretch;flex-direction:column}.public-footer-main{display:block}.public-footer-main>p{margin-top:10px}.public-footer-nav{margin-top:16px}}

/* Phase 14.2 public-page correction */
.public-home-footer{max-width:1180px;margin-left:auto;margin-right:auto}.public-footer-main{grid-template-columns:auto minmax(0,1fr) auto;column-gap:18px}.public-footer-main>p{grid-column:2;margin:0}.public-footer-main .public-footer-nav{grid-column:3;margin-top:0;justify-content:flex-end}.public-footer-legal{display:grid;grid-template-columns:1fr auto;align-items:center}.public-footer-legal::before{content:attr(data-copyright);font-size:.86rem;color:#6d797d}.public-footer-copyright{display:none}.public-contact-side{display:grid;gap:18px;align-self:start}.public-product-support{margin:0}.cache-cookie-banner-compact{max-width:780px;padding:15px 18px}.cache-cookie-banner-compact p{font-size:.92rem}.cache-cookie-banner-compact .cache-cookie-banner-actions{flex-wrap:nowrap}
@media(max-width:900px){.public-footer-main{grid-template-columns:auto 1fr}.public-footer-main .public-footer-nav{grid-column:1/-1;margin-top:16px;justify-content:flex-start}.public-footer-legal{grid-template-columns:1fr;gap:14px}.public-footer-legal::before{order:2}}
@media(max-width:760px){.cache-cookie-banner-compact{left:10px;right:10px;bottom:10px;padding:14px 16px}.cache-cookie-banner-compact .cache-cookie-banner-actions{justify-content:flex-end}.public-contact-side{gap:14px}}
/* Phase 15.2 dynamic page blocks */
.dynamic-page-content{display:grid;gap:22px}.dynamic-rich-text{line-height:1.75}.dynamic-image-text{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);gap:28px;align-items:center}.dynamic-image-text img{width:100%;border-radius:18px}.dynamic-cta,.dynamic-newsletter{padding:28px;border-radius:20px}.dynamic-cta{background:#07383d;color:#fff}.dynamic-cta h2{color:#fff}.dynamic-cta .dynamic-rich-text{color:#d8e7e8}.dynamic-newsletter{background:#f1f8f7}.dynamic-callout{padding:20px 22px;border-left:4px solid #168778;background:#f5faf9;border-radius:12px}.dynamic-faq{border:1px solid #dbe6e7;border-radius:14px;padding:15px 18px}.dynamic-faq summary{font-weight:750;cursor:pointer}.dynamic-divider{border:0;border-top:1px solid #dce5e7;margin:10px 0}.dynamic-guide-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.dynamic-guide-list a{display:grid;gap:6px;padding:16px;border:1px solid #dce6e8;border-radius:14px;text-decoration:none;color:inherit}.dynamic-guide-list span{color:#607277;font-size:.94rem}@media(max-width:720px){.dynamic-image-text,.dynamic-guide-list{grid-template-columns:1fr}}
/* Phase 15.2.3 — Dynamic Page public refinements */
.dynamic-public-page .public-info-hero h1{font-size:clamp(2.35rem,5vw,3.25rem);line-height:1.03;max-width:900px}.dynamic-page-content .dynamic-section-heading{font-size:clamp(1.8rem,3.4vw,2.45rem);line-height:1.12;margin-bottom:4px}.dynamic-page-content .dynamic-rich-text>p:first-child{margin-top:0}.dynamic-page-content .dynamic-rich-text>p:last-child{margin-bottom:0}.dynamic-spacer.small{height:20px}.dynamic-spacer.medium{height:44px}.dynamic-spacer.large{height:76px}.dynamic-guide-card{overflow:hidden;padding:0!important;grid-template-rows:auto 1fr!important}.dynamic-guide-card>img{width:100%;height:190px;object-fit:cover;display:block}.dynamic-guide-copy{display:grid;gap:7px;padding:16px}.dynamic-guide-copy>strong{color:#142f35;font-size:1rem}.dynamic-guide-copy>span{color:#607277;font-size:.94rem}.dynamic-newsletter .cache-newsletter-signup h2{font-size:clamp(1.8rem,3.5vw,2.5rem)}

/* Phase 15.2.4 narrow Page Builder public refinements */
.dynamic-public-page .public-info-hero h1{font-size:clamp(2rem,4.2vw,2.85rem)}
.dynamic-cta-actions{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:16px}
.dynamic-guide-placeholder{height:190px;display:grid!important;place-items:center;background:#eef7f6;color:#168778!important;font-weight:800;letter-spacing:.12em;font-size:1rem!important}

/* Phase 15.2.5 dynamic rich-text fidelity */
.dynamic-rich-text blockquote{margin:1.35em 0;padding:12px 16px 12px 20px;border-left:4px solid #168778;background:#f1f8f7;color:#344d53;font-style:italic;border-radius:0 12px 12px 0}.dynamic-cta .dynamic-rich-text blockquote{background:rgba(255,255,255,.08);color:#eef7f7;border-left-color:#9ed8da}.dynamic-rich-text sup{vertical-align:super;font-size:.75em;line-height:0}.dynamic-rich-text sub{vertical-align:sub;font-size:.75em;line-height:0}.dynamic-rich-text s{text-decoration:line-through}.article-related-media-placeholder.dynamic-guide-placeholder{height:190px;display:flex!important;align-items:center;justify-content:center;background:#e8f5f5;border-bottom:1px solid #d9e4e5;color:#168778!important}.article-related-media-placeholder.dynamic-guide-placeholder span{font:850 12px/1 Inter,ui-sans-serif,system-ui,sans-serif;letter-spacing:.16em;color:#168778!important}

/* Phase 15.2.6 — Dynamic Page Builder rendering fidelity */
.dynamic-page-content .dynamic-section-heading,.dynamic-page-content .dynamic-block-heading,.dynamic-page-content .dynamic-image-text h2,.dynamic-page-content .dynamic-cta h2{font-size:clamp(1.45rem,2.45vw,1.9rem);line-height:1.18;margin-top:0}.dynamic-page-content .dynamic-newsletter .cache-newsletter-signup h2{font-size:clamp(1.45rem,2.45vw,1.9rem)}
.dynamic-image-text.image-right img{order:2}.dynamic-image-text.image-right>div{order:1}
.dynamic-rich-text strong,.dynamic-rich-text b{font-weight:700}.dynamic-rich-text em,.dynamic-rich-text i{font-style:italic}.dynamic-rich-text u{text-decoration:underline}.dynamic-rich-text s,.dynamic-rich-text strike{text-decoration:line-through}.dynamic-rich-text sup{vertical-align:super;font-size:.75em;line-height:0}.dynamic-rich-text sub{vertical-align:sub;font-size:.75em;line-height:0}
.dynamic-video{margin:0;display:grid;gap:10px}.dynamic-video video{display:block;width:100%;max-height:680px;border-radius:18px;background:#0a1518}.dynamic-video-frame{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:18px;background:#0a1518}.dynamic-video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.dynamic-video figcaption{color:#607277;font-size:.94rem;line-height:1.55}
@media(max-width:720px){.dynamic-image-text.image-right img,.dynamic-image-text.image-right>div{order:initial}}

/* Phase 15.2.7: Pages-only faithful indent and established CACHE placeholder */
.dynamic-rich-text .page-indent{margin-left:2rem;padding:0;border:0;background:transparent;font-style:normal}
.dynamic-article-collection .article-related-media-placeholder.dynamic-guide-placeholder span{font:850 22px/1 Inter,ui-sans-serif,system-ui,sans-serif;letter-spacing:.16em;text-decoration:underline;text-underline-offset:4px;color:#087b80!important}

/* Page Builder CTA copy inherits the established light-on-teal treatment.
   Existing homepage CTA and primary/secondary button rules are unchanged. */
.dynamic-page-content .dynamic-cta .dynamic-rich-text p,
.dynamic-page-content .dynamic-cta .dynamic-rich-text li{color:#d8e7e8}

/* Consistent editorial image frames and compact featured metadata. */
.home-featured .featured-card .home-card-copy .home-card-meta{margin-top:16px}
.home-featured .featured-card .home-card-media{position:relative;min-height:320px;overflow:hidden}
.home-featured .featured-card .home-card-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.public-directory .directory-article-grid .home-article-card{display:flex;flex-direction:column}
.public-directory .directory-article-grid .home-card-media{position:relative;display:block;aspect-ratio:16/9;min-height:0;overflow:hidden}
.public-directory .directory-article-grid .home-card-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.public-directory .directory-article-grid .home-card-copy{display:flex;flex:1;flex-direction:column}
.public-directory .directory-article-grid .home-card-meta{margin-top:auto}
@media(max-width:700px){
 .home-featured .featured-card .home-card-media{min-height:0;aspect-ratio:16/9}
 .public-directory .directory-article-grid .home-article-card{display:grid;grid-template-columns:104px minmax(0,1fr)}
 .public-directory .directory-article-grid .home-card-media{height:100%!important;min-height:112px!important;aspect-ratio:auto!important}
 .public-directory .directory-article-grid .home-card-media img{height:100%!important;min-height:0}
 .public-directory .directory-article-grid .home-card-copy{justify-content:center}
 .public-directory .directory-article-grid .home-card-meta{margin-top:0}
}
@media(max-width:390px){.public-directory .directory-article-grid .home-article-card{grid-template-columns:92px minmax(0,1fr)}}

/* Narrow correction to existing business tool CTAs; content and primary design stay intact. */
.cache-business-tool-page .dynamic-cta-actions{flex-direction:row;flex-wrap:wrap;align-items:center;gap:12px 16px}
.cache-business-tool-page .dynamic-cta-actions .dynamic-secondary-cta{background:transparent;color:#fff;border:1px solid #e1eeed}
.cache-business-tool-page .dynamic-cta-actions .dynamic-secondary-cta:hover{background:rgba(255,255,255,.08);color:#fff}
.public-info-page[data-info-page="contact"] .public-info-hero h1{font-size:clamp(2rem,4vw,3rem);line-height:1.15}

