:root{--teal:#00a5a5;--teal-dk:#007d7d;--teal-lt:#33c0c0;--teal-bg:#edf7f7;--teal-mid:#b3e4e4;--char:#2d2d2d;--char-lt:#3c3c3c;--mid:#555;--light:#6d6d6d;--pale:#f7fafa;--sand:#e0f0f0;--line:#dde7e7;--font:'Familjen Grotesk',system-ui,sans-serif;--head:'Space Grotesk',system-ui,sans-serif;--r:16px;--shadow:0 20px 50px rgba(45,45,45,.14)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:17px}
body{font-family:var(--font);color:var(--char);background:#fff;line-height:1.6}
h1,h2,h3,.btn,.eyebrow,.price,.mp-code,.band b{font-family:var(--head)}
a{color:var(--teal-dk)}
.nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:2rem;padding:0 4vw;height:68px;background:rgba(45,45,45,.97);backdrop-filter:blur(12px);border-bottom:1px solid rgba(0,165,165,.25)}
.brand img{display:block}
.links{display:flex;gap:1.4rem;margin-left:auto}
.links a{color:rgba(255,255,255,.7);text-decoration:none;font-size:.82rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}
.links a:hover{color:var(--teal-lt)}
.nav-cta{display:flex;gap:.5rem}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.6rem 1.2rem;border-radius:2rem;font-weight:700;font-size:.86rem;text-decoration:none;border:1px solid transparent;transition:transform .15s,background .2s}
.btn:hover{transform:translateY(-1px)}
.btn.lg{padding:.9rem 1.6rem;font-size:.98rem}
.btn-primary{background:var(--teal);color:#fff}
.btn-primary:hover{background:var(--teal-lt)}
.nav .btn-ghost{border-color:rgba(255,255,255,.25);color:#fff;background:transparent}
.btn-ghost{border-color:var(--line);color:var(--char);background:#fff}
.btn-ghost.light{border-color:rgba(255,255,255,.4);color:#fff;background:transparent}
.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:3rem;align-items:center;padding:5rem 4vw 4rem;background:linear-gradient(180deg,var(--pale),#fff)}
.eyebrow{display:inline-block;font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;color:var(--teal-dk);background:var(--teal-bg);border:1px solid var(--teal-mid);padding:.3rem .8rem;border-radius:2rem;margin-bottom:1.2rem}
h1{font-size:clamp(2.2rem,4.6vw,3.6rem);line-height:1.05;letter-spacing:-.02em;margin-bottom:1.2rem}
h1 em{font-style:normal;color:var(--teal)}
.lead{font-size:1.15rem;color:var(--mid);max-width:36rem;margin-bottom:1.6rem}
.hero-actions{display:flex;gap:.7rem;flex-wrap:wrap;margin-bottom:2rem}
.hero-facts{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;max-width:40rem}
.hero-facts li{display:flex;flex-direction:column;font-size:.85rem;color:var(--light);border-left:3px solid var(--teal);padding-left:.7rem}
.hero-facts b{color:var(--char);font-family:var(--head)}
.mock{border-radius:18px;box-shadow:var(--shadow);overflow:hidden;border:1px solid var(--line);background:#fff}
.mock-bar{display:flex;align-items:center;gap:.4rem;padding:.55rem .9rem;background:#eef2f2;border-bottom:1px solid var(--line)}
.dot{width:10px;height:10px;border-radius:50%;background:#cfd8d8}
.mock-url{margin-left:.6rem;font-size:.74rem;color:var(--light);background:#fff;border-radius:6px;padding:.1rem .6rem;flex:1}
.mock-shot{display:block;width:100%;height:auto}
.mock-body{display:grid;grid-template-columns:1.1fr 1fr;min-height:360px}
.mock-map{position:relative;background:#f3efe6;background-image:linear-gradient(rgba(170,0,130,.35) 1px,transparent 1px),linear-gradient(90deg,rgba(170,0,130,.35) 1px,transparent 1px);background-size:72px 72px;overflow:hidden}
.blk{position:absolute;display:grid;place-items:center;font-family:var(--head);font-weight:700;font-size:.8rem;color:#4b0073;background:#dcdcdc;border:1px solid #aa0082}
.b1{left:0;top:40px;width:72px;height:72px}.b2{left:72px;top:40px;width:72px;height:72px}.b3{left:144px;top:40px;width:72px;height:72px}
.b4{left:0;top:112px;width:72px;height:72px}.b5{left:72px;top:112px;width:72px;height:72px}.b6{left:150px;top:140px;width:110px;height:110px;background:#646464;color:#fff;border-radius:40% 60% 50% 50%}
.blk.sel{background:#f5c04a;outline:3px solid #007d7d;outline-offset:-3px}
.parcel{position:absolute;left:84px;top:52px;width:46px;height:70px;background:rgba(0,165,165,.35);border:2px solid #007d7d;transform:rotate(-12deg)}
.mock-panel{padding:.9rem 1rem;border-left:1px solid var(--line);font-size:.8rem}
.mp-eyebrow{font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:var(--teal-dk)}
.mp-code{font-size:1.6rem;font-weight:700;line-height:1.1}
.mp-func{display:flex;align-items:center;gap:.4rem;font-weight:600;margin:.3rem 0 .5rem}
.mp-func i{width:12px;height:12px;border-radius:3px;background:#f5c04a;border:1px solid rgba(0,0,0,.2)}
.mp-grid{display:grid;grid-template-columns:1fr 1fr;gap:.35rem;margin-bottom:.6rem}
.mp-grid div{background:var(--pale);border:1px solid var(--line);border-radius:8px;padding:.3rem .5rem;display:flex;flex-direction:column}
.mp-grid small{font-size:.6rem;text-transform:uppercase;letter-spacing:.05em;color:var(--light)}
.mp-grid b{font-family:var(--head)}
.mp-chat{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.6rem}
.mp-chat .q{align-self:flex-end;background:var(--teal);color:#fff;border-radius:12px 12px 3px 12px;padding:.35rem .6rem;max-width:90%}
.mp-chat .a{align-self:flex-start;background:var(--pale);border:1px solid var(--line);border-radius:12px 12px 12px 3px;padding:.35rem .6rem;max-width:95%}
.mp-btn{display:inline-block;background:var(--teal);color:#fff;border-radius:2rem;padding:.35rem .8rem;font-weight:700;font-family:var(--head)}
.band{background:var(--char);color:#fff}
.band-in{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;padding:1.6rem 4vw;max-width:1200px;margin:0 auto}
.band-in>div{display:flex;flex-direction:column}
.band b{font-size:1.8rem;color:var(--teal-lt);line-height:1.1}
.band span{font-size:.82rem;color:rgba(255,255,255,.7)}
.section{padding:4.5rem 4vw;max-width:1200px;margin:0 auto}
.section.alt{max-width:none;background:var(--pale)}
.section.alt>*{max-width:1200px;margin-left:auto;margin-right:auto}
h2{font-size:clamp(1.6rem,3vw,2.3rem);letter-spacing:-.01em;margin-bottom:.6rem}
.sub{color:var(--mid);max-width:46rem;margin-bottom:2rem}
.steps,.grid,.who{display:grid;gap:1.2rem}
.steps{grid-template-columns:repeat(3,1fr);margin-top:1.5rem}
.step{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.4rem}
.step .n{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--teal);color:#fff;font-family:var(--head);font-weight:700;margin-bottom:.8rem}
h3{font-size:1.05rem;margin-bottom:.4rem}
.step p,.card p,.who p{color:var(--mid);font-size:.92rem}
.grid{grid-template-columns:repeat(3,1fr)}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.3rem}
.who{grid-template-columns:repeat(4,1fr)}
.paths-h{margin:2.4rem 0 1rem}
.paths{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.paths .card h3{margin-bottom:.4rem}
.paths-note{color:var(--mid);font-size:.92rem;margin-top:1rem;max-width:46rem}
.tm{font-size:.78rem;opacity:.7;margin-top:.4rem}
.who div{border-top:3px solid var(--teal);padding-top:.8rem}
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:1rem}
.plan{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.5rem}
.plan.featured{border-color:var(--teal);box-shadow:var(--shadow)}
.plan .tag{position:absolute;top:-.7rem;left:1.2rem;background:var(--teal);color:#fff;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.2rem .7rem;border-radius:2rem}
.price{font-size:1.7rem;font-weight:700;margin:.4rem 0 1rem;display:flex;flex-direction:column}
.price small{font-size:.85rem;font-weight:500;color:var(--light)}
.plan ul{list-style:none;display:flex;flex-direction:column;gap:.4rem;font-size:.9rem;color:var(--char-lt)}
.plan li::before{content:"✓ ";color:var(--teal-dk);font-weight:700}
.plan-for{font-size:.86rem;color:var(--light);margin:.3rem 0 .6rem;min-height:2.6em}
.yearly{display:flex;flex-direction:column;gap:.1rem;margin:-.4rem 0 1rem;padding:.6rem .8rem;background:rgba(0,165,165,.08);border-radius:.6rem;font-size:.9rem}
.yearly b{font-family:var(--head);color:var(--teal-dk)}
.yearly span{color:var(--light);font-size:.8rem}
.partner{display:grid;grid-template-columns:1.1fr 1.4fr;gap:2rem;margin-top:1.6rem;padding:1.8rem;background:#2d2d2d;color:#fff;border-radius:var(--r)}
.partner .eyebrow{color:var(--teal)}
.partner h3{font-size:1.35rem;margin:.3rem 0 .6rem;color:#fff}
.partner p{color:rgba(255,255,255,.78)}
.partner ul{list-style:none;display:flex;flex-direction:column;gap:.55rem;font-size:.9rem;color:rgba(255,255,255,.85)}
.partner li b{color:#fff}
.partner li::before{content:"— ";color:var(--teal)}
.sizes-cap{margin-top:1.6rem;font-size:.86rem;color:var(--light)}
.sizes{width:100%;border-collapse:collapse;margin-top:.5rem;font-size:.9rem;background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.sizes th,.sizes td{padding:.6rem .8rem;text-align:left;border-top:1px solid var(--line)}
.sizes th{font-family:var(--head);font-weight:600;background:#f6f7f7;border-top:0}
.sizes td:first-child{font-weight:600}
@media (max-width:980px){.partner{grid-template-columns:1fr}.sizes{display:block;overflow-x:auto}}
.teaser{display:grid;grid-template-columns:1fr 1.25fr;gap:3rem;align-items:center}
.teaser-text .eyebrow{display:inline-block;color:var(--teal-dk);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;margin-bottom:.6rem}
.teaser-text h2{margin-bottom:.8rem}
.teaser-text p{color:var(--mid);max-width:34rem}
.teaser-text ul{margin:1rem 0 1.4rem 1.1rem;color:var(--char-lt);display:flex;flex-direction:column;gap:.45rem}
.teaser-shot{margin:0;border-radius:var(--r);overflow:hidden;box-shadow:0 30px 70px rgba(20,40,40,.25);border:1px solid var(--line)}
.teaser-shot img{display:block;width:100%;height:auto}
@media (max-width:980px){.teaser{grid-template-columns:1fr;gap:1.6rem}}
.note{margin-top:1.4rem;color:var(--light);font-size:.86rem;max-width:60rem}
details{border-bottom:1px solid var(--line);padding:.9rem 0}
summary{cursor:pointer;font-family:var(--head);font-weight:600;font-size:1rem}
details p{color:var(--mid);margin-top:.5rem;max-width:50rem}
.cta{background:var(--char);color:#fff;text-align:center;padding:4.5rem 4vw}
.cta h2{color:#fff}
.cta p{color:rgba(255,255,255,.75);max-width:40rem;margin:0 auto 1.6rem}
.cta .hero-actions{justify-content:center;margin:0}
.foot{display:flex;align-items:center;gap:1.2rem;padding:1.6rem 4vw;font-size:.85rem;color:var(--light);border-top:1px solid var(--line)}
code{background:var(--sand);padding:.05rem .35rem;border-radius:5px;font-size:.92em}
@media (max-width:980px){.hero{grid-template-columns:1fr;padding-top:3rem}.steps,.grid,.plans,.paths{grid-template-columns:1fr}.who{grid-template-columns:1fr 1fr}.band-in{grid-template-columns:1fr 1fr}.links{display:none}.hero-facts{grid-template-columns:1fr}}
@media (max-width:600px){.who,.band-in{grid-template-columns:1fr}.nav{gap:.6rem}.nav .btn-ghost{display:none}.mock-body{grid-template-columns:1fr}.mock-map{min-height:220px}}
