@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap');

:root { --ink:#17242b; --muted:#66757b; --line:#dce5e6; --paper:#f7faf9; --white:#fff; --teal:#0d6b69; --teal-dark:#095453; --sand:#e9f0ec; --accent:#d8e8df; --max:1180px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:'DM Sans',Arial,sans-serif; line-height:1.65; }
a { color:inherit; text-decoration:none; }
.container { width:min(calc(100% - 48px),var(--max)); margin:auto; }
.site-header { background:rgba(247,250,249,.94); border-bottom:1px solid var(--line); position:sticky; top:0; z-index:10; backdrop-filter:blur(12px); }
.nav-wrap { min-height:78px; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.brand { font-family:Manrope,sans-serif; font-size:1.2rem; font-weight:800; letter-spacing:-.04em; }
.brand span { color:var(--teal); }
.nav { display:flex; align-items:center; gap:30px; font-size:.94rem; color:#415157; }
.nav a:hover,.nav a:focus { color:var(--teal); }
.nav-cta { border:1px solid var(--teal); padding:9px 16px; color:var(--teal); }
.menu-toggle { display:none; background:none; border:1px solid var(--line); padding:8px 11px; color:var(--ink); font:inherit; }
.nav-dropdown { position:relative; }
.nav-dropdown-toggle { border:0; background:transparent; color:inherit; cursor:pointer; font:inherit; padding:0; }
.nav-dropdown-toggle:hover,.nav-dropdown-toggle:focus { color:var(--teal); }
.submenu { display:none; position:absolute; top:calc(100% + 18px); left:-18px; width:220px; padding:10px; background:var(--white); border:1px solid var(--line); box-shadow:0 14px 35px rgba(23,36,43,.1); }
.nav-dropdown:hover .submenu,.nav-dropdown:focus-within .submenu,.nav-dropdown.open .submenu { display:grid; }
.submenu a { padding:8px 10px; font-size:.88rem; }
.submenu a:hover,.submenu a:focus { background:var(--sand); color:var(--teal); }
.hero { padding:76px 0 86px; background:linear-gradient(135deg,#f7faf9 0%,#edf5f0 100%); }
.hero-grid { display:grid; grid-template-columns:1fr 1fr; gap:72px; align-items:center; }
.eyebrow { color:var(--teal); text-transform:uppercase; letter-spacing:.14em; font-weight:700; font-size:.74rem; }
h1,h2,h3 { font-family:Manrope,sans-serif; line-height:1.16; letter-spacing:-.045em; margin:0 0 18px; }
h1 { font-size:clamp(2.8rem,5vw,5.15rem); max-width:650px; }
h2 { font-size:clamp(2rem,3vw,3rem); }
h3 { font-size:1.3rem; }
p { margin:0 0 18px; color:var(--muted); }
.hero-copy p { font-size:1.12rem; max-width:530px; }
.button { display:inline-block; background:var(--teal); color:white; padding:13px 21px; margin-top:12px; font-weight:700; border:1px solid var(--teal); }
.button:hover,.button:focus { background:var(--teal-dark); }
.button.secondary { background:transparent; color:var(--teal); }
.placeholder { min-height:270px; background:linear-gradient(145deg,#dcebe3,#c8ddd5); border:1px solid #bfd4cb; display:flex; align-items:flex-end; padding:22px; color:#55716d; font-size:.78rem; text-transform:uppercase; letter-spacing:.13em; }
.image-placeholder { padding:0; overflow:hidden; position:relative; }
.image-placeholder img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; }
.hero-placeholder { min-height:465px; }
.section { padding:94px 0; }
.section-head { display:flex; justify-content:space-between; align-items:end; margin-bottom:38px; gap:30px; }
.section-head p { max-width:470px; margin:0; }
.cards { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.card { background:var(--white); border:1px solid var(--line); padding:14px; display:flex; flex-direction:column; }
.card .placeholder { min-height:175px; margin-bottom:22px; }
.card h3 { margin-bottom:8px; }
.card p { font-size:.93rem; flex:1; }
.card-link { color:var(--teal); font-size:.9rem; font-weight:700; margin-top:8px; }
.trust { background:var(--ink); color:white; }
.trust p { color:#b9c6c7; }
.trust-grid { display:grid; grid-template-columns:1fr 1.4fr; gap:90px; }
.trust-list { display:grid; grid-template-columns:1fr 1fr; gap:0; border-top:1px solid #415054; }
.trust-item { padding:25px 20px 25px 0; border-bottom:1px solid #415054; }
.trust-item strong { display:block; font-family:Manrope,sans-serif; margin-bottom:8px; }
.three-cards { grid-template-columns:repeat(3,1fr); }
.content-block { background:#e9f0ec; }
.prose-grid { display:grid; grid-template-columns:1fr 1fr; gap:52px; }
.prose-grid article { background:rgba(255,255,255,.58); padding:30px; border:1px solid #d4e1db; }
.list { padding-left:20px; color:var(--muted); }
.list li { margin-bottom:10px; }
.page-hero { padding:70px 0 58px; border-bottom:1px solid var(--line); }
.page-hero p { max-width:650px; font-size:1.08rem; }
.category-layout { display:grid; grid-template-columns:1.05fr .95fr; gap:60px; align-items:start; }
.category-layout .placeholder { min-height:420px; }
.subtopics { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin:24px 0; }
.topic { background:var(--white); padding:18px; border:1px solid var(--line); }
.topic strong { font-family:Manrope,sans-serif; font-size:.95rem; }
.explore { border-top:1px solid var(--line); padding-top:42px; margin-top:70px; }
.breadcrumb { color:var(--teal); font-size:.86rem; font-weight:700; margin-bottom:22px; }
.site-footer { background:#eef3f1; border-top:1px solid var(--line); padding:34px 0; }
.footer-wrap { display:flex; justify-content:space-between; gap:28px; align-items:start; }
.footer-brand p { font-size:.85rem; max-width:360px; }
.footer-links { display:flex; gap:24px; font-size:.9rem; color:#46585b; }
.footer-links a:hover { color:var(--teal); }
.form-layout { display:grid; grid-template-columns:1fr 1fr; gap:70px; }
.contact-address { font-style:normal; color:var(--muted); line-height:1.8; margin:25px 0; }
.contact-address strong { display:block; color:var(--ink); font-family:Manrope,sans-serif; }
.form { display:grid; gap:16px; }
label { font-size:.88rem; font-weight:700; }
input,textarea { width:100%; margin-top:6px; padding:13px 14px; border:1px solid #cbd8d7; background:#fff; color:var(--ink); font:inherit; }
textarea { min-height:150px; resize:vertical; }
.form-note { font-size:.82rem; }
.button.is-loading { opacity:.7; cursor:wait; }
.success-modal { position:fixed; inset:0; z-index:30; display:grid; place-items:center; padding:24px; background:rgba(23,36,43,.48); }
.success-modal[hidden] { display:none; }
.success-modal-card { width:min(100%,520px); padding:38px; background:var(--white); border:1px solid var(--line); box-shadow:0 20px 60px rgba(23,36,43,.2); }
.success-modal-card h2 { margin-top:8px; }
.success-modal-card p { max-width:430px; }
@media (max-width:850px) { .hero-grid,.category-layout,.form-layout,.prose-grid,.trust-grid { grid-template-columns:1fr; gap:34px; } .cards { grid-template-columns:repeat(2,1fr); } .trust-list { gap:0 20px; } .hero-placeholder { min-height:300px; } }
@media (max-width:600px) { .container { width:min(calc(100% - 32px),var(--max)); } .nav-wrap { min-height:68px; } .menu-toggle { display:block; } .nav { display:none; position:absolute; left:16px; right:16px; top:68px; background:var(--white); border:1px solid var(--line); padding:18px; flex-direction:column; align-items:stretch; gap:14px; } .nav.open { display:flex; } .nav-cta { text-align:center; } .hero { padding:52px 0 60px; } .section { padding:64px 0; } .section-head { display:block; } .section-head h2 { margin-bottom:12px; } .cards,.three-cards,.subtopics { grid-template-columns:1fr; } .trust-list { grid-template-columns:1fr; } .footer-wrap { display:block; } .footer-links { flex-wrap:wrap; margin-top:24px; } h1 { font-size:2.7rem; } }
@media (max-width:600px) { .nav-dropdown-toggle { width:100%; text-align:left; } .submenu { position:static; width:auto; margin-top:8px; padding:5px 0 5px 12px; border:0; box-shadow:none; background:var(--paper); } .submenu a { padding:6px 10px; } }
