:root{--ink:#121212;--muted:#60656d;--gold:#b8872b;--gold2:#d6a84b;--cream:#f7f4ee;--line:#dedbd3;--green:#0b6b4f;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Inter,Arial,sans-serif;background:#fff;line-height:1.5}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - var(--max))/2));border-bottom:1px solid #eee;position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);z-index:20}.brand{font-weight:900;font-size:28px;letter-spacing:-1px;text-decoration:none;color:#111}.brand span{color:var(--gold)}nav{display:flex;align-items:center;gap:24px}nav a{color:#222;text-decoration:none;font-weight:700;font-size:14px}.ethos{color:var(--green)!important;font-size:19px!important}.nav-cta{background:#111;color:#fff!important;padding:13px 18px;border-radius:7px}.menu-toggle{display:none}.hero{max-width:var(--max);margin:0 auto;min-height:620px;padding:75px 24px;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:70px;background:radial-gradient(circle at 78% 33%,#f1e9dc 0,transparent 35%)}.eyebrow{font-size:13px;font-weight:900;letter-spacing:2px;color:var(--gold);margin:0 0 12px}.hero h1,.section-heading h2,.expert h2,.final-cta h2{font-family:Georgia,serif;font-size:60px;line-height:1.03;letter-spacing:-2px;margin:0 0 24px}.lead{font-size:21px;color:#3f4348;max-width:650px}.hero-actions,.final-cta>div:last-child{display:flex;gap:12px;margin:30px 0}.btn{display:inline-flex;justify-content:center;align-items:center;padding:16px 22px;border-radius:6px;font-weight:900;text-decoration:none;border:1px solid #111}.btn.primary{background:#111;color:#fff}.btn.secondary{background:#fff;color:#111}.mini-proof{display:flex;flex-wrap:wrap;gap:12px 24px;color:#555;font-size:14px;font-weight:700}.mini-proof span:before{content:'✓';color:var(--gold);margin-right:7px}.portrait-card{background:#111;border-radius:24px;overflow:hidden;box-shadow:0 25px 60px rgba(0,0,0,.18)}.portrait-card img{display:block;width:100%;aspect-ratio:4/4.6;object-fit:cover;object-position:center top}.portrait-meta{color:#fff;padding:20px 24px;display:grid}.portrait-meta strong{font-family:Georgia,serif;font-size:28px;color:var(--gold2)}.portrait-meta span{color:#ddd}.quote-shell{max-width:var(--max);margin:0 auto 40px;padding:42px;border-radius:18px;background:#f4f1eb;display:grid;grid-template-columns:280px 1fr;gap:36px}.quote-intro h2{font-family:Georgia,serif;font-size:36px;margin:0 0 10px}.quote-intro p{color:var(--muted)}.quote-form{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.quote-form label{font-size:13px;font-weight:900}.quote-form select,.quote-form input{width:100%;padding:15px;border:1px solid #cfcac0;border-radius:6px;background:#fff;margin-top:6px;font:inherit}.quote-form button{align-self:end}.privacy-note{grid-column:2;color:#666;font-size:12px;margin:0}.proof-strip{max-width:var(--max);margin:0 auto 110px;padding:36px 24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr)}.proof-strip div{padding:0 24px;border-right:1px solid var(--line);display:grid}.proof-strip div:last-child{border:0}.proof-strip strong{font-family:Georgia,serif;font-size:42px;color:var(--gold)}.proof-strip span{font-weight:700;color:#555}.section{max-width:var(--max);margin:0 auto;padding:80px 24px}.section-heading{max-width:760px;margin:0 auto 48px;text-align:center}.section-heading h2{font-size:48px}.section-heading>p:last-child{color:var(--muted);font-size:18px}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.product{padding:30px;border:1px solid var(--line);border-radius:10px;text-decoration:none;color:#111;min-height:260px;transition:.2s}.product:hover{transform:translateY(-5px);box-shadow:0 16px 30px rgba(0,0,0,.08);border-color:var(--gold)}.product>span{font-size:13px;font-weight:900;color:var(--gold)}.product h3{font-family:Georgia,serif;font-size:27px;margin:24px 0 8px}.product p{color:var(--muted)}.product b{display:block;margin-top:24px}.stories{background:#111;color:#fff;padding:100px max(24px,calc((100vw - var(--max))/2))}.section-heading.light h2{color:#fff}.section-heading.light>p:last-child{color:#bbb}.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.story-grid blockquote{margin:0;padding:30px;border:1px solid #363636;border-radius:10px;font-family:Georgia,serif;font-size:22px}.story-grid cite{display:block;margin-top:24px;font:14px Inter,Arial;color:#bbb}.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.steps li{padding:24px;border-top:3px solid var(--gold)}.steps li>span{display:inline-grid;place-items:center;width:38px;height:38px;background:#111;color:#fff;border-radius:50%;font-weight:900}.steps h3{font-family:Georgia,serif;font-size:23px}.steps p{color:var(--muted)}.expert{max-width:var(--max);margin:40px auto 120px;padding:64px;background:#efe9dd;display:grid;grid-template-columns:1fr 1fr;gap:70px;border-radius:18px}.expert h2{font-size:46px}.expert-points{display:grid;gap:12px}.expert-points div{background:#fff;padding:22px;border-radius:8px;display:grid;gap:6px}.expert-points span{color:var(--muted)}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.resource-grid a{padding:30px;background:#f4f1eb;color:#111;text-decoration:none;border-radius:10px}.resource-grid small{color:var(--gold);font-weight:900}.resource-grid h3{font-family:Georgia,serif;font-size:27px}.resource-grid p{color:var(--muted)}.faq{max-width:900px}.faq details{border-top:1px solid var(--line);padding:20px 0}.faq summary{font-size:19px;font-weight:900;cursor:pointer}.faq details p{color:var(--muted)}.final-cta{background:var(--gold);padding:70px max(24px,calc((100vw - var(--max))/2));display:flex;justify-content:space-between;align-items:center}.final-cta h2{font-size:46px;margin-bottom:10px}.final-cta .eyebrow{color:#111}.btn.secondary.dark{background:transparent;color:#111}footer{background:#111;color:#ddd;padding:60px max(24px,calc((100vw - var(--max))/2)) 30px;display:grid;grid-template-columns:2fr 1fr 1.5fr 1fr;gap:40px}footer a,footer span{color:#ddd;text-decoration:none;display:block;margin:8px 0}.footer-brand p{max-width:280px;color:#aaa}.copyright{grid-column:1/-1;border-top:1px solid #333;padding-top:22px;color:#888}.footer-brand .brand{color:#fff}@media(max-width:900px){.menu-toggle{display:block}.topbar nav{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;padding:24px;flex-direction:column;align-items:flex-start;border-bottom:1px solid #ddd}.topbar nav.open{display:flex}.hero{grid-template-columns:1fr;gap:30px}.hero h1{font-size:48px}.hero-visual{max-width:500px}.quote-shell{grid-template-columns:1fr}.privacy-note{grid-column:1}.proof-strip{grid-template-columns:repeat(2,1fr);gap:30px}.proof-strip div:nth-child(2){border:0}.product-grid,.story-grid,.resource-grid{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.expert{grid-template-columns:1fr}.final-cta{display:block}footer{grid-template-columns:1fr 1fr}}@media(max-width:600px){.hero{padding-top:48px}.hero h1,.section-heading h2{font-size:40px}.quote-shell{padding:24px}.quote-form{grid-template-columns:1fr}.proof-strip,.product-grid,.story-grid,.resource-grid,.steps,footer{grid-template-columns:1fr}.proof-strip div{border-right:0;border-bottom:1px solid var(--line);padding-bottom:20px}.expert{padding:32px}.topbar{height:68px}.topbar nav{top:68px}}

/* Mobile app-style vertical front experience */
.mobile-app-links{display:none}
@media(max-width:600px){
  body{background:#f5f5f3}
  .topbar{padding:0 16px;background:#111;border:0}
  .topbar .brand{color:#fff;font-size:24px}
  .menu-toggle{border:1px solid #b8872b;color:#fff;background:#111;border-radius:6px;padding:9px 12px;font-weight:800}
  .topbar nav{background:#111;border-bottom:1px solid #333}
  .topbar nav a{color:#fff}
  .hero{display:block;min-height:auto;padding:42px 18px 24px;background:linear-gradient(180deg,#fff 0%,#f7f4ee 100%)}
  .hero-copy{text-align:center}
  .hero-copy .lead{font-size:18px}
  .hero-actions{justify-content:center;flex-direction:column}
  .hero-actions .btn{width:100%}
  .mini-proof{justify-content:center}
  .hero-visual{margin:28px auto 0;max-width:360px}
  .portrait-card{border-radius:18px}
  .portrait-meta{text-align:left}
  .quote-shell{margin:0 12px 18px;padding:26px 18px;border-radius:18px;box-shadow:0 18px 45px rgba(0,0,0,.12);background:#171717;color:#fff}
  .quote-intro{text-align:center}
  .quote-intro p{color:#d0d0d0}
  .quote-form label{color:#fff}
  .quote-form select,.quote-form input{min-height:52px;border-color:#555}
  .quote-form .btn.primary{background:linear-gradient(180deg,#d6a84b,#b8872b);color:#111;border:0;min-height:54px}
  .privacy-note{color:#c7c7c7;text-align:center}
  .mobile-app-links{display:grid;gap:10px;margin:14px 12px 26px;padding:18px;background:#fff;border-radius:18px;box-shadow:0 12px 32px rgba(0,0,0,.09)}
  .mobile-app-brand{text-align:center;padding:8px 8px 15px;border-bottom:1px solid #e3dfd8;margin-bottom:4px}
  .mobile-app-brand .brand{font-size:29px}
  .mobile-app-brand p{margin:7px 0 0;color:#60656d;font-weight:700}
  .mobile-app-links>a{display:flex;align-items:center;justify-content:space-between;min-height:58px;padding:15px 16px;border:1px solid #dedbd3;border-radius:10px;text-decoration:none;color:#111;background:linear-gradient(180deg,#fff,#faf9f6);font-weight:900}
  .mobile-app-links>a b{font-size:24px;color:#b8872b}
  .proof-strip{margin-bottom:54px;background:#fff;padding:26px 20px;border-radius:0}
  .section{padding:56px 18px}
  .product-grid{gap:12px}
  .product{min-height:auto;padding:22px;background:#fff}
  .stories{padding:62px 18px}
  .expert{margin:20px 12px 70px}
  .final-cta{padding:56px 20px}
  footer{padding:44px 22px 26px}
}


/* Policygenius-style educational guide feature */
.ebook-feature{width:min(1180px,92%);margin:64px auto;display:grid;grid-template-columns:minmax(260px,380px) 1fr;align-items:center;gap:54px;padding:50px 58px;background:linear-gradient(135deg,#111418 0%,#24272b 100%);border-radius:22px;overflow:hidden;position:relative;box-shadow:0 24px 60px rgba(0,0,0,.17)}
.ebook-feature:after{content:"";position:absolute;inset:auto -100px -180px auto;width:430px;height:430px;border-radius:50%;background:radial-gradient(circle,rgba(196,139,38,.18),transparent 68%);pointer-events:none}
.ebook-art{min-height:330px;display:flex;align-items:center;justify-content:center;position:relative}
.ebook-art .ebook-splash{position:absolute;width:370px;height:250px;background:radial-gradient(ellipse at center,rgba(222,165,59,.95) 0%,rgba(184,126,26,.62) 30%,rgba(184,126,26,.18) 55%,transparent 72%);filter:blur(10px);transform:rotate(-8deg)}
.ebook-art .ebook-splash:before,.ebook-art .ebook-splash:after{content:"";position:absolute;inset:20% 8%;background:linear-gradient(115deg,transparent 10%,rgba(255,196,73,.82) 48%,transparent 72%);clip-path:polygon(0 45%,28% 30%,42% 0,54% 35%,100% 24%,77% 56%,98% 84%,57% 70%,30% 100%,32% 64%);filter:blur(4px)}
.ebook-art img{width:min(225px,72%);height:auto;position:relative;z-index:2;box-shadow:0 24px 38px rgba(0,0,0,.55);border-radius:3px}
.ebook-copy{position:relative;z-index:2;color:#fff}
.ebook-copy .eyebrow{color:#d3a34b}.ebook-copy h2{font-family:Georgia,serif;font-size:clamp(34px,4vw,56px);line-height:1.08;margin:8px 0 18px;max-width:780px}.ebook-copy p:not(.eyebrow){font-size:19px;line-height:1.7;color:#d9dde2;max-width:760px}.ebook-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:28px}.ebook-actions .text-link{color:#fff;text-decoration:none;font-weight:850;border-bottom:1px solid rgba(255,255,255,.45);padding-bottom:4px}.ebook-actions .text-link:hover{color:#e0b65f}
@media(max-width:800px){.ebook-feature{grid-template-columns:1fr;margin:36px 12px;width:auto;padding:38px 24px;text-align:center;gap:24px}.ebook-art{min-height:260px}.ebook-art .ebook-splash{width:300px;height:200px}.ebook-art img{width:180px}.ebook-actions{justify-content:center}}


/* Final ebook presentation: light premium panel, standalone book with white silhouette */
.ebook-feature{
  background:linear-gradient(135deg,#f7f1e7 0%,#eee4d3 52%,#faf8f4 100%)!important;
  border:1px solid #e1d4be!important;
  box-shadow:0 22px 54px rgba(72,54,28,.12)!important;
}
.ebook-feature:after{background:radial-gradient(circle,rgba(184,135,43,.12),transparent 68%)!important}
.ebook-art .ebook-splash{display:none!important}
.ebook-art img{
  border:7px solid #fff!important;
  outline:1px solid rgba(255,255,255,.9)!important;
  box-shadow:0 0 0 10px rgba(255,255,255,.38),0 22px 38px rgba(0,0,0,.24)!important;
}
.ebook-copy{color:#171717!important}
.ebook-copy .eyebrow{color:#a97418!important}
.ebook-copy p:not(.eyebrow){color:#555!important}
.ebook-actions .text-link{color:#222!important;border-bottom-color:rgba(0,0,0,.3)!important}
.ebook-actions .text-link:hover{color:#9a6814!important}
@media(max-width:600px){
  .mobile-app-links{grid-template-columns:1fr!important}
  .quote-form{display:grid!important;grid-template-columns:1fr!important}
  .quote-form select,.quote-form input,.quote-form button{width:100%!important}
}


/* Mobile image and date-field reliability fix */
.hero-visual img,
.ebook-feature img {
  display:block;
  max-width:100%;
  height:auto;
}
.quote-form > * { min-width:0; }
.quote-form input[type="date"] {
  display:block;
  box-sizing:border-box;
  min-width:0;
  max-width:100%;
  width:100%;
}
@media (max-width:600px) {
  .portrait-card img {
    width:100%;
    max-width:100%;
    height:auto;
    aspect-ratio:auto;
    object-fit:contain;
    background:#111;
  }
  .quote-form,
  .quote-form label,
  .quote-form input,
  .quote-form select {
    min-width:0;
    max-width:100%;
    width:100%;
  }
  .quote-form input[type="date"] {
    -webkit-appearance:none;
    appearance:none;
    font-size:16px;
    padding:14px 12px;
    overflow:hidden;
  }
  .ebook-feature .ebook-art img {
    width:min(230px,72vw);
    margin:0 auto;
  }
}


/* Homepage estate-planning feature */
.estate-home-feature {
  background: #fff;
  padding: clamp(72px, 9vw, 138px) 24px clamp(70px, 8vw, 120px);
}
.estate-home-wrap {
  width: min(1280px, 100%);
  margin: 0 auto;
}
.estate-image-stage {
  position: relative;
  overflow: hidden;
  border-radius: 26px;
  background: #fff;
  box-shadow: 0 20px 55px rgba(12, 24, 38, 0.10);
}
.estate-image-stage img {
  display: block;
  width: 100%;
  height: auto;
  background: #fff;
}
.estate-live-button {
  position: absolute;
  left: 51.2%;
  top: 59.5%;
  width: 43%;
  min-height: 54px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  padding: 13px 24px;
  border-radius: 10px;
  background: linear-gradient(90deg, #d99b20 0%, #efbd4f 55%, #d99b20 100%);
  color: #0b1522;
  font-weight: 800;
  font-size: clamp(13px, 1.25vw, 20px);
  letter-spacing: .035em;
  text-transform: uppercase;
  text-decoration: none;
  box-shadow: 0 8px 20px rgba(169, 112, 4, .24);
  transition: transform .2s ease, box-shadow .2s ease;
}
.estate-live-button:hover,
.estate-live-button:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 12px 26px rgba(169, 112, 4, .34);
}
.estate-live-button span {
  font-size: 1.45em;
  line-height: 1;
}
.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
@media (max-width: 700px) {
  .estate-home-feature {
    padding: 58px 12px 64px;
  }
  .estate-image-stage {
    border-radius: 18px;
    overflow: visible;
    box-shadow: 0 14px 34px rgba(12, 24, 38, 0.10);
  }
  .estate-live-button {
    left: 50%;
    top: auto;
    bottom: 2.2%;
    transform: translateX(-50%);
    width: 88%;
    min-height: 50px;
    padding: 12px 14px;
    font-size: 12px;
    gap: 10px;
  }
  .estate-live-button:hover,
  .estate-live-button:focus-visible {
    transform: translateX(-50%) translateY(-2px);
  }
}
