:root { color-scheme: light; --seo-navy:#07152f; --seo-lime:#a8d421; --seo-ink:#132039; --seo-muted:#667489; --seo-line:#dfe5e9; }
* { box-sizing:border-box; }
body { margin:0; background:#f8faf7; color:var(--seo-ink); font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; }
a { color:inherit; }
.seo-header { min-height:76px; padding:14px max(24px,calc((100vw - 1180px)/2)); border-bottom:1px solid var(--seo-line); background:#fff; display:flex; align-items:center; justify-content:space-between; gap:30px; }
.seo-brand { text-decoration:none; display:flex; flex-direction:column; line-height:1; }
.seo-brand strong { font-size:16px; letter-spacing:.06em; }.seo-brand span { margin-top:5px; color:#798599; font-size:9px; letter-spacing:.2em; }
.seo-header nav { display:flex; align-items:center; flex-wrap:wrap; gap:20px; }.seo-header nav a { font-size:13px; font-weight:750; text-decoration:none; }
.seo-header .seo-book,.seo-primary { width:fit-content; padding:12px 17px; border-radius:9px; background:var(--seo-lime); color:var(--seo-navy); font-weight:900; text-decoration:none; display:inline-block; }
.seo-page { width:min(1180px,calc(100% - 40px)); margin:auto; }.seo-page>section { padding:68px 0; border-bottom:1px solid var(--seo-line); }
.seo-hero { min-height:480px; display:flex; flex-direction:column; justify-content:center; }.seo-hero.seo-compact { min-height:390px; }
.seo-kicker { margin:0 0 14px; color:#738f00; font-size:11px; font-weight:950; letter-spacing:.16em; }
.seo-hero h1 { max-width:900px; margin:0; color:var(--seo-navy); font-size:clamp(44px,7vw,84px); letter-spacing:-.055em; line-height:.98; }.seo-hero h1 em { color:#779900; font-style:normal; }
.seo-hero>p:not(.seo-kicker) { max-width:720px; margin:26px 0 0; color:var(--seo-muted); font-size:17px; line-height:1.75; }
.seo-actions { margin-top:28px; display:flex; align-items:center; flex-wrap:wrap; gap:18px; }.seo-actions>a:not(.seo-primary) { font-weight:850; }
.seo-page h2 { margin:0 0 28px; color:var(--seo-navy); font-size:clamp(30px,4vw,50px); letter-spacing:-.045em; }.seo-page h3 { color:var(--seo-navy); }
.seo-card-grid,.seo-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }.seo-package-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.seo-card-grid article,.seo-facts article { min-width:0; padding:24px; border:1px solid var(--seo-line); border-radius:14px; background:#fff; }
.seo-package-grid article>small,.seo-card-grid article>small,.seo-facts small { color:#748d14; font-size:10px; font-weight:900; letter-spacing:.08em; }
.seo-package-grid h3 { margin:13px 0 4px; font-size:27px; }.seo-package-grid strong { font-size:23px; }.seo-package-grid p { color:var(--seo-muted); font-size:12px; }.seo-package-grid a { color:#637f00; font-weight:850; }
.seo-facts article { display:flex; flex-direction:column; gap:8px; }.seo-facts strong { font-size:22px; }
.seo-placeholder { min-height:120px; margin:-24px -24px 20px!important; padding:20px; border-radius:14px 14px 0 0; background:var(--seo-navy); color:var(--seo-lime)!important; display:flex; align-items:flex-end; font-size:13px!important; font-weight:900; }
.seo-card-grid article p,.seo-page section>p { color:var(--seo-muted); line-height:1.75; }.seo-compact-grid article:nth-child(n+4) { display:none; }
.seo-check-list,.seo-steps { padding-left:24px; color:var(--seo-muted); font-size:16px; line-height:2; }
.seo-faq { border-top:1px solid var(--seo-line); }.seo-faq details { padding:19px 4px; border-bottom:1px solid var(--seo-line); }.seo-faq summary { color:var(--seo-navy); cursor:pointer; font-weight:900; }.seo-faq p { color:var(--seo-muted); line-height:1.75; }
.seo-note { padding:16px 18px; border-left:4px solid var(--seo-lime); background:#f0f6dd; }
.seo-footer { padding:42px max(24px,calc((100vw - 1180px)/2)); background:var(--seo-navy); color:#fff; display:flex; align-items:flex-start; justify-content:space-between; gap:30px; }.seo-footer p { color:#aeb9c8; }.seo-footer address { display:flex; flex-direction:column; gap:10px; font-style:normal; }
@media (max-width:800px) { .seo-header { align-items:flex-start; flex-direction:column; }.seo-header nav { gap:13px; }.seo-page { width:min(100% - 32px,1180px); }.seo-page>section { padding:52px 0; }.seo-hero { min-height:430px; }.seo-card-grid,.seo-facts,.seo-package-grid { grid-template-columns:1fr; }.seo-footer { flex-direction:column; } }
