:root {
    --bg: #0A0D14;
    --bg-soft: #10141D;
    --panel: #141924;
    --panel-2: #1B2130;
    --gold: #F0C572;
    --gold-2: #D9A441;
    --gold-soft: rgba(240, 197, 114, .14);
    --emerald: #2FD9A6;
    --rose: #FF6B81;
    --ink: #F5F2EA;
    --paper: #FFF8EC;
    --muted: #9099AC;
    --line: rgba(255, 255, 255, .09);
    --line2: rgba(255, 255, 255, .16);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 120px; }
body {
    font-family: 'Manrope', sans-serif;
    background: var(--bg);
    color: var(--ink);
    overflow-x: hidden;
    -webkit-font-smoothing: antialiased;
}
.font-d { font-family: 'Playfair Display', serif; letter-spacing: -.01em; }
::selection { background: var(--gold); color: #0A0D14; }
::-webkit-scrollbar { width: 10px; }
::-webkit-scrollbar-track { background: var(--bg-soft); }
::-webkit-scrollbar-thumb { background: linear-gradient(180deg, var(--gold), var(--gold-2)); border-radius: 99px; }
img { max-width: 100%; }
a { color: inherit; }
.text-muted2 { color: var(--muted); }
.text-gold { color: var(--gold); }

.grid-lines {
    background-image: linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px);
    background-size: 46px 46px;
}
.grain2::after {
    content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .4;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.05'/%3E%3C/svg%3E");
}
.eyebrow2 {
    display: inline-flex; align-items: center; gap: 12px;
    font-size: 11px; font-weight: 800; letter-spacing: .28em;
    text-transform: uppercase; color: var(--gold);
}
.eyebrow2::before { content:''; width:34px; height:1px; background: linear-gradient(90deg, var(--gold), transparent); }
.eyebrow2.center { gap: 14px; justify-content:center; }
.eyebrow2.center::before { content:''; display:block; width:34px; height:1px; background: linear-gradient(90deg, var(--gold), transparent); }
.eyebrow2.center::after { content:''; width:34px; height:1px; background: linear-gradient(90deg, transparent, var(--gold)); }

.btn2 {
    display:inline-flex; align-items:center; justify-content:center; gap:9px;
    border-radius:8px; padding:16px 30px; font-size:13.5px; font-weight:700;
    letter-spacing:.02em; border:none; cursor:pointer; transition:.35s;
    text-decoration:none; white-space:nowrap;
}
.btn2-gold { background: linear-gradient(90deg, var(--gold), var(--gold-2)); color:#171016; box-shadow:0 18px 40px -14px rgba(240,197,114,.55); }
.btn2-gold:hover { transform: translateY(-2px); color:#171016; box-shadow:0 24px 50px -14px rgba(240,197,114,.7); }
.btn2-line { border:1px solid var(--line2); color: var(--ink); background: transparent; }
.btn2-line:hover { border-color: var(--gold); color: var(--gold); }
.btn2-dark { background: var(--ink); color: #0A0D14; }
.btn2-dark:hover { background: var(--gold); color:#171016; transform: translateY(-2px); }
.btn2-ghost { background: rgba(255,255,255,.06); color: var(--ink); border:1px solid var(--line); }
.btn2-ghost:hover { background: rgba(255,255,255,.1); border-color: var(--line2); }

section { position: relative; }

/* ANNOUNCEMENT */
.ann-bar { background: var(--gold); color:#171016; font-size:12.5px; font-weight:800; text-align:center; padding:9px 40px 9px 16px; position:relative; overflow:hidden; height:38px; transition:height .3s, padding .3s; }
.ann-bar.hide { height:0; padding:0; overflow:hidden; }
.ann-msg { position:absolute; left:0; right:40px; top:0; display:flex; align-items:center; justify-content:center; height:38px; opacity:0; transition:opacity .5s; }
.ann-msg.show { opacity:1; }
.ann-close { position:absolute; right:12px; top:50%; transform:translateY(-50%); background:none; border:none; color:#171016; opacity:.6; font-size:14px; }
.ann-close:hover { opacity:1; }

/* NAV */
.nav2-wrap { position:fixed; left:0; right:0; top:38px; z-index:1040; transition:top .3s; }
.nav2-wrap.notop { top:0; }
.nav2 { background: rgba(10,13,20,.55); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); border-bottom:1px solid var(--line); transition:.4s; }
.nav2.solid { background: rgba(10,13,20,.92); border-color: var(--line2); }
.nav2-inner { max-width:1180px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; padding:18px 20px; }
.brand2 { display:flex; align-items:center; gap:11px; text-decoration:none; }
.brand2-name { font-family:'Playfair Display',serif; font-size:31px; font-weight:700; color:var(--ink); line-height:1; }
.brand2-name em { font-style:italic; color:var(--gold); }
.brand2-sub { font-size:8.5px; font-weight:800; letter-spacing:.32em; color:var(--muted); text-transform:uppercase; display:block; margin-top:2px; }
.links2 { display:flex; align-items:center; gap:34px; }
.links2 a { font-size:13px; font-weight:600; text-decoration:none; color:rgba(245,242,234,.65); position:relative; padding:4px 0; transition:.25s; }
.links2 a::after { content:''; position:absolute; left:0; bottom:-2px; width:0; height:1px; background: var(--gold); transition:.3s; }
.links2 a:hover, .links2 a.active { color: var(--ink); }
.links2 a:hover::after, .links2 a.active::after { width:100%; }
.burger2 { width:42px; height:42px; border-radius:50%; background: rgba(255,255,255,.08); border:1px solid var(--line); color: var(--ink); display:flex; align-items:center; justify-content:center; font-size:18px; }
.mmenu2 { position:fixed; inset:0; z-index:1200; background:#0A0D14; display:flex; flex-direction:column; opacity:0; pointer-events:none; transition:.4s; }
.mmenu2.open { opacity:1; pointer-events:auto; }
.mmenu2 a.ml { display:flex; justify-content:space-between; align-items:center; padding:18px 0; border-bottom:1px solid var(--line); font-family:'Playfair Display',serif; font-size:32px; text-decoration:none; color: var(--ink); }
.mmenu2 a.ml:hover { color: var(--gold); }

/* DOCK */
.dock { position:fixed; right:22px; top:50%; transform: translateY(-50%); z-index:1000; display:flex; flex-direction:column; gap:10px; }
.dock-btn { width:50px; height:50px; border-radius:50%; background: rgba(20,25,36,.85); backdrop-filter: blur(10px); border:1px solid var(--line2); color: var(--ink); display:flex; align-items:center; justify-content:center; font-size:18px; text-decoration:none; transition:.3s; position:relative; overflow:hidden; }
.dock-btn:hover { background: var(--gold); color:#171016; border-color: var(--gold); transform: scale(1.08); }
.dock-btn .lbl { position:absolute; right:58px; top:50%; transform: translateY(-50%); background:#171016; color:#fff; font-size:11.5px; font-weight:700; padding:6px 12px; border-radius:6px; white-space:nowrap; opacity:0; pointer-events:none; transition:.25s; }
.dock-btn:hover .lbl { opacity:1; right:64px; }

/* HERO */
.hero2 { padding:190px 0 0; overflow:hidden; }
.hero2-spot { position:absolute; inset:0; pointer-events:none; background: radial-gradient(600px circle at var(--mx,50%) var(--my,30%), rgba(240,197,114,.10), transparent 60%); }
.hero2-glow { position:absolute; border-radius:50%; filter: blur(120px); pointer-events:none; }
.typewriter { color: var(--gold); font-style:italic; border-right:2px solid var(--gold); padding-right:4px; }
.hero2 h1 { font-size: clamp(2.6rem,5.6vw,4.3rem); line-height:1.06; font-weight:600; }
.hero2-lead { color: var(--muted); font-size:16px; line-height:1.75; max-width:480px; }
.stat-chip2 { border:1px solid var(--line); background: rgba(255,255,255,.03); border-radius:10px; padding:14px 18px; }
.stat-chip2 strong { font-family:'Playfair Display',serif; font-size:24px; display:block; color: var(--ink); line-height:1; }
.stat-chip2 small { font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color: var(--muted); }
.goal-tabs { display:flex; gap:8px; flex-wrap:wrap; }
.goal-tab { border:1px solid var(--line); background: rgba(255,255,255,.03); color: var(--muted); border-radius:10px; padding:12px 18px; font-size:13px; font-weight:700; cursor:pointer; transition:.25s; display:flex; align-items:center; gap:8px; }
.goal-tab.active { background: var(--gold-soft); border-color: var(--gold); color: var(--gold); }
.goal-tab:hover { color: var(--ink); }
.goal-panel-wrap { position:relative; border-radius:22px; border:1px solid var(--line2); background: linear-gradient(160deg, var(--panel), var(--panel-2)); padding:30px; overflow:hidden; }
.goal-panel-wrap::before { content:''; position:absolute; inset:0; background: radial-gradient(circle at 100% 0%, rgba(240,197,114,.12), transparent 60%); }
.score-ring-wrap { position:relative; width:150px; height:150px; margin:0 auto; }
.score-ring-wrap svg { filter: drop-shadow(0 0 18px rgba(240,197,114,.35)); }
.mini-bars { display:flex; align-items:flex-end; gap:6px; height:56px; }
.mini-bars div { flex:1; border-radius:4px 4px 2px 2px; background: linear-gradient(180deg, var(--gold), var(--gold-2)); transform-origin:bottom; animation: barUp .8s ease forwards; }
@keyframes barUp { from { transform: scaleY(0); } }
.goal-fade { animation: goalFade .5s ease; }
@keyframes goalFade { from { opacity:0; transform: translateY(10px); } to { opacity:1; transform: translateY(0); } }
.trust-marquee { overflow:hidden; border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:20px 0; margin-top:70px; }
.trust-track { display:flex; gap:64px; width:max-content; animation: trustScroll 32s linear infinite; }
.trust-marquee:hover .trust-track { animation-play-state: paused; }
@keyframes trustScroll { to { transform: translateX(-50%); } }
.trust-word { font-family:'Playfair Display',serif; font-style:italic; font-size:20px; color: rgba(255,255,255,.28); white-space:nowrap; letter-spacing:.02em; }

/* TIMELINE */
.tl-wrap { overflow-x:auto; padding-bottom:20px; cursor:grab; scroll-snap-type: x proximity; }
.tl-wrap.dragging { cursor:grabbing; scroll-snap-type:none; }
.tl-track { display:flex; gap:0; position:relative; padding:40px 6px 10px; min-width:max-content; }
.tl-track::before { content:''; position:absolute; left:0; right:0; top:76px; height:1px; background: linear-gradient(90deg, transparent, var(--line2) 6%, var(--line2) 94%, transparent); }
.tl-card { width:250px; flex-shrink:0; padding:0 20px; scroll-snap-align:start; }
.tl-dot { width:14px; height:14px; border-radius:50%; background: var(--bg); border:2px solid var(--gold); margin:0 auto 18px; position:relative; z-index:2; box-shadow:0 0 0 6px var(--bg); }
.tl-year { font-family:'Playfair Display',serif; font-size:30px; color: var(--gold); text-align:center; font-weight:700; }
.tl-body { background: rgba(255,255,255,.03); border:1px solid var(--line); border-radius:14px; padding:16px; text-align:center; margin-top:10px; }
.tl-body h6 { font-size:14px; font-weight:800; margin-bottom:6px; }
.tl-body p { font-size:12.5px; color: var(--muted); margin:0; line-height:1.6; }

/* SERVICES */
.svc2-list-item { display:flex; align-items:center; gap:14px; padding:16px 18px; border-radius:12px; cursor:pointer; transition:.25s; border:1px solid transparent; }
.svc2-list-item:hover { background: rgba(255,255,255,.04); }
.svc2-list-item.active { background: var(--gold-soft); border-color: var(--gold); }
.svc2-list-item .ic { width:42px; height:42px; border-radius:10px; display:flex; align-items:center; justify-content:center; color:#fff; font-size:18px; flex-shrink:0; }
.svc2-list-item strong { font-size:14.5px; display:block; }
.svc2-list-item small { font-size:11.5px; color: var(--muted); }
.svc2-list-item .cnt { margin-left:auto; font-size:11px; font-weight:800; background: rgba(255,255,255,.08); border-radius:999px; padding:3px 10px; color: var(--muted); }
.svc2-list-item.active .cnt { background: rgba(240,197,114,.25); color: var(--gold); }
.svc2-search { background: rgba(255,255,255,.05); border:1px solid var(--line2); border-radius:10px; color: var(--ink); padding:13px 16px 13px 42px; font-size:13.5px; width:100%; outline:none; transition:.3s; }
.svc2-search:focus { border-color: var(--gold); }
.svc2-search::placeholder { color: var(--muted); }
.svc2-card { background: var(--panel); border:1px solid var(--line); border-radius:16px; padding:22px; cursor:pointer; transition:.3s; height:100%; position:relative; overflow:hidden; }
.svc2-card:hover { border-color: var(--gold); transform: translateY(-5px); box-shadow:0 24px 50px -20px rgba(240,197,114,.3); }
.svc2-card .svc2-ico { width:46px; height:46px; border-radius:12px; display:flex; align-items:center; justify-content:center; color:#fff; font-size:20px; }
.svc2-hl { position:absolute; top:14px; right:14px; background: var(--emerald); color:#062f24; font-size:9.5px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; border-radius:999px; padding:3px 9px; }
.svc2-tag { font-size:11px; font-weight:800; color: var(--gold); background: var(--gold-soft); border-radius:999px; padding:4px 11px; }

/* CALCULATOR */
.calc2-tabs { display:flex; gap:8px; flex-wrap:wrap; }
.calc2-tab { border:1px solid var(--line2); background:transparent; color: var(--muted); border-radius:10px; padding:10px 16px; font-size:12.5px; font-weight:700; cursor:pointer; transition:.25s; }
.calc2-tab.active { background: var(--ink); color:#0A0D14; border-color: var(--ink); }
.calc2-shell { border:1px solid var(--line2); border-radius:22px; background: linear-gradient(160deg, var(--panel), var(--bg-soft)); overflow:hidden; }
input[type=range] { -webkit-appearance:none; appearance:none; width:100%; height:6px; border-radius:99px; background: linear-gradient(to right, var(--gold) var(--fill,50%), rgba(255,255,255,.12) var(--fill,50%)); outline:none; cursor:pointer; }
input[type=range]::-webkit-slider-thumb { -webkit-appearance:none; width:22px; height:22px; border-radius:50%; background:#171016; border:5px solid var(--gold); box-shadow:0 6px 18px rgba(240,197,114,.5); transition:.2s; }
input[type=range]::-webkit-slider-thumb:hover { transform: scale(1.15); }
input[type=range]::-moz-range-thumb { width:20px; height:20px; border-radius:50%; background:#171016; border:5px solid var(--gold); }
.calc2-stat { background: rgba(255,255,255,.04); border-radius:12px; padding:12px 16px; border:1px solid var(--line); }

/* ZIGZAG */
.zig-row { display:flex; align-items:center; gap:50px; }
.zig-row.rev { flex-direction: row-reverse; }
.zig-visual { flex:0 0 42%; aspect-ratio:1.15/1; border-radius:20px; position:relative; display:flex; align-items:center; justify-content:center; overflow:hidden; border:1px solid var(--line2); }
.zig-visual .num { font-family:'Playfair Display',serif; font-size:140px; font-weight:700; opacity:.14; color:#fff; line-height:1; }
.zig-visual i { position:relative; font-size:52px; color:#fff; }
.zig-text { flex:1; }
.zig-text h3 { font-size: clamp(1.5rem,2.6vw,2rem); }
.zig-text p { color: var(--muted); line-height:1.75; max-width:440px; }
@media(max-width:767px) { .zig-row, .zig-row.rev { flex-direction:column; } .zig-visual { width:100%; flex:none; } }

/* STEPPER */
.stepper2 { position:relative; }
.stepper2::before { content:''; position:absolute; left:50%; top:0; bottom:0; width:1px; background: linear-gradient(180deg, transparent, var(--line2) 8%, var(--line2) 92%, transparent); transform: translateX(-50%); }
.step2-row { display:flex; align-items:center; position:relative; margin-bottom:60px; }
.step2-row:last-child { margin-bottom:0; }
.step2-card { width:45%; background: var(--panel); border:1px solid var(--line); border-radius:16px; padding:24px; }
.step2-row.right { justify-content:flex-end; }
.step2-dot { position:absolute; left:50%; top:50%; transform: translate(-50%,-50%); width:46px; height:46px; border-radius:50%; background: var(--bg); border:2px solid var(--gold); display:flex; align-items:center; justify-content:center; font-family:'Playfair Display',serif; font-weight:700; color: var(--gold); z-index:2; }
@media(max-width:767px) { .stepper2::before { left:22px; } .step2-row, .step2-row.right { justify-content:flex-start; padding-left:56px; } .step2-card { width:100%; } .step2-dot { left:22px; } }

/* WALL */
.wall { column-count:3; column-gap:16px; }
.wall-card { break-inside:avoid; margin-bottom:16px; background: var(--panel); border:1px solid var(--line); border-radius:16px; padding:22px; transition:.3s; }
.wall-card:hover { border-color: var(--gold); transform: translateY(-4px); }
.wall-card.feature { background: linear-gradient(160deg, var(--panel-2), var(--panel)); border-color: var(--gold); }
.wall-av { width:38px; height:38px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-weight:800; font-size:13px; color:#fff; flex-shrink:0; }
@media(max-width:991px) { .wall { column-count:2; } }
@media(max-width:576px) { .wall { column-count:1; } }

/* FAQ */
.faq2-tab { border:none; background:transparent; color: var(--muted); font-size:13px; font-weight:700; padding:10px 4px; border-bottom:2px solid transparent; transition:.25s; white-space:nowrap; }
.faq2-tab.active { color: var(--gold); border-color: var(--gold); }
.faq2-item { border-bottom:1px solid var(--line); padding:20px 0; }
.faq2-q { display:flex; justify-content:space-between; align-items:center; gap:16px; cursor:pointer; background:none; border:none; color: var(--ink); width:100%; text-align:left; padding:0; }
.faq2-q strong { font-size:15.5px; font-weight:700; }
.faq2-icon { width:30px; height:30px; border-radius:50%; border:1px solid var(--line2); display:flex; align-items:center; justify-content:center; flex-shrink:0; transition:.3s; font-size:13px; }
.faq2-item.open .faq2-icon { background: var(--gold); color:#171016; border-color: var(--gold); transform: rotate(180deg); }
.faq2-a { max-height:0; overflow:hidden; transition: max-height .35s ease; }
.faq2-a p { padding-top:14px; color: var(--muted); font-size:14px; line-height:1.75; max-width:640px; margin:0; }

/* CTA BAND */
.cta-band { background: linear-gradient(120deg, var(--gold), #e8b95f 55%, var(--gold-2)); border-radius:26px; color:#171016; overflow:hidden; position:relative; }
.cta-band .ring { position:absolute; border:26px solid rgba(23,16,22,.06); border-radius:50%; }

/* FORMS */
.form2-group { position:relative; margin-bottom:20px; }
.form2-input { width:100%; background: rgba(255,255,255,.04); border:1px solid var(--line2); border-radius:10px; padding:18px 16px 8px; font-size:14px; color: var(--ink); outline:none; transition:.25s; }
.form2-input:focus { border-color: var(--gold); }
.form2-label { position:absolute; left:16px; top:17px; font-size:14px; color: var(--muted); pointer-events:none; transition:.2s; background:transparent; }
.form2-input:focus + .form2-label, .form2-input:not(:placeholder-shown) + .form2-label { top:7px; font-size:10.5px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color: var(--gold); }
textarea.form2-input { resize:none; }
.chip2 { border-radius:8px; border:1px solid var(--line2); background:transparent; color: var(--muted); padding:9px 16px; font-size:12.5px; font-weight:700; cursor:pointer; transition:.25s; }
.chip2.active { background: var(--gold); border-color: var(--gold); color:#171016; }
.info-card2 { background: var(--paper); color:#171016; border-radius:20px; padding:32px; position:relative; overflow:hidden; }
.info-row2 { display:flex; align-items:center; gap:14px; padding:14px 0; border-bottom:1px solid rgba(23,16,22,.1); }
.info-row2:last-of-type { border:none; }
.info-row2 .ic2 { width:42px; height:42px; border-radius:10px; background:#171016; color: var(--gold); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.clock-badge { display:inline-flex; align-items:center; gap:8px; background:#171016; color: var(--gold); border-radius:999px; padding:8px 16px; font-size:12px; font-weight:700; }

/* FOOTER */
footer2 { background: var(--bg-soft); border-top:1px solid var(--line); display:block; }
.nl-inline { background: var(--panel); border:1px solid var(--line2); border-radius:18px; padding:26px 30px; }
.nl-inline input { background: rgba(255,255,255,.05); border:1px solid var(--line2); border-radius:10px; padding:13px 16px; color: var(--ink); outline:none; font-size:13.5px; }
.nl-inline input::placeholder { color: var(--muted); }
.nl-inline input:focus { border-color: var(--gold); }
.foot-link2 { color: var(--muted); text-decoration:none; font-size:13.5px; background:none; border:none; padding:0; cursor:pointer; transition:.2s; }
.foot-link2:hover { color: var(--gold); }
.soc2 { width:38px; height:38px; border-radius:50%; border:1px solid var(--line2); display:inline-flex; align-items:center; justify-content:center; color: var(--muted); font-size:12px; font-weight:800; text-decoration:none; transition:.25s; }
.soc2:hover { background: var(--gold); border-color: var(--gold); color:#171016; }

/* MODAL */
.modal-content2 { border-radius:20px; overflow:hidden; border:1px solid var(--line2); background: var(--panel); color: var(--ink); }
.modal2-head { background: linear-gradient(120deg, var(--gold), var(--gold-2)); color:#171016; padding:28px; }
.legal2 { border-bottom:1px solid var(--line); padding-bottom:14px; margin-bottom:14px; }
.legal2:last-child { border:none; }
.legal2 h6 { color: var(--gold); font-weight:800; font-size:13.5px; margin-bottom:5px; }
.legal2 p { font-size:13px; color: var(--muted); margin:0; line-height:1.65; }

/* LEGAL PAGE (terms/privacy) */
.legal-page { padding: 170px 0 90px; }
.legal-hero { background: linear-gradient(160deg, var(--panel), var(--bg-soft)); border:1px solid var(--line2); border-radius:24px; padding:48px; position:relative; overflow:hidden; }
.legal-hero::before { content:''; position:absolute; inset:0; background: radial-gradient(circle at 100% 0%, rgba(240,197,114,.12), transparent 60%); }
.legal-section { background: var(--panel); border:1px solid var(--line); border-radius:16px; padding:28px; transition:.3s; }
.legal-section:hover { border-color: var(--line2); }
.legal-section h5 { color: var(--gold); font-weight:800; font-size:15px; margin-bottom:10px; display:flex; align-items:center; gap:10px; }
.legal-section h5 .num { width:32px; height:32px; border-radius:50%; background: var(--gold-soft); color: var(--gold); display:flex; align-items:center; justify-content:center; font-family:'Playfair Display',serif; font-size:14px; }
.legal-section p { color: var(--muted); font-size:14px; line-height:1.75; margin:0; }

/* PAGE HEADER (for sub pages) */
.page-head { padding: 180px 0 50px; position:relative; overflow:hidden; }
.page-head .glow { position:absolute; border-radius:50%; filter: blur(120px); pointer-events:none; }

/* TOAST */
.toast2 { position:fixed; bottom:24px; right:16px; z-index:2000; background: var(--panel); border:1px solid var(--gold); border-left:4px solid var(--gold); border-radius:12px; padding:16px 20px; box-shadow:0 20px 60px -12px rgba(0,0,0,.6); display:flex; gap:12px; align-items:flex-start; max-width: min(360px, calc(100vw - 2rem)); transform: translateX(130%); transition: transform .45s cubic-bezier(.22,1,.36,1); }
.toast2.show { transform: translateX(0); }
.back-top2 { position:fixed; bottom:24px; left:16px; z-index:1500; width:46px; height:46px; border-radius:50%; background: var(--ink); color:#0A0D14; border:none; font-size:18px; display:flex; align-items:center; justify-content:center; box-shadow:0 16px 40px -10px rgba(0,0,0,.6); opacity:0; pointer-events:none; transition:.3s; }
.back-top2.show { opacity:1; pointer-events:auto; }
.no-scrollbar::-webkit-scrollbar { display:none; }
.no-scrollbar { scrollbar-width: none; }

@media(max-width:991px) { .links2 { display:none; } .dock { display:none; } }
@media(max-width:576px) { .hero2 { padding-top:170px; } .page-head { padding-top: 150px; } }