/* Life & Legacy landing page — local unpublished build.
   Reuses shared style.css tokens/typography, header and footer. Palette:
   navy #141D2E, ivory #F6F3ED, stone #EAE6DD, sage text #526459, brass #B09568, rule #D9D5CB.
   Desktop 1440 content 1280 (page margins 80), mobile 390 gutters 24. Page-scoped (.life-legacy)
   so no other route is affected. */

.life-legacy{background:var(--ivory);--ll-sage:#526459;--ll-rule:#d9d5cb}

/* ---- layout container: 24 mobile / 48 tablet / 80 desktop, content capped at 1280 ---- */
.life-legacy .ll-section{padding-block:clamp(52px,6.5vw,88px);padding-inline:24px}
.life-legacy .ll-inner{width:100%;max-width:1280px;margin-inline:auto}
@media(min-width:768px){.life-legacy .ll-section{padding-inline:48px}}
@media(min-width:1200px){.life-legacy .ll-section{padding-inline:80px}}

/* ---- shared type within the page ---- */
.life-legacy .eyebrow{margin-bottom:16px;font-weight:600}
.life-legacy .ll-h2{font-size:clamp(38px,3.7vw,52px);line-height:1.1;margin:0 0 22px}
.life-legacy .ll-deck{font-size:clamp(17px,1.35vw,19px);line-height:1.55;color:var(--navy)}
.life-legacy .ll-caption{font-size:10px;letter-spacing:.14em;color:var(--ll-sage);margin-top:14px}
.life-legacy .ll-rule{border:0;border-top:1px solid var(--ll-rule);margin:24px 0}
.life-legacy .ll-subhead{font-size:clamp(22px,1.8vw,26px);line-height:1.15;margin:0 0 10px}
.life-legacy .ll-quiet-links{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:22px}
.life-legacy .ll-quiet-links .text-link{font-size:14px;font-weight:600}

/* ---- 01 hero / family editorial (copy left, family photograph right) ---- */
.life-legacy .ll-hero{background:var(--ivory);padding-block:clamp(40px,5.5vw,80px)}
.life-legacy .ll-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,4vw,56px);align-items:start}
.life-legacy .ll-hero-copy{display:flex;flex-direction:column;align-items:flex-start;gap:22px;min-width:0}
.life-legacy .ll-hero-copy>*{margin:0}
.life-legacy .ll-hero h1{font-size:clamp(45px,4.6vw,64px);line-height:1.1;margin:0}
.life-legacy .ll-hero .ll-deck{max-width:46ch}
.life-legacy .ll-hero-copy .button{max-width:100%;text-align:left}
.life-legacy .ll-hero-copy .text-link{font-size:13px;font-weight:600}
.life-legacy .ll-hero-figure{margin:0;min-width:0}
.life-legacy .ll-hero-figure img{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center;background:var(--stone)}

/* ---- 02 priorities / four choices and one live panel ---- */
.life-legacy .ll-priorities{background:var(--stone)}
.life-legacy .ll-intro{font-size:17px;line-height:1.55;max-width:850px;margin:0 0 18px}
.life-legacy .ll-helper{font-size:13px;line-height:1.55;color:var(--ll-sage);margin:0 0 24px}
.life-legacy .ll-priority-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:24px}
.life-legacy .ll-priority{display:flex;align-items:flex-start;text-align:left;min-height:84px;padding:20px;font-size:16px;line-height:1.55;color:var(--navy);background:var(--ivory);border:1px solid var(--ll-rule);transition:background .2s,color .2s,border-color .2s}
.life-legacy .ll-priority:hover{border-color:var(--navy)}
.life-legacy .ll-priority:focus-visible{outline:2px solid var(--brass);outline-offset:3px}
.life-legacy .ll-priority[aria-pressed=true]{background:var(--navy);color:var(--ivory);border-color:var(--navy)}

.life-legacy .ll-panel{background:var(--navy);color:var(--ivory);padding:clamp(28px,3.4vw,48px);display:flex;flex-direction:column;gap:20px}
.life-legacy .ll-kicker{font-size:11px;letter-spacing:.14em;font-weight:600;color:var(--brass);margin:0}
.life-legacy .ll-panel-title{font-size:clamp(32px,3vw,44px);line-height:1.12;color:var(--ivory);margin:0;max-width:950px}
.life-legacy .ll-panel-body{font-size:17px;line-height:1.55;color:#e8e5dd;margin:0;max-width:950px}
.life-legacy .ll-questions{list-style:none;margin:0;padding:0;border-top:1px solid rgba(217,213,203,.32)}
.life-legacy .ll-questions li{font-size:16px;line-height:1.55;color:var(--ivory);padding:14px 0;border-bottom:1px solid rgba(217,213,203,.32)}
.life-legacy .ll-takeaway{font-size:15px;line-height:1.55;color:#d9d5cb;margin:0;max-width:950px}
.life-legacy .ll-panel-cta{align-self:flex-start;max-width:100%}

/* ---- 03 coverage and intentions / connected editorial (desk image LEFT, copy RIGHT) ---- */
.life-legacy .ll-editorial{background:var(--ivory);padding-block:clamp(52px,6vw,88px)}
.life-legacy .ll-editorial-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,4.5vw,64px);align-items:start}
.life-legacy .ll-editorial-figure{margin:0;min-width:0}
.life-legacy .ll-editorial-figure img{width:100%;aspect-ratio:3/2;object-fit:cover;object-position:center;background:var(--stone)}
.life-legacy .ll-editorial-copy{min-width:0}
.life-legacy .ll-editorial-copy .ll-h2{font-size:clamp(36px,3.3vw,46px);margin:0 0 18px}
.life-legacy .ll-editorial-copy .eyebrow{margin-bottom:16px}
.life-legacy .ll-lead{font-size:17px;line-height:1.55;margin:0}
.life-legacy .ll-editorial-copy p{font-size:16px;line-height:1.55;margin:0}

/* ---- 03b next-generation planning (navy feature after the connected editorial split) ---- */
.life-legacy .ll-advanced{margin-top:clamp(40px,5vw,72px);padding:clamp(28px,4vw,52px);scroll-margin-top:calc(var(--header-space) + 26px)}
.life-legacy .ll-advanced-h2{font-size:clamp(30px,3.2vw,46px);line-height:1.1;color:var(--ivory);margin:0 0 18px;max-width:22ch}
.life-legacy .ll-advanced-lead{font-size:clamp(16px,1.4vw,18px);line-height:1.6;color:#e8e5dd;max-width:64ch;margin:0 0 clamp(26px,3vw,38px)}
.life-legacy .ll-advanced-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,3.5vw,56px);border-top:1px solid #334053;padding-top:clamp(22px,2.6vw,32px)}
.life-legacy .ll-advanced-card h3{font-size:clamp(22px,1.8vw,27px);line-height:1.15;color:var(--ivory);margin:0 0 10px}
.life-legacy .ll-advanced-card p{font-size:16px;line-height:1.65;color:#d9d5cb;margin:0}
.life-legacy .ll-advanced-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:clamp(26px,3vw,38px)}
.life-legacy .ll-advanced-actions .button{max-width:100%;text-align:left}
.life-legacy .ll-advanced-actions .text-link{color:var(--ivory);font-size:13.5px;font-weight:600}
.life-legacy .ll-advanced-note{font-size:12.5px;line-height:1.7;color:#c9c4b8;margin:16px 0 0}
.life-legacy .ll-next-hint{font-size:14px;line-height:1.7;color:var(--ll-sage);margin:22px 0 0}
.life-legacy .ll-next-hint .text-link{font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:4px}

/* ---- 04 FAQ / compact native disclosures ---- */
.life-legacy .ll-faq{background:var(--stone)}
.life-legacy .ll-faq-inner{max-width:840px}
.life-legacy .ll-faq .ll-h2{font-size:clamp(38px,3.6vw,50px)}
.life-legacy .ll-faq-list{margin-top:8px}
.life-legacy .ll-faq-item{border-top:1px solid #c9c4b8}
.life-legacy .ll-faq-item:last-child{border-bottom:1px solid #c9c4b8}
.life-legacy .ll-faq-item summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:baseline;gap:24px;padding:22px 0;font-family:'Libre Caslon Display',Georgia,serif;font-size:clamp(22px,2vw,28px);line-height:1.25}
.life-legacy .ll-faq-item summary::-webkit-details-marker{display:none}
.life-legacy .ll-faq-item summary:focus-visible{outline:2px solid var(--brass);outline-offset:3px}
.life-legacy .ll-plus{font-family:'Libre Franklin',Arial,sans-serif;font-size:22px;line-height:1;color:var(--ll-sage);transition:transform .2s}
.life-legacy .ll-faq-item[open] .ll-plus{transform:rotate(45deg)}
.life-legacy .ll-faq-item p{font-size:16px;line-height:1.7;max-width:760px;margin:0 0 24px;padding-right:24px}
.life-legacy .ll-faq-item p a{text-decoration:underline;text-underline-offset:3px}

/* ---- 05 Blueprint / direct next step ---- */
.life-legacy .ll-close{padding-block:clamp(56px,6.5vw,88px)}
.life-legacy .ll-close-title{font-size:clamp(40px,4.3vw,60px);line-height:1.08;color:var(--ivory);margin:0 0 26px;max-width:900px}
.life-legacy .ll-close-lead{font-size:17px;line-height:1.55;color:#d9d5cb;max-width:750px;margin:0 0 28px}
.life-legacy .ll-actions{display:flex;flex-wrap:wrap;align-items:center;gap:24px}
.life-legacy .ll-actions .button{max-width:100%;text-align:left}
.life-legacy .ll-actions .text-link{font-size:14px;color:var(--ivory)}
.life-legacy .ll-fine{font-size:12px;line-height:1.8;color:#d9d5cb;margin-top:26px}

/* ---- footer: existing WHITE reversed CLG mark (same asset as the homepage/retirement footer) ---- */
.life-legacy footer .footer-brand{display:block;width:52px;margin-bottom:22px}
.life-legacy footer .footer-brand img{width:100%;height:auto;object-fit:contain}

/* ---- responsive: comfortably stack before the desktop split gets cramped ---- */
@media(max-width:900px){
  .life-legacy .ll-hero-grid{grid-template-columns:1fr;gap:28px;align-items:start}
  .life-legacy .ll-editorial-grid{grid-template-columns:1fr;gap:30px}
}
@media(max-width:760px){
  .life-legacy .ll-section{padding-block:52px}
  .life-legacy .ll-hero{padding-block:40px}
  .life-legacy .ll-hero h1{font-size:clamp(38px,11.5vw,45px)}
  .life-legacy .ll-hero-figure img{aspect-ratio:3/2}
  .life-legacy .ll-priority-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .life-legacy .ll-priority{font-size:14px;min-height:84px;padding:16px}
  .life-legacy .ll-editorial{background:var(--ivory)}
  .life-legacy .ll-advanced-cols{grid-template-columns:1fr;gap:26px}
  .life-legacy .ll-advanced-actions .button{width:100%;justify-content:space-between}
  .life-legacy .ll-actions{flex-direction:column;align-items:stretch}
  .life-legacy .ll-actions .button{justify-content:space-between}
}
@media(max-width:420px){
  .life-legacy .ll-priority{padding:14px}
}

/* ---- shared header mobile menu (homepage/retirement pattern, scoped to this page)
   Desktop keeps the inline horizontal nav; at <=760px the nav folds into a native
   details/summary Menu control (keyboard-operable; aria-expanded/Escape handled in
   life-legacy.js). Mirrors the approved retirement header menu. ---- */
.life-legacy .cta-mini{display:none}
.life-legacy .menu-drawer{display:none}
@media(max-width:760px){
  .life-legacy .menu-drawer{display:block;position:relative;margin-left:auto}
  .life-legacy .menu-summary{display:flex;align-items:center;min-height:44px;padding:0 13px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#141d2e;background:rgba(246,243,237,.6);border:1px solid rgba(20,29,46,.35);border-radius:3px;cursor:pointer;list-style:none}
  .life-legacy .menu-summary::-webkit-details-marker{display:none}
  .life-legacy .menu-summary::after{content:"\25be";margin-left:8px;font-size:9px}
  .life-legacy .menu-drawer[open] .menu-summary::after{content:"\25b4"}
  .life-legacy .menu-drawer[open] .menu-summary{background:#f6f3ed}
  .life-legacy .menu-panel{position:absolute;right:0;top:calc(100% + 8px);min-width:230px;z-index:60;background:#f6f3ed;border:1px solid #d9d5cb;box-shadow:0 18px 40px rgba(20,29,46,.18)}
  .life-legacy .menu-panel nav{display:flex!important;flex-direction:column;gap:0}
  .life-legacy .menu-panel a{display:flex;align-items:center;min-height:48px;padding:0 20px;font-size:12px;color:#141d2e;text-decoration:none;border-bottom:1px solid #e5e0d6}
  .life-legacy .menu-panel a:last-child{border-bottom:0;font-weight:600}
  .life-legacy .menu-panel a:hover,.life-legacy .menu-panel a:focus-visible{background:#eae6dd}
}
/* Narrow phones: shorten the Blueprint CTA so brand, CTA and Menu never collide. */
@media(max-width:420px){
  .life-legacy .cta-full{display:none}
  .life-legacy .cta-mini{display:inline}
}
@media(max-width:355px){
  .life-legacy .menu-summary{padding-inline:11px}
}
