:root { --ink:#102f46; --green:#0f4d3c; --mint:#dff1e7; --cream:#f7f5ef; --line:rgba(16,47,70,.14); --sans:"DM Sans",sans-serif; --display:"Manrope",sans-serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { background:#fff; color:var(--ink); font-family:var(--sans); margin:0; }
a { color:inherit; }
.seo-header { align-items:center; background:#fff; border-bottom:1px solid var(--line); display:grid; gap:28px; grid-template-columns:1fr auto auto; min-height:78px; padding:14px clamp(20px,5vw,72px); position:relative; z-index:2; }
.seo-brand { align-items:center; display:inline-flex; font-family:var(--display); font-size:1.1rem; font-weight:800; gap:10px; text-decoration:none; width:max-content; }
.seo-brand img { height:38px; object-fit:contain; width:38px; }
.seo-header nav { display:flex; gap:28px; }
.seo-header nav a,.seo-languages a { font-size:.85rem; font-weight:700; text-decoration:none; }
.seo-languages { display:flex; gap:6px; }
.seo-languages a { border-radius:999px; padding:8px 10px; }
.seo-languages a.is-active { background:var(--ink); color:#fff; }
main { overflow:hidden; }
.seo-breadcrumbs { align-items:center; display:flex; font-size:.78rem; gap:9px; margin:0 auto; max-width:1440px; opacity:.68; padding:22px clamp(20px,5vw,72px) 0; }
.seo-breadcrumbs a { text-decoration:none; }
.seo-hero { align-items:center; display:grid; gap:clamp(36px,7vw,110px); grid-template-columns:minmax(0,1fr) minmax(360px,.9fr); margin:0 auto; max-width:1440px; min-height:680px; padding:60px clamp(20px,5vw,72px) 80px; }
.seo-eyebrow { color:var(--green); font-size:.76rem; font-weight:800; letter-spacing:.13em; margin:0 0 18px; text-transform:uppercase; }
.seo-hero h1 { font-family:var(--display); font-size:clamp(3.3rem,7vw,7.6rem); letter-spacing:-.065em; line-height:.88; margin:0; max-width:850px; text-wrap:balance; }
.seo-lead { font-size:clamp(1.05rem,1.55vw,1.35rem); line-height:1.62; margin:32px 0 0; max-width:680px; }
.seo-actions { align-items:center; display:flex; flex-wrap:wrap; gap:24px; margin-top:38px; }
.seo-button { background:var(--green); border-radius:999px; color:#fff; display:inline-flex; font-weight:700; justify-content:center; min-height:52px; padding:16px 25px; text-decoration:none; }
.seo-contact { font-weight:700; text-underline-offset:4px; }
.seo-hero__visual { align-items:center; background:var(--mint); border-radius:42px; display:flex; justify-content:center; min-height:520px; overflow:hidden; padding:50px; }
.seo-hero__visual img { height:auto; max-height:490px; max-width:100%; object-fit:contain; }
.seo-details { background:var(--cream); display:grid; gap:clamp(40px,9vw,160px); grid-template-columns:1fr 1fr; padding:clamp(70px,10vw,150px) max(clamp(20px,8vw,140px),calc((100vw - 1440px)/2 + 72px)); }
.seo-details h2,.seo-features h2,.seo-related h2 { font-family:var(--display); font-size:clamp(2rem,4vw,4.4rem); letter-spacing:-.045em; line-height:1.06; margin:0; text-wrap:balance; }
.seo-details>p { font-size:clamp(1rem,1.4vw,1.25rem); line-height:1.75; margin:42px 0 0; max-width:650px; }
.seo-features { margin:0 auto; max-width:1240px; padding:clamp(80px,11vw,150px) clamp(20px,5vw,72px); }
.seo-features ul { display:grid; gap:0; grid-template-columns:1fr 1fr; list-style:none; margin:58px 0 0; padding:0; }
.seo-features li { align-items:flex-start; border-top:1px solid var(--line); display:flex; font-size:1.05rem; gap:14px; line-height:1.5; padding:24px 20px 24px 0; }
.seo-features li:nth-child(odd) { margin-right:32px; }
.seo-features li span { color:var(--green); font-weight:800; }
.seo-keywords { display:flex; flex-wrap:wrap; gap:10px; justify-content:center; padding:0 20px 90px; }
.seo-keywords span { background:var(--cream); border:1px solid var(--line); border-radius:999px; font-size:.9rem; padding:11px 16px; }
.seo-related { background:var(--mint); padding:clamp(75px,10vw,130px) max(clamp(20px,8vw,140px),calc((100vw - 1440px)/2 + 72px)); }
.seo-related>div { display:grid; grid-template-columns:1fr 1fr; margin-top:45px; }
.seo-related a { align-items:center; border-top:1px solid rgba(15,77,60,.2); display:flex; font-weight:700; justify-content:space-between; padding:22px 18px 22px 0; text-decoration:none; }
.seo-related a:nth-child(odd) { margin-right:36px; }
.seo-cta { align-items:center; background:var(--ink); color:#fff; display:flex; gap:50px; justify-content:space-between; margin:0; padding:clamp(65px,8vw,110px) max(clamp(20px,8vw,140px),calc((100vw - 1440px)/2 + 72px)); }
.seo-cta h2 { font-family:var(--display); font-size:clamp(2.1rem,4vw,4.5rem); letter-spacing:-.045em; margin:0; }
.seo-cta p { line-height:1.6; margin:18px 0 0; max-width:680px; opacity:.78; }
.seo-button--light { background:#fff; color:var(--ink); flex:0 0 auto; }
.seo-footer { display:flex; flex-wrap:wrap; gap:26px; padding:38px clamp(20px,5vw,72px); }
.seo-footer span { margin-left:auto; }
@media (max-width:760px) {
  .seo-header { gap:12px; grid-template-columns:1fr auto; min-height:68px; padding:12px 18px; }
  .seo-header nav { display:none; }
  .seo-brand img { height:34px; width:34px; }
  .seo-hero { gap:35px; grid-template-columns:1fr; min-height:0; padding:46px 20px 70px; }
  .seo-hero h1 { font-size:clamp(3rem,15vw,5rem); }
  .seo-hero__visual { border-radius:26px; min-height:330px; padding:28px; }
  .seo-details { gap:28px; grid-template-columns:1fr; padding:75px 20px; }
  .seo-details>p { margin:0; }
  .seo-features { padding:75px 20px; }
  .seo-features ul,.seo-related>div { grid-template-columns:1fr; margin-top:38px; }
  .seo-features li:nth-child(odd),.seo-related a:nth-child(odd) { margin-right:0; }
  .seo-cta { align-items:flex-start; flex-direction:column; padding:70px 20px; }
  .seo-footer { flex-direction:column; }
  .seo-footer span { margin-left:0; }
}
