
    :root{
      --hunter:#001848;
      --hunter-dark:#071526;
      --navy:#001848;
      --navy-dark:#071526;
      --gold:#B48430;
      --gold-soft:#E8D9B5;
      --ivory:#F7F4EC;
      --ink:#0a1630;
      --body:#4a524e;
      --muted:#6b736f;
      --line:#e6e2d8;
      --soft:#f3efe6;
      --white:#fff;
      --serif:'Prata',Georgia,serif;
      --sans:'Poppins',system-ui,sans-serif;
    }
    *{box-sizing:border-box;margin:0;padding:0}
    html{scroll-behavior:smooth}
    body{font-family:var(--sans);color:var(--body);background:var(--ivory);line-height:1.65;-webkit-font-smoothing:antialiased}
    img{max-width:100%;display:block}
    a{color:inherit;text-decoration:none}
    button{font-family:inherit;cursor:pointer;border:0;background:none}
    .wrap{width:min(1180px,calc(100% - 40px));margin:0 auto}
    .skip{position:absolute;left:-9999px}
    .skip:focus{left:12px;top:12px;background:#000;color:#fff;padding:8px 12px;z-index:99}

    /* Header */
    .topbar{background:rgba(247,244,236,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;backdrop-filter:blur(12px)}
    .nav{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:88px}
    .logo img{height:72px;width:auto;object-fit:contain}
    .menu{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
    .menu>a,.menu details summary{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);list-style:none}
    .menu details{position:relative}
    .menu details summary{cursor:pointer}
    .menu details summary::-webkit-details-marker{display:none}
    .menu details[open] summary{color:var(--hunter)}
        .dropdown{position:absolute;top:calc(100% + 14px);left:0;min-width:240px;background:#fff;border:1px solid var(--line);box-shadow:0 18px 40px rgba(0,0,0,.08);padding:10px 0;display:none}
        details[open] .dropdown{display:block}
        .dropdown a{display:block;padding:10px 16px;font-size:13px;font-weight:500;text-transform:none;letter-spacing:0;color:#333}
        .dropdown a:hover{background:rgba(180,132,48,.12);color:var(--hunter)}
    .nav-tools{display:flex;align-items:center;gap:10px}
    .icon-btn{width:40px;height:40px;border:1px solid var(--line);border-radius:999px;display:grid;place-items:center;color:var(--ink)}
    .menu-toggle{display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:8px;font-size:20px}

    /* Hero */
    .hero{position:relative;min-height:min(78vh,720px);display:grid;place-items:center;color:#fff;overflow:hidden;background:#1a1a1a}
    .hero-bg{position:absolute;inset:0;background:url('assets/Family-6.png') center 28%/cover no-repeat;transform:scale(1.02)}
    .hero-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.45),rgba(0,0,0,.55))}
    .hero-inner{position:relative;z-index:1;text-align:center;padding:90px 20px 100px;max-width:920px}
    .hero h1{font-family:var(--serif);font-size:clamp(36px,5.5vw,58px);line-height:1.15;font-weight:700;margin-bottom:12px}
    .hero .sub{font-family:var(--serif);font-weight:300;font-size:clamp(18px,2vw,22px);margin-bottom:28px}
    .hero-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-bottom:28px}
    .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 22px;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;transition:.2s}
    .btn-white{background:var(--ivory);color:var(--hunter);border:1px solid rgba(180,132,48,.35)}
        .btn-white:hover{background:#fff;border-color:var(--gold)}
        .btn-outline{border:1px solid rgba(247,244,236,.85);color:var(--ivory);background:transparent}
        .btn-outline:hover{background:rgba(247,244,236,.1)}
        .btn-brand,.btn-burgundy{background:var(--hunter);color:var(--ivory);border:1px solid var(--hunter)}
        .btn-brand:hover,.btn-burgundy:hover{background:var(--hunter-dark)}
        .btn-gold{background:var(--gold);color:#001848;border:1px solid var(--gold)}
        .btn-gold:hover{background:#a48345;color:#071526}
        .btn-outline-dark{border:1px solid var(--gold);color:var(--ivory);background:transparent}
        .btn-outline-dark:hover{background:rgba(180,132,48,.18)}
        .hero-badge{width:88px;height:88px;margin:0 auto;border-radius:50%;background:rgba(247,244,236,.95);display:grid;place-items:center;box-shadow:0 10px 30px rgba(0,0,0,.25);border:1px solid rgba(180,132,48,.45)}
        .hero-badge img{width:64px;height:64px;object-fit:contain}

        /* Intro */
        .intro{padding:88px 0 40px;text-align:center;background:var(--ivory)}
        .intro .eyebrow-link{display:inline-block;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);margin-bottom:28px}
        .intro h2{font-family:var(--serif);color:var(--ink);font-size:clamp(28px,4vw,42px);line-height:1.2;margin-bottom:8px}
        .intro h2 em{font-style:normal;color:var(--hunter)}
        .intro p{max-width:760px;margin:14px auto 0;font-size:16px;color:var(--body)}

        /* Masterclass */
        .masterclass{margin:48px 0 20px;position:relative;min-height:360px;display:grid;place-items:center;color:#fff;overflow:hidden}
        .masterclass-bg{position:absolute;inset:0;background:url('assets/Family-3.png') center 35%/cover no-repeat}
        .masterclass-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,24,72,.92),rgba(7,21,38,.82))}
        .masterclass-inner{position:relative;z-index:1;text-align:center;padding:70px 24px;max-width:820px}
        .masterclass .label{color:var(--gold-soft);letter-spacing:.18em;font-size:13px;text-transform:uppercase;margin-bottom:16px}
        .masterclass h2{font-family:var(--serif);font-size:clamp(28px,4vw,40px);line-height:1.2;margin-bottom:24px;color:var(--ivory)}

        /* Benefits */
        .benefits{padding:90px 0;background:var(--white)}
        .section-kicker{text-align:center;color:var(--gold);font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-bottom:10px}
        .section-title{font-family:var(--serif);text-align:center;color:var(--hunter);font-size:clamp(32px,4.5vw,46px);line-height:1.15;margin-bottom:12px}
        .rule{display:flex;align-items:center;justify-content:center;gap:12px;margin:0 auto 34px;color:var(--gold);font-size:18px;line-height:1}
        .rule:before,.rule:after{content:"";width:54px;height:1px;background:var(--gold)}
        .rule .fleur{font-size:20px;color:var(--gold);line-height:1;display:inline-block;transform:translateY(1px)}
        .benefits-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center}
        .benefit-list{display:grid;gap:22px}
        .benefit{display:grid;grid-template-columns:46px 1fr;gap:14px;align-items:start}
        .benefit .ico{width:46px;height:46px;border-radius:50%;background:rgba(0,24,72,.08);color:var(--hunter);border:1px solid rgba(180,132,48,.35);display:grid;place-items:center;font-weight:700}
        .benefit h3{font-family:var(--serif);color:var(--ink);font-size:22px;margin-bottom:6px}
        .benefit p{font-size:15px;color:var(--muted)}
        .benefits-photo{border-radius:4px;overflow:hidden;box-shadow:0 20px 50px rgba(0,24,72,.14);border:1px solid rgba(180,132,48,.2)}
        .benefits-photo img{width:100%;height:100%;object-fit:cover;min-height:420px}

        /* Attorneys */
        .attorneys{padding:40px 0 0;background:linear-gradient(180deg,var(--ivory) 0%,#001848 42%,#071526 100%);color:#fff}
        .attorneys .section-title{color:var(--hunter)}
        .attorneys .top{background:var(--ivory);padding:0 0 40px}
        .cards{display:grid;grid-template-columns:1fr 1fr;gap:24px;width:min(900px,calc(100% - 40px));margin:-10px auto 0;position:relative;z-index:2}
        .card{background:linear-gradient(180deg,#fff,#F7F4EC);border-radius:18px;overflow:hidden;box-shadow:0 18px 40px rgba(0,0,0,.18);text-align:center;padding-bottom:28px;border:1px solid rgba(180,132,48,.25)}
        .card img{width:100%;height:360px;object-fit:cover;object-position:top center;background:#ddd}
        .card h3{font-family:var(--serif);color:var(--ink);font-size:26px;margin:22px 16px 6px}
        .card .role{color:var(--gold);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-bottom:16px}
    .card .btn{min-width:180px}
    .attorneys-copy{width:min(900px,calc(100% - 40px));margin:48px auto 0;text-align:center;padding-bottom:70px}
    .attorneys-copy p{color:#e8e8e8;margin:0 0 16px;font-size:16px}
    .attorneys-copy .em{color:#fff;font-weight:500}
    .attorneys-copy .btn{margin-top:10px}

    /* Stories / badges */
    .stories{background:var(--soft);padding:90px 0 70px;text-align:center}
        .badges{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:34px;margin-top:28px}
        .badges a,.badges span{display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid rgba(180,132,48,.28);border-radius:12px;padding:16px 18px;min-height:88px;min-width:140px}
        .badges img{max-height:54px;width:auto;object-fit:contain;filter:none}
        .family-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px}
        .family-grid figure{margin:0;border-radius:14px;overflow:hidden;box-shadow:0 12px 30px rgba(0,24,72,.1);background:#fff;border:1px solid rgba(180,132,48,.2)}
        .family-grid img{width:100%;height:240px;object-fit:cover;object-position:center top}
        @media(max-width:900px){.family-grid{grid-template-columns:1fr}}

        /* Process */
        .process{padding:90px 0;background:var(--white)}
        .process .label{text-align:center;font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:8px}
        .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:34px}
        .step{text-align:left;padding:8px 8px 8px 0}
        .step .num{color:var(--gold);font-weight:700;letter-spacing:.08em;margin-bottom:10px}
        .step h3{font-family:var(--serif);color:var(--hunter);font-size:23px;margin-bottom:10px}
        .step p{color:var(--muted);font-size:15px}

        /* Footer */
        footer{background:#071526;color:#d8d4c8;padding:0 0 20px;position:relative;overflow:hidden}
        .footer-crest{display:flex;justify-content:center;margin-top:-1px}
        .footer-crest span{width:120px;height:48px;background:#071526;border-radius:0 0 60px 60px;display:grid;place-items:center;color:var(--gold);font-family:var(--serif);font-size:28px;border:1px solid rgba(180,132,48,.35);border-top:0}
    .foot-main{display:grid;grid-template-columns:1.1fr 1.1fr .9fr;gap:34px;padding:40px 0 30px}
    .foot-logo img{height:84px;width:auto;margin-bottom:18px;object-fit:contain}
    .foot-main h5,.foot-main h2{color:#fff;font-size:14px;letter-spacing:.08em;text-transform:uppercase;margin:0 0 12px;font-weight:600}
    .foot-main p,.foot-main a{color:#cfcfcf;font-size:14px}
    .foot-main a:hover{color:#fff}
    .office{margin-bottom:18px}
    .social{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 14px}
    .social a{width:34px;height:34px;border:1px solid #333;border-radius:50%;display:grid;place-items:center;font-size:12px}
    .contact-lines a{display:block;margin:6px 0}
    .foot-lower{display:grid;grid-template-columns:1.3fr 1fr;gap:28px;border-top:1px solid #1d1d1d;padding-top:28px}
    .cities{display:grid;grid-template-columns:1fr 1fr;gap:4px 18px;font-size:13px;color:#bdbdbd}
    .cities a{color:#bdbdbd}
    .cities a:hover{color:#fff}
    .quick a{display:block;margin:7px 0;color:#bdbdbd}
    .copy{border-top:1px solid #1d1d1d;margin-top:28px;padding-top:16px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:12px;color:#999}
    .copy img{height:28px;opacity:.85}

    /* Mobile dock CTA */
    .float-cta{position:fixed;right:18px;bottom:18px;z-index:40}
    .float-cta a{background:var(--hunter);color:var(--ivory);padding:14px 16px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.05em;box-shadow:0 12px 28px rgba(0,24,72,.35);border:1px solid var(--gold)}

    @media(max-width:980px){
      .menu{display:none}
      .menu.open{display:flex;flex-direction:column;align-items:flex-start;position:absolute;left:0;right:0;top:88px;background:#fff;border-bottom:1px solid var(--line);padding:18px 20px 24px;gap:14px;box-shadow:0 20px 40px rgba(0,0,0,.08)}
      .menu-toggle{display:grid;place-items:center}
      .dropdown{position:static;box-shadow:none;border:0;padding:6px 0 0 10px}
      .benefits-grid,.cards,.steps,.foot-main,.foot-lower,.cities{grid-template-columns:1fr}
      .card img{height:300px}
      .hero{min-height:620px}
      .nav{min-height:76px}
      .logo img{height:58px}
    }
  

.menu.open{display:flex!important;flex-direction:column;position:absolute;left:0;right:0;top:76px;background:var(--ivory);padding:16px;gap:12px;border-bottom:1px solid var(--line);z-index:60}
.page-hero{padding:70px 0 40px;text-align:center;background:linear-gradient(180deg,var(--ivory),#fff)}
.page-hero h1{font-family:var(--serif);color:var(--hunter);font-size:clamp(32px,5vw,48px);margin:10px 0 12px}
.page-hero p{max-width:720px;margin:0 auto;color:var(--body)}
.content{padding:20px 0 80px;max-width:860px}
.content h2{font-family:var(--serif);color:var(--hunter);font-size:28px;margin:34px 0 12px}
.content h3{font-family:var(--serif);color:var(--ink);font-size:22px;margin:24px 0 8px}
.content p,.content li{color:var(--body);margin:0 0 12px;font-size:16px}
.content ul{padding-left:20px;margin:0 0 16px}
.form{display:grid;gap:12px;max-width:560px;margin:24px auto 0;text-align:left}
.form label{display:grid;gap:6px;font-size:14px;color:var(--ink);font-weight:600}
.form input,.form textarea,.form select{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:8px;font:inherit;background:#fff}
.form button{justify-self:start}
.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin-top:28px}
.mini-card{background:#fff;border:1px solid rgba(180,132,48,.25);border-radius:14px;padding:22px;box-shadow:0 10px 24px rgba(0,24,72,.06)}
.mini-card h3{font-family:var(--serif);color:var(--hunter);margin:0 0 8px}
.faq details{background:#fff;border:1px solid var(--line);border-radius:10px;padding:14px 16px;margin:0 0 10px}
.faq summary{cursor:pointer;font-weight:600;color:var(--hunter)}

.footer-crest{display:flex;justify-content:center;margin-top:-1px}
.footer-crest a{display:grid;place-items:center;width:120px;height:72px;background:#071526;border-radius:0 0 60px 60px;border:1px solid rgba(180,132,48,.35);border-top:0;padding:8px 10px 12px}
.footer-crest img{height:48px;width:auto;object-fit:contain}
.copy img{height:42px;opacity:1;object-fit:contain}
