:root { --ivory:#fbf7ef; --paper:#fffdf8; --navy:#243762; --peacock:#1f6f67; --gold:#c88a27; --stone:#3a342b; --muted:#70675b; --line:#dfd3bf; --serif:'EB Garamond',Georgia,serif; --sans:'Source Sans 3',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--ivory); color:var(--stone); font-family:var(--sans); line-height:1.6; overflow-x:hidden; }
.shell { width:min(1120px,calc(100% - 40px)); margin-inline:auto; }
.nav { min-height:92px; display:flex; align-items:center; justify-content:space-between; gap:24px; border-bottom:1px solid rgba(200,138,39,.2); }
.brand { display:flex; align-items:center; gap:11px; color:var(--navy); text-decoration:none; letter-spacing:.08em; }
.brand span { display:flex; flex-direction:column; line-height:1; }
.brand strong { font-family:var(--serif); font-size:24px; letter-spacing:.08em; }
.brand small { margin-top:5px; font-size:9px; font-weight:700; letter-spacing:.34em; }
.lotus { width:44px; height:44px; fill:none; stroke:var(--gold); stroke-width:1.7; stroke-linejoin:round; }
.nav nav { display:flex; gap:28px; }
.nav nav a { color:var(--navy); text-decoration:none; font-size:14px; font-weight:600; }
.nav a:hover,.nav a:focus-visible,footer a:hover,footer a:focus-visible { color:var(--peacock); }
a:focus-visible { outline:2px solid var(--navy); outline-offset:4px; border-radius:3px; }
.hero { min-height:580px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:86px 0 78px; position:relative; }
.eyebrow { margin:0; color:var(--gold); font-size:12px; font-weight:700; letter-spacing:.2em; text-transform:uppercase; }
h1,h2,h3 { font-family:var(--serif); font-weight:600; color:var(--navy); }
h1 { max-width:860px; margin:22px 0 20px; font-size:clamp(48px,8vw,88px); line-height:.98; letter-spacing:-.035em; }
.intro { max-width:700px; margin:0; color:var(--muted); font-size:clamp(18px,2.2vw,22px); line-height:1.55; }
.promise { display:flex; align-items:center; justify-content:center; gap:18px; margin-top:38px; color:var(--peacock); font-size:13px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
.promise i { width:5px; height:5px; border-radius:50%; background:var(--gold); }
.features { padding:90px 0 104px; }
.section-title { max-width:650px; margin-bottom:42px; }
h2 { margin:12px 0 0; font-size:clamp(36px,5vw,58px); line-height:1.08; letter-spacing:-.025em; }
.grid { display:grid; grid-template-columns:repeat(2,1fr); gap:16px; }
.grid article { min-height:230px; padding:32px; border:1px solid var(--line); border-radius:24px; background:rgba(255,253,248,.82); box-shadow:0 18px 50px rgba(43,58,103,.055); }
.grid article span { color:var(--gold); font-size:12px; font-weight:700; letter-spacing:.14em; }
.grid h3 { margin:30px 0 8px; font-size:28px; line-height:1.15; }
.grid p { margin:0; color:var(--muted); font-size:16px; }
.trust { margin-bottom:104px; padding:46px; border-radius:28px; background:var(--navy); color:#f8f1e3; display:grid; grid-template-columns:1.1fr .9fr; gap:50px; align-items:center; }
.trust h2 { color:#fffaf1; font-size:clamp(34px,4vw,50px); }
.trust>p { margin:0; font-size:18px; color:#ded8ca; }
footer { padding:58px 0 30px; background:#eee3d1; border-top:1px solid var(--line); }
.footer-grid { display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:40px; }
.footer-grid>div { display:flex; flex-direction:column; align-items:flex-start; }
.footer-grid strong { font-family:var(--serif); color:var(--navy); font-size:19px; }
.footer-grid p,.footer-grid a { margin:8px 0 0; color:var(--muted); font-size:14px; text-decoration:none; }
.mantra { margin:50px auto 0; padding-top:25px; border-top:1px solid rgba(58,52,43,.14); text-align:center; color:var(--muted); font-family:var(--serif); font-size:15px; font-style:italic; }
.petals { position:absolute; border:1px solid rgba(200,138,39,.14); border-radius:70% 10% 70% 10%; transform:rotate(32deg); pointer-events:none; }
.petals-one { width:320px; height:320px; top:190px; left:-190px; }
.petals-two { width:260px; height:260px; top:530px; right:-170px; transform:rotate(-22deg); }
@media (max-width:700px) { .shell { width:min(100% - 28px,1120px); } .nav { min-height:78px; } .nav nav a:not(:last-child) { display:none; } .hero { min-height:auto; padding:86px 0 72px; } h1 { font-size:50px; } .promise { flex-wrap:wrap; gap:10px 12px; } .grid,.trust,.footer-grid { grid-template-columns:1fr; } .features { padding:68px 0 76px; } .grid article { min-height:0; padding:26px; } .grid h3 { margin-top:22px; } .trust { margin-bottom:76px; padding:30px; gap:24px; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
