
:root{--dark:#1b1464;--dark2:#2d1b8a;--acc:#ff5fa2;--accL:#ff5fa2;--accH:#e84a8e;--onAcc:#fff;--alt:#35d0e6;--paper:#f4f2ff;--ink:#1b2432;--line:#e1e1e1;--r:10px;--shadow:0 14px 40px rgba(0,0,0,.14);--font:'Sora',Impact,sans-serif}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth}
body{font-family:Inter,system-ui,sans-serif;color:var(--ink);background:#fff;line-height:1.65;font-size:17px}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3{font-family:var(--font);line-height:1.08;letter-spacing:.01em;text-transform:uppercase;font-weight:700}
.wrap{width:min(1160px,100% - 40px);margin-inline:auto}
.btn{display:inline-flex;align-items:center;gap:.55rem;padding:.9rem 1.6rem;border-radius:999px;font:600 .95rem Inter,sans-serif;text-decoration:none;border:2px solid transparent;transition:.2s;cursor:pointer}
.btn-acc{background:var(--acc);color:var(--onAcc)}
.btn-acc:hover{background:var(--accH);transform:translateY(-2px)}
.btn-ghost{border-color:rgba(255,255,255,.6);color:#fff}
.btn-ghost:hover{background:#fff;color:var(--dark)}
.btn-dark{background:var(--dark);color:#fff}
.btn-dark:hover{background:var(--dark2);transform:translateY(-2px)}
.btn svg{width:18px;height:18px}
header{position:sticky;top:0;z-index:50;background:var(--dark)}
.bar{display:flex;align-items:center;justify-content:space-between;height:72px;gap:1rem}
.logo{font-family:var(--font);font-weight:700;font-size:1.4rem;text-transform:uppercase;color:#fff;text-decoration:none;letter-spacing:.03em;white-space:nowrap}
.logo b{color:var(--alt)}
nav ul{display:flex;gap:1.5rem;list-style:none;padding:0}
nav a{color:#d9dde4;text-decoration:none;font-size:.9rem;font-weight:500;padding:.3rem 0;border-bottom:2px solid transparent;transition:.2s}
nav a:hover,nav a[aria-current]{color:#fff;border-color:var(--acc)}
.hdr-cta{display:flex;align-items:center;gap:1rem}
.hdr-cta .tel{color:#fff;font-weight:600;text-decoration:none;font-size:.95rem}
.hdr-cta .btn{padding:.6rem 1.2rem}
.burger{display:none;background:none;border:0;color:#fff;padding:.4rem;cursor:pointer}
.burger svg{width:28px;height:28px}
.hero{position:relative;color:#fff;display:grid;align-items:center;min-height:min(80svh,720px);overflow:hidden;
 background:linear-gradient(100deg,#1b1464f2 0%,#1b1464b8 55%,#1b146466 100%),url("https://images.unsplash.com/photo-1773291933719-fc02bea5a68f?auto=format&fit=crop&w=2000&q=75") center/cover}
.hero .wrap{padding-block:5rem;position:relative;z-index:1}
.hero h1{font-size:clamp(3rem,8vw,6rem);max-width:12ch}
.hero .tag{color:var(--alt);font-family:var(--font);font-size:clamp(1.3rem,3vw,1.9rem);font-weight:600;margin:1.2rem 0 1.4rem}
.hero p.lead{max-width:56ch;color:#e3e8ef}
.hero p.lead+p.lead{margin-top:.9rem}
.actions{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:2.2rem}
.pagehead{background:var(--dark);color:#fff;padding:3.5rem 0 3rem;position:relative;overflow:hidden}
.pagehead h1{font-size:clamp(2.4rem,6vw,4.2rem)}
.pagehead .bar2{width:70px;height:5px;background:var(--acc);border-radius:3px;margin-top:1.1rem}
.strip{background:var(--acc);color:var(--onAcc)}
.strip .wrap{display:flex;flex-wrap:wrap;gap:.5rem 2.5rem;justify-content:center;padding-block:1rem;font-family:var(--font);font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-size:1.1rem}
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,5rem);align-items:center;padding:5rem 0}
.split.rev .media{order:2}
.media img{border-radius:var(--r);aspect-ratio:4/3;object-fit:cover;width:100%;box-shadow:var(--shadow)}
.kicker{color:var(--dark2);opacity:.75;font-weight:600;font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;margin-bottom:.6rem}
.split h2,.sec h2{font-size:clamp(2.1rem,4.5vw,3.1rem);margin-bottom:1.2rem}
.split p+p{margin-top:1rem}
.split .btn{margin-top:1.8rem}
.alt{background:var(--paper)}
.quote{background:var(--dark);color:#fff;text-align:center;padding:5.5rem 0;position:relative;overflow:hidden}
.quote .mark{font-family:serif;font-size:6rem;line-height:.5;color:var(--alt)}
.quote blockquote{font-family:var(--font);text-transform:uppercase;font-size:clamp(1.7rem,4vw,2.8rem);line-height:1.15;max-width:24ch;margin:1rem auto 0;font-weight:600;position:relative}
.badge{display:inline-flex;align-items:center;gap:.6rem;margin-top:1.8rem;padding:.7rem 1.2rem;border:2px solid var(--dark);border-radius:999px;font-weight:600;font-size:.9rem}
.badge svg{width:20px;height:20px;color:var(--accL)}
.cta{background:var(--dark);color:#fff;padding:4.5rem 0;text-align:center;position:relative;overflow:hidden}
.cta h2{font-size:clamp(2rem,4.5vw,3.2rem);margin-bottom:1.6rem}
.cta .btn{position:relative}
.sec{padding:4.5rem 0}
.sec>.wrap>p.intro{max-width:62ch;color:#46505f}
.gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:1.4rem;margin-top:2.2rem}
.gal figure{background:#fff;border-radius:var(--r);overflow:hidden;border:1px solid var(--line);transition:.25s}
.gal figure:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.gal img{aspect-ratio:3/2;width:100%;object-fit:cover}
.gal figcaption{padding:1.1rem 1.3rem 1.3rem;border-top:4px solid var(--accL)}
.gal h3{font-size:1.4rem;color:var(--dark)}
.gal p{color:#46505f;font-size:.95rem;margin-top:.2rem}
.tgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.6rem}
.tcard{background:#fff;border:1px solid var(--line);border-left:5px solid var(--accL);border-radius:var(--r);padding:2rem;box-shadow:0 2px 0 rgba(0,0,0,.02)}
.tcard p{font-size:1.1rem}
.tcard cite{display:block;margin-top:1.2rem;font-style:normal;font-weight:600;color:var(--dark)}
.cgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.2rem;margin-top:2rem}
.pill{display:flex;align-items:center;gap:1rem;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.3rem 1.5rem;text-decoration:none;transition:.2s}
.pill:hover{border-color:var(--accL);transform:translateY(-3px);box-shadow:var(--shadow)}
.pill svg{width:28px;height:28px;color:var(--accL);flex:none}
.pill span{overflow-wrap:anywhere;font-weight:600}
form.req{display:grid;grid-template-columns:1fr 1fr;gap:1rem;max-width:760px;margin-top:2rem}
form.req .full{grid-column:1/-1}
form.req input,form.req textarea{width:100%;padding:.95rem 1.1rem;border:1.5px solid #cfd4dc;border-radius:var(--r);font:inherit;background:#fff}
form.req input:focus,form.req textarea:focus{outline:3px solid #ff5fa255;border-color:var(--accL)}
form.req textarea{min-height:150px;resize:vertical}
form.req .btn{justify-self:start}
.thanks{display:none;max-width:760px;margin-top:1.5rem;padding:1.1rem 1.4rem;border-radius:var(--r);background:var(--paper);border-left:5px solid var(--accL);font-weight:600}
footer{background:var(--dark);color:#b8c0cc;font-size:.88rem;padding:3rem 0 2rem;border-top:4px solid var(--acc)}
.fgrid{display:flex;flex-wrap:wrap;gap:1.6rem 3rem;justify-content:space-between;align-items:flex-start}
footer h4{color:#fff;font-family:var(--font);text-transform:uppercase;font-size:1.2rem;letter-spacing:.04em;margin-bottom:.6rem}
footer a{color:#e3e8ef;text-decoration:none}
footer a:hover{text-decoration:underline}
.social{display:flex;gap:.7rem;margin-top:.4rem}
.social a{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;border:1.5px solid rgba(255,255,255,.35);transition:.2s}
.social a:hover{background:var(--acc);border-color:var(--acc);color:var(--onAcc)}
.social svg{width:20px;height:20px}
.fine{margin-top:2rem;padding-top:1.2rem;border-top:1px solid rgba(255,255,255,.12);opacity:.75;font-size:.8rem}

body{--grad:linear-gradient(135deg,#1b1464 0%,#5b2bd1 45%,#ff5fa2 100%)}
header{background:linear-gradient(90deg,#1b1464,#3a1ea8)}
.hero{background:var(--grad)}
.pagehead,.quote,.cta,footer{background:var(--grad)}
.strip{background:linear-gradient(90deg,#35d0e6,#ff5fa2)}
.btn-acc{background:linear-gradient(90deg,#ff5fa2,#ff8a5f)}
.btn-acc:hover{background:linear-gradient(90deg,#e84a8e,#f27348)}
.deco{position:absolute;inset:0;pointer-events:none;z-index:0}
.deco svg{position:absolute;width:100%;height:100%}
.blob{position:absolute;border-radius:50%;filter:blur(60px);opacity:.55}
.b1{width:420px;height:420px;background:#35d0e6;right:-120px;top:-100px}
.b2{width:360px;height:360px;background:#ff5fa2;left:30%;bottom:-180px}
.b3{width:300px;height:300px;background:#7c4dff;left:-100px;top:20%}
.media img,.gal img{border-radius:28px 6px 28px 6px}
.gal figure,.tcard,.pill{border-radius:24px}
footer{border-top:0}

@media (max-width:1080px){
 .hdr-cta .tel{display:none}
 .burger{display:block}
 nav{position:absolute;top:72px;left:0;right:0;background:var(--dark);max-height:0;overflow:hidden;transition:max-height .3s}
 nav.open{max-height:460px;border-top:1px solid rgba(255,255,255,.12)}
 nav ul{flex-direction:column;gap:0;padding:.5rem 20px 1rem}
 nav li a{display:block;padding:.85rem 0;border-bottom:1px solid rgba(255,255,255,.1);font-size:1rem}
}
@media (max-width:820px){
 .hdr-cta .btn{display:none}
 .split{grid-template-columns:1fr;padding:3.5rem 0;gap:2.2rem}
 .split.rev .media{order:0}
 .hero .wrap{padding-block:3.5rem}
 form.req{grid-template-columns:1fr}
}
@media (max-width:480px){
 body{font-size:16px}
 .actions .btn,.cta .btn{width:100%;justify-content:center}
 .gal{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}html{scroll-behavior:auto}}
