@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,600;1,600&display=swap');
:root{--ink:#302c35;--muted:#716a75;--plum:#70556f;--plum-dark:#594257;--blush:#f7e5e9;--lav:#eee9f7;--sage:#e4f0e9;--blue:#e8f2f7;--cream:#fff8f1;--paper:#fffdfb;--white:#fff;--line:#e9e1e7;--shadow:0 18px 50px rgba(75,57,75,.08);--radius:22px;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit}p{margin:0 0 1.15em}header{height:82px;padding:0 max(24px,calc((100vw - var(--max))/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(255,253,251,.96);backdrop-filter:blur(12px);position:sticky;top:0;z-index:50}.brand{display:flex;align-items:center;text-decoration:none;gap:11px}.mark{width:46px;height:46px;fill:var(--plum)}.mark .cut{fill:var(--paper)}.brand b{font-size:18px;letter-spacing:.075em;display:block;line-height:1.1}.brand i{font-family:'Playfair Display',serif;color:#b67d93}.brand small{display:block;font-size:9px;letter-spacing:.27em;margin-top:2px;color:var(--muted)}nav{display:flex;align-items:center;gap:25px}nav a{text-decoration:none;font-weight:600;font-size:14px}nav a:hover{color:var(--plum)}.pill{padding:10px 17px;border-radius:999px;background:var(--plum);color:#fff!important}.menu{display:none;border:0;background:none;font-size:25px;color:var(--ink)}.hero{max-width:var(--max);margin:38px auto 0;min-height:600px;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(340px,.72fr);border:1px solid var(--line);border-radius:32px;overflow:hidden;box-shadow:var(--shadow);background:var(--cream)}.hero-copy{padding:76px 64px;display:flex;flex-direction:column;justify-content:center}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:700;color:#9b667b}.hero h1,.subhero h1{font-size:clamp(48px,5.7vw,76px);line-height:1.02;letter-spacing:-.045em;margin:18px 0 24px;max-width:800px}.hero h1 em,.subhero h1 em{font-family:'Playfair Display',serif;font-weight:600;color:var(--plum)}.lead{font-size:19px;max-width:690px;color:#504a53}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;background:var(--plum);color:#fff;padding:14px 21px;border:1px solid var(--plum);border-radius:12px;font-weight:700;transition:.2s}.btn:hover{background:var(--plum-dark);transform:translateY(-1px)}.btn.ghost{background:#fff;color:var(--plum)}.btn.light{background:#fff;color:var(--plum);border-color:#fff}.btn.outline{background:transparent;border-color:rgba(255,255,255,.7);color:#fff}.trust{display:flex;gap:22px;flex-wrap:wrap;margin-top:38px;padding-top:20px;border-top:1px solid #eadbdc;font-size:12px;color:#5e5761}.hero-panel{background:linear-gradient(155deg,var(--lav),var(--blush));display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:56px;position:relative}.hero-panel:after{content:"";width:230px;height:230px;border-radius:50%;background:rgba(255,255,255,.38);position:absolute;right:-85px;bottom:-75px}.hero-panel h2{font-size:52px;line-height:1.03;margin:22px 0 18px;letter-spacing:-.035em}.hero-panel h2 em{font-family:'Playfair Display',serif;color:var(--plum)}.hero-panel p{font-size:14px;max-width:320px}.seal{width:104px;height:104px;border:1px solid rgba(112,85,111,.28);background:rgba(255,255,255,.35);border-radius:50%;display:grid;place-items:center;font-size:32px;font-weight:700;color:var(--plum)}.seal span{color:#b67d93}.intro,.content,.faq,.areas,.services,.split{max-width:var(--max);margin:auto;padding:90px 0}.intro{text-align:center;max-width:900px}.intro h2,.sectionhead h2,.areas h2,.split h2,.content h2{font-size:clamp(32px,4vw,50px);line-height:1.1;letter-spacing:-.035em;margin:10px 0 20px}.intro p{font-size:19px;color:var(--muted)}.services{max-width:none;background:linear-gradient(180deg,#fbf8fc 0%,#fffdfb 100%);padding-left:max(24px,calc((100vw - var(--max))/2));padding-right:max(24px,calc((100vw - var(--max))/2))}.sectionhead{display:flex;justify-content:space-between;align-items:end;margin-bottom:32px}.sectionhead>a{color:var(--plum);font-weight:700;text-decoration:none}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;text-decoration:none;min-height:245px;display:flex;flex-direction:column;box-shadow:0 8px 28px rgba(75,57,75,.035);transition:.2s}.card:nth-child(4n+1){background:#fffafb}.card:nth-child(4n+2){background:#fbfaff}.card:nth-child(4n+3){background:#f9fcfa}.card:nth-child(4n){background:#fffdf7}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#d9cad8}.card span{font-size:10px;letter-spacing:.12em;color:#a58a9e}.card h3{font-size:22px;line-height:1.2;margin:15px 0 10px}.card p{color:var(--muted);font-size:15px}.card b{font-size:13px;color:var(--plum);margin-top:auto}.split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:70px;align-items:center}.split>div>p,.areas>p,.content>p{font-size:17px;color:var(--muted)}.split li{margin:10px 0}.split aside{background:linear-gradient(145deg,var(--blush),var(--lav));padding:48px;border-radius:28px}.split blockquote{font-family:'Playfair Display',serif;font-size:34px;line-height:1.22;margin:0 0 24px;color:var(--plum-dark)}.areas{padding-top:75px}.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.chips a,.mini-grid a{padding:10px 14px;border:1px solid var(--line);border-radius:999px;text-decoration:none;background:#fff;font-size:14px}.chips a:hover,.mini-grid a:hover{border-color:#cdb9c9;background:var(--blush)}.chips.big a{font-size:16px;padding:14px 18px}.cta{max-width:var(--max);margin:0 auto 90px;display:flex;justify-content:space-between;gap:40px;align-items:center;background:linear-gradient(120deg,var(--plum),#8c6f88);color:#fff;padding:54px 58px;border-radius:28px}.cta h2{font-size:38px;line-height:1.12;margin:8px 0 12px}.cta p{margin:0;color:#f5edf4}.cta .eyebrow{color:#f5d7e3}.subhero{max-width:var(--max);margin:38px auto 0;padding:72px 64px;background:linear-gradient(135deg,var(--cream),var(--lav));border-radius:30px;border:1px solid var(--line)}.subhero p{max-width:800px;font-size:18px;color:var(--muted)}.content{max-width:900px}.content p{font-size:17px}.note{padding:22px 24px;background:#fff5f7;border-left:4px solid #d8aebc;border-radius:0 14px 14px 0;margin:32px 0}.mini-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.stats{display:grid;grid-template-columns:repeat(3,1fr);margin:40px 0;border:1px solid var(--line);border-radius:20px;overflow:hidden}.stats div{padding:28px;text-align:center;border-right:1px solid var(--line);background:#fff}.stats div:last-child{border:0}.stats b{font-size:36px;display:block;color:var(--plum)}.stats span{font-size:11px;text-transform:uppercase;letter-spacing:.12em}.faq{max-width:900px}.faq details{border-bottom:1px solid var(--line);padding:20px 0}.faq summary{font-size:18px;font-weight:700;cursor:pointer}.faq p{font-size:16px;color:var(--muted);padding-top:10px}footer{background:#4e414f;color:#f9f3f8;padding:58px max(24px,calc((100vw - var(--max))/2)) 82px}.footgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:42px}.footgrid .mark{fill:#f2dce5}.footgrid .mark .cut{fill:#4e414f}.footgrid a{color:#fff}.footgrid p{font-size:14px;color:#e9dfe7}.footgrid h3{font-size:14px;letter-spacing:.04em}.legal{border-top:1px solid rgba(255,255,255,.18);margin-top:42px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#ddd0db}.mobilebar{display:none}.mobilebar a{flex:1;text-align:center;text-decoration:none;font-weight:800;padding:14px;background:var(--plum);color:#fff;border-right:1px solid rgba(255,255,255,.2)}
@media(max-width:1228px){.hero,.intro,.split,.areas,.cta,.subhero,.content,.faq{margin-left:24px;margin-right:24px}.intro,.split,.areas,.content,.faq{padding-left:0;padding-right:0}}
@media(max-width:900px){header{height:74px}.brand .mark{width:40px;height:40px}.brand b{font-size:16px}header nav{display:none;position:absolute;top:74px;left:0;right:0;background:var(--paper);padding:22px;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line);box-shadow:var(--shadow)}header nav.open{display:flex}.menu{display:block}.hero{grid-template-columns:1fr;margin-top:20px}.hero-copy{padding:58px 38px}.hero-panel{padding:42px 38px;min-height:285px}.hero-panel h2{font-size:44px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.split{grid-template-columns:1fr;gap:28px}.sectionhead{align-items:start;flex-direction:column;gap:8px}.cta{align-items:flex-start;flex-direction:column}.footgrid{grid-template-columns:1fr 1fr}.legal{flex-direction:column}.mobilebar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:60}.stats{grid-template-columns:1fr}.stats div{border-right:0;border-bottom:1px solid var(--line)}.mini-grid{grid-template-columns:1fr}footer{padding-bottom:105px}}
@media(max-width:600px){header{padding:0 18px}.hero,.intro,.split,.areas,.cta,.subhero,.content,.faq{margin-left:16px;margin-right:16px}.hero{border-radius:24px}.hero-copy{padding:46px 24px}.hero h1,.subhero h1{font-size:44px}.lead{font-size:17px}.trust{gap:12px 20px}.hero-panel{padding:36px 24px;min-height:245px}.hero-panel h2{font-size:39px}.intro,.split,.areas,.content,.faq{padding-top:65px;padding-bottom:65px}.services{padding:65px 16px}.grid{grid-template-columns:1fr}.card{min-height:0}.subhero{padding:48px 25px}.cta{padding:38px 26px;margin-bottom:65px}.cta h2{font-size:31px}.footgrid{grid-template-columns:1fr;gap:25px}}

/* Homepage hero — clean responsive rebuild */
.home-hero{max-width:1180px!important;width:calc(100% - 48px)!important;margin:36px auto 0!important;min-height:0!important;height:auto!important;display:grid!important;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr)!important;align-items:stretch!important;overflow:hidden!important;background:#fffaf7!important;border:1px solid #eadfe7!important;border-radius:28px!important;box-shadow:0 16px 45px rgba(69,48,67,.07)!important}.home-hero .hero-copy{padding:64px 58px!important;min-width:0!important;display:block!important}.home-hero h1{font-size:clamp(46px,5vw,70px)!important;line-height:1.02!important;margin:14px 0 22px!important;max-width:720px!important}.home-hero .lead{max-width:650px!important}.home-hero .hero-aside{padding:48px 42px!important;background:linear-gradient(145deg,#eee9f7 0%,#f8e7ec 100%)!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:flex-start!important;position:relative!important;min-width:0!important}.home-hero .monogram{width:78px!important;height:78px!important;border:1px solid #cfbecb!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:3px!important;font-size:24px!important;font-weight:800!important;color:#70556f!important;background:rgba(255,255,255,.42)!important;margin:0 0 24px!important}.home-hero .monogram span{color:#b67d93!important}.home-hero .aside-kicker{font-size:11px!important;font-weight:800!important;letter-spacing:.18em!important;color:#8f6a80!important;margin:0 0 8px!important}.home-hero .hero-aside h2{font-size:clamp(32px,3.4vw,46px)!important;line-height:1.05!important;letter-spacing:-.035em!important;margin:0 0 18px!important}.home-hero .hero-aside h2 em{font-family:Georgia,serif!important;color:#70556f!important}.home-hero .hero-aside>p:last-child{font-size:14px!important;line-height:1.55!important;margin:0!important;max-width:280px!important}.home-hero .trust{margin-top:30px!important}
@media(max-width:900px){.home-hero{grid-template-columns:1fr!important;width:calc(100% - 32px)!important;margin-top:20px!important}.home-hero .hero-copy{padding:46px 34px!important}.home-hero .hero-aside{padding:36px 34px!important}.home-hero .hero-aside h2{font-size:36px!important}.home-hero .monogram{width:66px!important;height:66px!important;margin-bottom:18px!important}}
@media(max-width:600px){.home-hero{width:calc(100% - 24px)!important;border-radius:22px!important}.home-hero .hero-copy{padding:38px 22px!important}.home-hero h1{font-size:40px!important}.home-hero .hero-aside{padding:30px 22px!important}.home-hero .actions{display:grid!important;grid-template-columns:1fr!important}.home-hero .btn{width:100%!important}.home-hero .trust{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px 14px!important}}
