:root{--bg:#fff;--panel:#f3f3f1;--ink:#10162f;--navy:#27235f;--slate:#222b4a;--orange:#f47227;--cta:#27235f;--cta-h:#000;--tag:#ebeaf6;--tag-ink:#b3410f;--muted:#5b6074;--line:#dedbd5;--r:18px;--w:1440px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font:400 1rem/1.6 Mulish,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:var(--bg);color:var(--ink);overflow-x:hidden}
img,svg{max-width:100%;display:block}
a{color:var(--tag-ink);text-underline-offset:3px}
a:hover{color:var(--cta-h)}
:focus-visible{outline:3px solid var(--orange);outline-offset:2px;border-radius:4px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:8px;background:#fff;padding:8px 14px;z-index:99;border-radius:8px}.skip:focus{left:8px}
.wrap{width:min(100% - 24px,var(--w));margin-inline:auto}
.narrow{width:min(100% - 24px,820px)}
.ic{width:20px;height:20px;flex:none}.ic.sm{width:16px;height:16px}

/* type */
.t{font-weight:300;letter-spacing:-.02em;line-height:1.12;margin:.5rem 0 1rem;font-size:clamp(1.75rem,3.4vw,2.6rem)}
.t strong{font-weight:600}.t.big{font-size:clamp(2.3rem,6vw,4rem)}.t.light{color:#fff}
.lead{font-size:clamp(1.05rem,1.6vw,1.25rem);color:#3d4260;max-width:34em}
h3{font-size:1.2rem;margin:0 0 .4rem;font-weight:600;letter-spacing:-.01em}
p{margin:0 0 1rem}
.sub,.fine,.muted-l{color:var(--muted);font-size:.95rem}
.pill{display:inline-block;background:var(--tag);color:var(--tag-ink);font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:6px 12px;border-radius:8px}
.eyebrow-s{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:600;margin:0 0 .6rem}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:10px 22px;border-radius:8px;font:600 .9rem/1 Mulish,sans-serif;letter-spacing:.04em;text-transform:uppercase;text-decoration:none;border:1.5px solid transparent;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.btn-primary,.btn-cta{background:var(--cta);color:#fff}.btn-primary:hover,.btn-cta:hover{background:var(--cta-h);color:#fff}
.btn-ghost{border-color:var(--navy);color:var(--navy);background:transparent}.btn-ghost:hover{background:var(--navy);color:#fff}
.btn-light{background:#fff;color:var(--navy)}.btn-light:hover{background:var(--tag);color:var(--navy)}
.btn-cta{white-space:nowrap;border-radius:999px;background:var(--cta);color:#fff;text-transform:none;letter-spacing:0;font-size:.95rem;padding:10px 20px}.btn-cta:hover{background:#000;color:#fff}
.btns{display:flex;flex-wrap:wrap;gap:12px;margin:1.4rem 0}

/* header: floating pill */
.head{position:sticky;top:10px;z-index:50;padding-top:10px}
.bar{display:flex;align-items:center;gap:20px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 10px 8px 18px;box-shadow:0 2px 8px rgba(39,35,95,.09)}
.logo img{height:44px;width:auto}
.nav{display:flex;gap:4px;margin-right:auto}
.nav>a,.dd>a{white-space:nowrap;color:var(--ink);text-decoration:none;font-weight:500;font-size:.82rem;letter-spacing:.07em;text-transform:uppercase;padding:10px 12px;border-radius:8px;display:block}
.nav>a:hover,.dd>a:hover{background:var(--panel);color:var(--ink)}
.dd{position:relative}
.dd-list{display:none;position:absolute;top:100%;left:0;min-width:240px;background:#fff;border-radius:14px;padding:8px;box-shadow:0 2px 8px rgba(39,35,95,.09)}
.dd:hover .dd-list,.dd:focus-within .dd-list{display:block}
.dd-list a{display:block;padding:9px 12px;color:var(--ink);text-decoration:none;border-radius:8px;font-size:.95rem}.dd-list a:hover{background:var(--panel)}
.news{display:flex;align-items:center;gap:8px;font-size:.78rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--ink);text-decoration:none}
.news b{color:var(--tag-ink);background:var(--tag);padding:2px 6px;border-radius:4px;font-size:.68rem}
.menu-btn{display:none;margin-left:auto;background:var(--panel);border:0;border-radius:10px;width:44px;height:44px;place-items:center;color:var(--ink);cursor:pointer}

/* hero */
.hero{position:relative;overflow:hidden;padding:40px 0 56px}
.hero-grid{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:24px;min-height:600px}
.hero-copy{position:relative;z-index:2;padding-top:36px}
.hero-copy .lead{margin-top:1rem}
.teamcard-wrap{margin-top:2.2rem}
.teamcard{position:relative;max-width:310px;height:150px}
.card-front{position:absolute;inset:0;background:#fff;border-radius:12px;padding:16px 18px;box-shadow:0 2px 8px rgba(39,35,95,.09);z-index:2}
.card-front h3{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase}
.card-front p{font-size:.9rem;margin-bottom:.6rem}
.ghost{position:absolute;inset:0;background:#f3f3f1;border-radius:12px;opacity:.9}
.g1{transform:translate(-14px,10px) rotate(-5deg)}.g2{transform:translate(-26px,22px) rotate(-9deg);opacity:.6}
.tags{list-style:none;display:flex;gap:6px;padding:0;margin:0}.tags li{background:#e7ebf5;color:var(--navy);font-size:.68rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:4px 8px;border-radius:4px}
.hero-art{position:absolute;right:-20%;top:-6%;width:min(64vw,800px);aspect-ratio:1;pointer-events:none}
.spot{position:absolute;width:11%;aspect-ratio:1;transform:translate(-50%,-50%)}
.spot::before{content:"";position:absolute;left:50%;top:50%;width:70%;height:240%;transform-origin:50% 0;transform:translateX(-50%) rotate(var(--a));background:linear-gradient(rgba(0,16,66,.55),rgba(0,16,66,0));filter:blur(9px);border-radius:50%}
.s1{left:71.75%;top:12.3%;--a:120deg}.s2{left:90.9%;top:64.9%;--a:200deg}.s3{left:35.1%;top:90.9%;--a:290deg}.s4{left:9.1%;top:35.1%;--a:20deg}
.orb{position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 35% 30%,#3a4a8a,var(--navy) 70%);display:grid;place-items:center;color:#fff;box-shadow:0 2px 8px rgba(39,35,95,.09);animation:spin-r 80s linear infinite}
.orb .ic{width:46%;height:46%}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes spin-r{to{transform:rotate(-360deg)}}
.stats{position:absolute;right:0;bottom:12px;z-index:3;background:rgba(245,244,241,.88);padding:14px 16px;border-radius:14px;margin:0;display:grid;gap:18px;max-width:230px}
.stats dt{font-size:2rem;font-weight:500;line-height:1;letter-spacing:-.02em}.stats dd{margin:4px 0 0;color:var(--muted);font-size:.9rem}

/* sections */
.sec{padding:56px 0}.sec-head{max-width:760px;margin-bottom:28px}
.page-head{padding:48px 0 20px}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:0 0 18px;font-size:.85rem;color:var(--muted)}
.crumbs li+li::before{content:"/";margin-right:6px}.crumbs a{color:var(--muted)}
.panel{background:var(--panel);border-radius:var(--r)}.pad{padding:26px}
.grid2,.grid3,.grid4,.cards,.plans{display:grid;gap:16px}
.grid2{grid-template-columns:repeat(2,1fr)}.grid3{grid-template-columns:repeat(3,1fr)}.grid4{grid-template-columns:repeat(4,1fr)}
.cards{grid-template-columns:repeat(3,1fr)}.tight{margin-bottom:16px}
.card{display:flex;flex-direction:column;background:var(--panel);border-radius:var(--r);padding:26px;text-decoration:none;color:var(--ink);transition:transform .15s,box-shadow .15s}
.card:hover{transform:translateY(-2px);box-shadow:0 2px 8px rgba(39,35,95,.09);color:var(--ink)}
.card p{color:#3d4260}.card ul{list-style:none;padding:0;margin:0 0 1rem;display:grid;gap:6px;font-size:.92rem}
.card li{display:flex;gap:8px;align-items:center}.card li .ic{color:var(--orange)}
.card-ic{display:grid;place-items:center;width:46px;height:46px;border-radius:12px;background:var(--navy);color:#fff;margin-bottom:16px}
.card-alt{background:var(--navy);color:#fff}.card-alt p{color:#c9d0ea}.card-alt:hover{color:#fff}.card-alt .card-ic{background:var(--orange);color:var(--navy)}
.more{margin-top:auto;display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:.85rem;letter-spacing:.06em;text-transform:uppercase;color:var(--tag-ink)}
.card-alt .more{color:var(--orange)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.checks{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.checks li{display:flex;gap:12px;align-items:flex-start}.checks .ic{color:var(--cta);margin-top:3px}
.checks strong{display:block;font-weight:600}.checks em{font-style:normal;color:var(--muted);font-size:.92rem}.checks.plain{gap:10px}
.steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.steps li{border-top:2px solid var(--navy);padding-top:16px}.num{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--navy);color:#fff;font-weight:600;margin-bottom:10px}
.mini-steps{margin:0;padding-left:1.2rem;display:grid;gap:10px}
.names{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:10px}
.names li{background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 16px;font-weight:500}
.big-p{font-size:1.1rem;margin:0}.note{margin-top:16px}.brands{margin-top:1rem}
.clients{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.client{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;display:grid;gap:2px}
.client[hidden]{display:none}.client span{color:var(--muted);font-size:.88rem}.client em{font-style:normal;font-size:.9rem;color:var(--tag-ink)}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.chip{border:1.5px solid var(--navy);background:transparent;color:var(--navy);padding:8px 16px;border-radius:999px;font:500 .9rem Mulish,sans-serif;cursor:pointer;min-height:40px}
.chip.on{background:var(--navy);color:#fff}
.faq details{border-bottom:1px solid var(--line);padding:4px 0}
.faq summary{cursor:pointer;font-weight:600;padding:14px 0;list-style:none;display:flex;justify-content:space-between;gap:12px}
.faq summary::after{content:"+";font-size:1.4rem;line-height:1;color:var(--cta)}.faq details[open] summary::after{content:"−"}
.faq summary::-webkit-details-marker{display:none}.faq p{color:#3d4260;margin:0 0 14px}

/* tables, plans */
.table-wrap{overflow-x:auto;margin-top:28px;border-radius:var(--r);border:1px solid var(--line);background:#fff}
.tbl{border-collapse:collapse;width:100%;min-width:620px;font-size:.95rem}
.tbl th,.tbl td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line)}.tbl thead th{background:var(--panel);font-size:.8rem;letter-spacing:.06em;text-transform:uppercase}
.plans{grid-template-columns:repeat(3,1fr)}
.plan{background:var(--panel);border-radius:var(--r);padding:24px;display:flex;flex-direction:column}
.plan ul{margin:0 0 1.2rem;padding-left:1.1rem;color:#3d4260}.plan .btn{margin-top:auto;justify-content:center}
.price{font-size:1.8rem;font-weight:600;letter-spacing:-.02em;margin:.2rem 0}.price small{font-size:.85rem;font-weight:400;color:var(--muted)}.renew{color:var(--muted)}

/* dark quote panel + cta band */
.dark{padding:24px 0 64px}
.dark-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:28px;background:var(--slate);color:#e9ecf8;border-radius:28px;padding:clamp(22px,4vw,48px)}
.dark-card p{color:#c9d0ea}.contact-list{list-style:none;padding:0;margin:1.5rem 0 0;display:grid;gap:12px}
.contact-list li{display:flex;gap:10px;align-items:center}.contact-list a{color:#fff}
.dark-form .pill{margin-bottom:14px}
.band{padding:40px 0 64px}.band .wrap{background:var(--navy);color:#fff;border-radius:28px;padding:clamp(24px,4vw,48px)}
.band .t{color:#fff;margin-top:0}
.band .btn-primary{background:var(--orange);color:var(--navy)}.band .btn-primary:hover{background:#fff}

/* forms */
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px}.fld{display:grid;gap:6px;align-content:start}.fld.wide,.plan-note{grid-column:1/-1}
.fld label{font-size:.85rem;font-weight:600}.fld abbr{text-decoration:none;color:var(--cta)}
input,select,textarea{width:100%;font:inherit;font-size:1rem;padding:12px 14px;border:1.5px solid #cfcac2;border-radius:10px;background:#fff;color:var(--ink)}
input:focus,select:focus,textarea:focus{border-color:var(--navy);outline:3px solid rgba(244,114,39,.35)}
[aria-invalid=true]{border-color:#b3261e}.err{color:#b3261e;font-size:.85rem;margin:0}
.dark-form label{color:#e9ecf8}.dark-form .err{color:#ffb4a9}.dark-form input,.dark-form select,.dark-form textarea{background:#3a4366;border-color:#4a5580;color:#fff}
.dark-form .fine,.dark-form .fine a{color:#c9d0ea}.dark-form a{color:#f47227}
.hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.notice{border-radius:12px;padding:14px 16px;margin:0 0 16px}.notice.ok{background:#e3f3ea;color:#0d4a2b}.notice.warn{background:#fff1d6;color:#5a3b00}.notice.err{background:#fde3df;color:#7a1710}
.notice p{margin:.3rem 0 0}.legal-p{max-width:68ch}

/* footer */
.foot{background:var(--navy);color:#c9d0ea;padding:56px 0 24px;margin-top:24px}
.foot a{color:#fff;text-decoration:none}.foot a:hover{text-decoration:underline;color:#fff}
.foot h3{color:#fff;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase}
.foot ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.fgrid4{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.2fr;gap:28px}
.flogo{background:#fff;border-radius:12px;padding:6px 10px;margin-bottom:14px;height:56px;width:auto}
.foot .muted-l{color:#9aa3c7}.social{margin-top:14px;display:flex;flex-wrap:wrap;gap:12px;font-size:.9rem}
.legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:36px;padding-top:18px;border-top:1px solid #2c3866;font-size:.85rem}

.sticky{display:none}.mnav{display:none}

/* responsive */
@media (max-width:1320px){.news{display:none}}
@media (max-width:1100px){.grid4{grid-template-columns:repeat(2,1fr)}}
@media (max-width:860px){.fgrid4{grid-template-columns:1fr 1fr}}
@media (max-width:900px){
  .menu-btn{display:grid}.btn-cta{display:none}.bar{border-radius:24px;flex-wrap:wrap;padding:8px 10px 8px 14px}
  .nav{display:none;width:100%;flex-direction:column;margin:0;padding:6px 0 10px}.nav.open{display:flex}
  .dd-list{display:block;position:static;box-shadow:none;background:transparent;padding:0 0 0 14px}.dd:hover .dd-list{display:block}
  .hero-grid{grid-template-columns:1fr;min-height:0}
  .hero-art{position:relative;right:auto;top:auto;width:100%;max-width:420px;margin:-10px auto 0;opacity:.9}
  .stats{position:static;grid-template-columns:repeat(3,1fr);max-width:none;gap:10px}.stats dt{font-size:1.6rem}
  .cards,.grid3,.grid2,.plans,.clients,.steps,.split,.dark-grid{grid-template-columns:1fr}
  .steps{gap:22px}
  .fgrid{grid-template-columns:1fr}
  .sticky{display:grid;grid-template-columns:1fr 1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:60;background:#fff;border-top:1px solid var(--line);padding:8px 12px calc(8px + env(safe-area-inset-bottom));gap:8px}
  .sticky a{display:flex;justify-content:center;align-items:center;gap:6px;min-height:44px;border-radius:10px;font-weight:600;text-decoration:none;color:var(--navy);background:var(--panel)}
  .sticky a.q{background:var(--cta);color:#fff}.sticky.off{display:none}
  body{padding-bottom:70px}
}
@media (max-width:560px){.grid4,.fgrid4{grid-template-columns:1fr}.hero{padding-top:20px}}
@media print{.head,.sticky,.hero-art{display:none}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* photos + showreel (demo media: replace with real Hasnet photography) */
.photo{margin:0;border-radius:var(--r);overflow:hidden;position:relative;background:var(--panel)}
.photo img{width:100%;height:100%;object-fit:cover}
.card-photo{aspect-ratio:16/10;margin:-26px -26px 18px;border-radius:var(--r) var(--r) 0 0;width:calc(100% + 52px)}
.card-photo img{transition:transform .5s}.card:hover .card-photo img{transform:scale(1.04)}
.card-ic{margin-top:-40px;position:relative;box-shadow:0 0 0 5px var(--panel)}.card-alt .card-ic{margin-top:0;box-shadow:none}
.head-split{display:grid;grid-template-columns:1.15fr .85fr;gap:36px;align-items:center}
.head-photo{aspect-ratio:4/3;border-radius:28px}
.wide-photo{aspect-ratio:21/9;margin-top:28px;border-radius:28px}
.photo-stack{position:relative}.photo-stack .tall{aspect-ratio:4/5;border-radius:28px}
.float-card{position:absolute;left:18px;right:18px;bottom:18px;background:rgba(245,244,241,.97)}
.float-card .checks{gap:10px}.float-card .checks em{display:none}
.reel-copy .t{margin-top:14px}.photo-card{position:relative;overflow:hidden;border-radius:20px;min-height:420px;display:flex;align-items:flex-end}
.photo-card .bg{position:absolute;inset:0;border-radius:0}.photo-card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(18,24,48,.92) 25%,rgba(18,24,48,.1) 80%)}
.dark-card-in{position:relative;z-index:2;padding:26px}
/* DEMO badge: visible only while config demo_media is on */
@media (max-width:900px){.head-split{grid-template-columns:1fr}.head-photo{order:-1;aspect-ratio:16/10}.reel-box{min-height:520px}.reel-box::after{background:linear-gradient(0deg,rgba(0,16,66,.9) 35%,rgba(0,16,66,.2))}.reel-copy{align-self:flex-end}.photo-stack .tall{aspect-ratio:4/3}.float-card{position:static;margin-top:-30px;margin-inline:12px}}

/* ===== INNER PAGES: same language as home (navy hero box, grey panels, pill buttons) ===== */
.btn{border-radius:999px;text-transform:none;letter-spacing:0;font-size:.92rem;min-height:44px}
.btn-primary,.btn-light{background:#27235f;color:#fff}.btn-primary:hover,.btn-light:hover{background:var(--orange);color:#27235f}
.btn-ghost{border-color:#27235f;color:#27235f}.btn-ghost:hover{background:#27235f;color:#fff}
.pill{background:#fff;color:var(--ink);border:1px solid var(--line);text-transform:none;letter-spacing:.02em;font-size:.78rem;font-weight:600;border-radius:999px;padding:5px 12px}
.page-head{padding:16px 0 10px}
.page-head>.wrap{background:#27235f;color:#fff;border-radius:32px;padding:clamp(24px,4.5vw,56px);
  background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:48px 48px}
.page-head .pill{background:rgba(255,255,255,.12);border-color:transparent;color:#fff}
.page-head .lead{color:#c9d0ea}.page-head .crumbs ol,.page-head .crumbs a{color:#c9d0ea}.page-head .legal-p{color:#c9d0ea}
.page-head .btn-primary{background:#fff;color:#27235f}.page-head .btn-primary:hover{background:var(--orange)}
.page-head .btn-ghost{border-color:#fff;color:#fff}.page-head .btn-ghost:hover{background:#fff;color:#27235f}
.page-head .head-photo{border-radius:24px}
.page-head a:not(.btn){color:#f47227}
.sec{padding:10px 0}
.sec>.wrap{background:var(--panel);border-radius:32px;padding:clamp(20px,3.5vw,44px)}
.sec>.wrap.narrow{width:min(100% - 24px,var(--w))}
.sec>.wrap .panel,.sec>.wrap .card:not(.card-alt),.sec>.wrap .plan,.sec>.wrap .client{background:#fff}
.sec>.wrap .table-wrap{border-color:transparent}
.sec>.wrap .names li{border-color:transparent}
.card-ic{box-shadow:0 0 0 5px #fff}.card-alt .card-ic{box-shadow:none}
.card{border-radius:22px}.card-photo{border-radius:22px 22px 0 0}
.sec .t{margin-top:.6rem}
.band{padding:10px 0 10px}
.foot{width:min(100% - 24px,var(--w));margin:10px auto 16px;border-radius:32px;padding:44px 0 22px}
.foot .wrap{width:min(100% - 56px,100%)}
.chips{margin-bottom:20px}.chip{border-color:#27235f;color:#27235f;background:#fff}.chip.on{background:#27235f;color:#fff}
.fld input,.fld select,.fld textarea{background:#fff}
.sec>.wrap>.panel.pad.narrow,.panel .form{background:transparent}
.more{color:#27235f}.card-alt .more{color:var(--orange)}
.plan .price{color:#27235f}
@media (max-width:900px){
  .head{padding-top:10px}.page-head>.wrap{border-radius:24px}.sec>.wrap{border-radius:24px}.foot{border-radius:24px}
  .head-split .head-photo{margin-bottom:6px}
  .steps{grid-template-columns:1fr}.band .btns .btn{width:100%;justify-content:center}
  .tbl{min-width:560px}
}
@media (max-width:560px){.btns .btn{flex:1 1 100%;justify-content:center}.h-btns .h-btn{flex:1 1 100%}}

/* ===== PLACEHOLDERS ===== */
.photo.ph{display:grid;place-items:center;background:#dcdcd8;color:#8c8c88}
.photo.ph .ph-ic{width:34px;height:34px;opacity:.9}
.photo img{display:none}
.logo-ph{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 16px;border-radius:12px;background:#dcdcd8;color:#6d6d69;font-size:.8rem;letter-spacing:.12em}
.logo-ph.on-dark{background:rgba(255,255,255,.14);color:#c9d0ea;margin-bottom:14px}
.head{position:static;padding:14px 0 0}

/* ===== HOME — built to the approved wireframe ===== */
.w-btns{display:flex;flex-wrap:wrap;gap:10px}
.w-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:9px 22px;border-radius:999px;font:600 .8rem/1 Mulish,sans-serif;text-decoration:none;border:1.5px solid transparent;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.w-btn-solid{background:#27235f;color:#fff}.w-btn-solid:hover{background:var(--orange);color:#27235f}
.w-btn-outline{border-color:currentColor;background:transparent}.w-btn-outline:hover{background:#fff;color:#27235f}
.w-btn-light{background:#fff;color:#27235f}.w-btn-light:hover{background:var(--orange)}
.w-btn.sm{min-height:32px;padding:7px 18px;font-size:.74rem}
.w-sec{padding:7px 0}.w-sec.tight{padding:7px 0}
.w-panel{background:#f3f3f1;border-radius:32px;padding:clamp(16px,2.6vw,30px)}
.w-h2{font-weight:500;font-size:clamp(1.25rem,2vw,1.6rem);letter-spacing:-.01em;margin:0 0 20px;line-height:1.2}.w-h2.center{text-align:center}.w-h2.light{color:#fff}
.w-big{font-weight:400;font-size:clamp(2.1rem,4.6vw,3.3rem);line-height:1.05;letter-spacing:-.03em;margin:0}

/* hero */
.w-hero{padding:14px 0 7px}
.w-hero-box{position:relative;display:grid;grid-template-columns:1fr 46%;min-height:420px;background:#27235f;color:#fff;border-radius:32px;overflow:hidden;
  background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:48px 48px}
.w-hero-copy{align-self:center;padding:clamp(24px,4.5vw,56px);position:relative;z-index:2}
.w-kicker{font-size:.72rem;margin:0 0 12px;color:#c9d0ea}
.w-hero h1{font-weight:500;font-size:clamp(2rem,4.4vw,3.2rem);line-height:1.08;letter-spacing:-.025em;margin:0 0 16px}
.w-lead{color:#c9d0ea;font-size:.88rem;max-width:26em;margin:0 0 22px}
.w-hero .w-btn-solid{background:#fff;color:#27235f}.w-hero .w-btn-solid:hover{background:var(--orange)}.w-hero .w-btn-outline{color:#fff}
.w-hero-img{position:relative}
.w-hero-img .photo{position:absolute;inset:0;border-radius:0 0 0 32px;background:#d6d6d2}
.w-hero-img::after{content:"";position:absolute;right:0;bottom:0;width:92px;height:54px;background:#fff;border-radius:30px 0 0 0}
.w-hero-img::before{content:"";position:absolute;right:92px;bottom:0;width:20px;height:20px;background:radial-gradient(circle at 0 0,transparent 19px,#fff 20px);z-index:2}
/* strip */
.w-strip{list-style:none;margin:0;padding:12px 16px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;background:#f3f3f1;border-radius:999px}
.w-strip li{display:flex;align-items:center;gap:12px;min-width:0}
.w-circle{flex:none;width:42px;height:42px;border-radius:50%;background:#27235f;color:#fff;display:grid;place-items:center}
.w-txt strong{display:block;font-size:.8rem;line-height:1.2}.w-txt em{display:block;font-style:normal;font-size:.7rem;color:var(--muted);line-height:1.3;margin-top:2px}
/* tab bar */
.w-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border-radius:999px;padding:7px 8px 7px 8px;margin-bottom:18px}
.w-bar.plain{background:transparent;padding:0 6px;margin-bottom:16px}.w-bar .grow{flex:1;margin:0}
.w-tabs{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;min-width:0}.w-tabs::-webkit-scrollbar{display:none}
.w-tab{border:0;background:transparent;font:500 .78rem Mulish,sans-serif;padding:8px 18px;border-radius:999px;cursor:pointer;color:#5b6074;white-space:nowrap}
.w-tab.on{background:#27235f;color:#fff}
.w-nav{display:flex;gap:6px;flex:none;align-items:center}
.w-round{flex:none;width:30px;height:30px;min-width:30px;padding:0;border-radius:50%;border:0;background:#e4e4e1;color:#27235f;display:grid;place-items:center;cursor:pointer}
.w-round .ic{width:14px;height:14px}
.w-round.fill{background:#27235f;color:#fff}.w-round:first-child svg{transform:scaleX(-1)}.w-round:hover{background:var(--orange);color:#27235f}
.w-bar:not(.plain) .w-nav{padding-right:6px}
/* cards */
.w-track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:2px 0 4px}
.w-track[hidden]{display:none}.w-track::-webkit-scrollbar{display:none}
.w-card{flex:0 0 calc((100% - 28px)/3);scroll-snap-align:start;background:#fff;border-radius:18px;padding:8px 8px 14px;display:flex;flex-direction:column;min-width:0}
.w-card .photo.ratio{aspect-ratio:16/10;border-radius:12px}
.w-card h3{font-size:.8rem;font-weight:600;margin:12px 8px 3px;line-height:1.3}
.w-card p{font-size:.7rem;color:#5b6074;margin:0 8px 14px;flex:1;line-height:1.45}
.w-card-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 8px}
.w-meta{font-size:.82rem;font-weight:600;color:#27235f}
.w-track.four .w-card{flex-basis:calc((100% - 42px)/4)}
.w-panel.bleed .w-track{margin-right:calc(-1 * clamp(16px,2.6vw,30px));padding-right:clamp(16px,2.6vw,30px)}
.w-dots{display:flex;justify-content:center;gap:5px;margin:14px 0 0;min-height:6px}
.w-dots i{width:6px;height:6px;border-radius:99px;background:#d4d4d0;transition:width .2s,background .2s}.w-dots i.on{width:22px;background:#27235f}
.w-seeall{text-align:center;margin:6px 0 0;font-size:.72rem}.w-seeall a{color:#5b6074}
/* guide */
.w-guide{display:grid;grid-template-columns:1fr 1.15fr;gap:30px;align-items:center;position:relative;overflow:hidden;min-height:260px}
.w-quote{position:absolute;left:14px;top:-26px;font:400 9rem/1 Georgia,serif;color:#e2e2df;pointer-events:none}
.w-guide .w-big{position:relative;padding-left:clamp(0px,2vw,24px)}
.w-steps{list-style:none;margin:0;padding:0 0 0 20px;border-left:3px solid #27235f;display:grid;gap:16px;font-size:.76rem;color:#5b6074;line-height:1.5}
.w-steps strong{display:block;color:#27235f;font-size:.82rem;margin-bottom:1px}
/* voices */
.w-voices-in{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:center}
.w-stack{position:relative;min-height:240px}
.w-stack .photo{position:absolute;border-radius:16px}
.w-stack .a{left:0;top:0;width:56%;height:62%;background:#e3e3e0}.w-stack .b{left:22%;bottom:0;width:62%;height:70%;background:#d6d6d2}
.w-white{background:#fff;border-radius:16px;padding:22px}
.w-who{display:flex;gap:12px;align-items:center;margin-bottom:14px}
.w-who strong{display:block;font-size:.85rem}.w-who em{display:flex;gap:4px;align-items:center;font-style:normal;font-size:.7rem;color:var(--muted)}.w-who small{font-size:.66rem;color:#5b6074}
.ic.xs{width:11px;height:11px}
.w-avatar{flex:none;width:44px;height:44px;border-radius:50%;background:#d6d6d2;color:#27235f;display:grid;place-items:center;font-weight:700}
.w-quote-t{margin:0 0 14px;text-align:center;font-style:italic;font-size:.78rem;color:#5b6074;min-height:3.2em}
.w-ref-nav{display:flex;justify-content:center;gap:8px;margin-bottom:14px}
.w-wide{display:flex;align-items:center;justify-content:center;gap:10px;background:#27235f;color:#fff;border-radius:999px;min-height:42px;text-decoration:none;font-weight:600;font-size:.78rem}
.w-wide i{width:22px;height:22px;border-radius:50%;background:#fff;color:#27235f;display:grid;place-items:center}.w-wide:hover{background:var(--orange);color:#27235f}
/* numbers */
.w-nums{display:grid;grid-template-columns:.8fr .65fr 1fr;gap:26px;align-items:center}
.w-nums dl{margin:0;display:grid;gap:22px}.w-nums dt{font-size:clamp(1.8rem,3.4vw,2.6rem);font-weight:400;letter-spacing:-.02em;line-height:1}.w-nums dd{margin:5px 0 0;font-size:.7rem;color:#5b6074;max-width:22ch}
.w-nums .photo.tall{aspect-ratio:3/4;border-radius:16px}
.w-nums-t .w-h2{margin-bottom:12px}.w-nums-t p{font-size:.76rem;color:#5b6074}
/* services */
.w-svcs{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.w-svc{display:flex;flex-direction:column;min-height:240px;background:#fff;color:#27235f;border-radius:18px;padding:18px;text-decoration:none;transition:background .2s,color .2s}
.w-num{align-self:flex-end;font-size:1.5rem;font-weight:300;margin-bottom:auto}
.w-svc h3{font-size:1.2rem;font-weight:400;line-height:1.15;margin:26px 0 8px}.w-svc p{font-size:.7rem;opacity:.7;margin:0;line-height:1.5}
.w-svc.on,.w-svc:hover,.w-svc:focus-visible{background:#27235f;color:#fff}
.w-svcs:hover .w-svc.on:not(:hover){background:#fff;color:#27235f}
/* end */
.w-end{display:grid;grid-template-columns:1.2fr .8fr;gap:7px}
.w-cta{background:#27235f;color:#c9d0ea;display:flex;flex-direction:column;justify-content:center}.w-cta a:not(.w-btn){color:#fff}.w-contact{margin:16px 0 0;font-size:.85rem}
.w-btn-outline.light{color:#fff}.w-cta .w-btn-light{color:#27235f}
.foot{margin-top:7px}
@media (max-width:1000px){.w-svcs{grid-template-columns:repeat(3,1fr)}.w-card,.w-track.four .w-card{flex-basis:calc((100% - 14px)/2)}}
@media (max-width:820px){
  .w-hero-box{grid-template-columns:1fr;min-height:0}.w-hero-img{min-height:240px;margin:0 12px 12px}.w-hero-img .photo{border-radius:20px}
  .w-hero-img::before{display:none}.w-hero-img::after{border-radius:22px 0 0 0;width:72px;height:44px}
  .w-strip{grid-template-columns:1fr;border-radius:26px}
  .w-guide,.w-voices-in,.w-nums,.w-end{grid-template-columns:1fr}
  .w-svcs{grid-template-columns:1fr 1fr}.w-svc{min-height:190px}
  .w-card,.w-track.four .w-card{flex-basis:76%}
  .w-bar:not(.plain){border-radius:24px}.w-stack{min-height:230px}
  .w-nums .photo.tall{aspect-ratio:4/3}
}
@media (max-width:520px){.w-svcs{grid-template-columns:1fr}.w-btns .w-btn{flex:1 1 100%}}

/* ===== TOP BAR + HEADER (modelled on the live hasnet.co.tz header) ===== */
.topbar{background:#27235f;color:#fff;padding:12px 0 44px;font-size:.92rem}
.tb{display:flex;justify-content:space-between;align-items:center;gap:16px}
.tb-tag b{font-weight:700}
.tb-social{list-style:none;margin:0;padding:0;display:flex;align-items:center}
.tb-social li+li{margin-left:14px;padding-left:14px;border-left:1px solid rgba(255,255,255,.28)}
.tb-social a{color:#fff;display:inline-flex;align-items:center;text-decoration:none;min-height:24px}.tb-social a:hover{color:var(--orange)}
.tb-social .ic{width:17px;height:17px}.tb-sign a{font-weight:500}
.head{position:sticky;top:8px;z-index:60;margin-top:-34px;padding:0}
.bar{background:#fff;border:0;border-radius:12px;padding:8px 14px 8px 18px;gap:18px;box-shadow:0 2px 8px rgba(39,35,95,.09)}
.nav{margin:0 0 0 auto;gap:2px}
.nav>a,.dd>a{text-transform:none;letter-spacing:0;font-size:.95rem;font-weight:500;color:#27235f;padding:10px 14px;display:inline-flex;align-items:center;gap:5px}
.nav>a:hover,.dd>a:hover{background:#ebeaf6}
.dd-list{border-radius:12px;min-width:250px;top:calc(100% + 6px)}
.dd-h{display:block;padding:10px 12px 4px;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:700}
.bar-end{display:flex;align-items:center;gap:14px}
.btn-cta{background:#27235f;color:#fff;border-radius:8px;padding:12px 24px;font-weight:600;font-size:.95rem}.btn-cta:hover{background:var(--orange);color:#27235f}
.bag{display:grid;place-items:center;width:40px;height:40px;color:#27235f;border-left:1px solid var(--line);padding-left:14px;box-sizing:content-box}.bag .ic{width:22px;height:22px}
.bag:hover{color:var(--orange)}
@media (max-width:900px){
  .tb-tag{display:none}.tb{justify-content:center}.topbar{padding:10px 0 40px}
  .bar{border-radius:12px;flex-wrap:wrap;padding:8px 12px}.bar-end{display:none}
  .nav{margin:0;width:100%}.nav.open+.bar-end{display:flex;width:100%;padding:4px 0 8px}.nav.open+.bar-end .btn-cta{flex:1;justify-content:center}
  .dd>a{width:100%}.dd-list{padding-left:14px}
}
/* ===== HERO CAROUSEL ===== */
.w-hero-img .slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .5s}
.w-hero-img .slide.on{opacity:1;visibility:visible}
.w-hero-img .slide .photo{border-radius:0 0 0 32px}
.slide-cap{position:absolute;left:24px;bottom:78px;max-width:min(78%,340px);z-index:3;background:rgba(255,255,255,.94);color:#27235f;border-radius:16px;padding:14px 16px;display:grid;gap:6px;justify-items:start}
.slide-cap small{font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:#5b6074;font-weight:700}
.slide-cap strong{font-size:.88rem;font-weight:600;line-height:1.35}
.car-ctl{position:absolute;left:24px;bottom:22px;z-index:4;display:flex;align-items:center;gap:8px}
.car-dots{display:flex;gap:5px;margin:0 6px}.car-dots i{width:7px;height:7px;border-radius:99px;background:rgba(13,18,36,.3);transition:width .2s,background .2s}.car-dots i.on{width:22px;background:#27235f}
.car-ctl .w-round:first-child svg{transform:scaleX(-1)}
.w-hero-img{min-height:380px}
/* ===== CATEGORIES ===== */
.w-sub{text-align:center;color:#5b6074;margin:-12px 0 22px;font-size:.85rem}
.w-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.w-cat{display:flex;flex-direction:column;gap:6px;background:#fff;border-radius:18px;padding:20px;text-decoration:none;color:#27235f;transition:box-shadow .2s,transform .2s}
.w-cat:hover{transform:translateY(-2px);box-shadow:0 2px 8px rgba(39,35,95,.09);color:#27235f}
.w-cat .w-circle{margin-bottom:8px}.w-cat h3{font-size:1.05rem;margin:0}.w-cat p{margin:0;font-size:.8rem;color:#5b6074;line-height:1.5}
.w-cat ul{list-style:none;margin:6px 0 10px;padding:0;display:grid;gap:5px;font-size:.78rem;color:#3d4260}
.w-cat li{display:flex;gap:7px;align-items:center}.w-cat li .ic{color:var(--orange)}
.w-link{margin-top:auto;display:inline-flex;align-items:center;gap:6px;font-size:.78rem;font-weight:700;color:#27235f}
.w-cat:hover .w-link{color:var(--cta-h)}
@media (max-width:1000px){.w-cats{grid-template-columns:repeat(2,1fr)}}
@media (max-width:620px){.w-cats{grid-template-columns:1fr}.slide-cap{bottom:70px;left:14px}.car-ctl{left:14px}}
@media (max-width:820px){.w-hero-img .slide .photo{border-radius:20px}.w-hero-img{min-height:300px}}

/* ===== v3: full-bleed hero, bands, compact cards, square header, WhatsApp float ===== */
.bar.wrap{width:calc(100% - 24px);max-width:var(--w);border-radius:6px;transition:width .35s ease,max-width .35s ease,border-radius .35s ease,padding .35s ease,box-shadow .35s ease}
.head{top:0}
.head.stuck .bar.wrap{width:100%;max-width:100%;border-radius:0;padding-inline:max(14px,calc((100% - var(--w))/2 + 12px));box-shadow:0 2px 8px rgba(39,35,95,.09)}
.dd-list{border-radius:6px}.btn-cta{border-radius:6px}.nav>a,.dd>a{border-radius:4px}
/* hero: edge to edge */
.w-hero{padding:0;background:#27235f;color:#fff;overflow:hidden;
  background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:48px 48px}
.w-hero-grid{display:grid;grid-template-columns:1fr 48%;gap:0;min-height:520px;width:min(100% - 24px,var(--w))}
.w-hero-copy{display:grid;align-self:center;padding:56px 36px 56px 12px;position:relative;z-index:2}
.w-hero-copy .cp{grid-area:1/1;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .45s,transform .45s,visibility .45s;align-self:center}
.w-hero-copy .cp.on{opacity:1;visibility:visible;transform:none}
.w-h1{font-weight:500;font-size:clamp(2rem,4.2vw,3.3rem);line-height:1.08;letter-spacing:-.025em;margin:0 0 16px}
.w-kicker{font-size:.78rem;letter-spacing:.04em;margin:0 0 12px;color:#c9d0ea}
.w-lead{max-width:30em}
.w-hero-img{position:relative;margin-right:calc((100% - 100vw)/2);min-height:520px}
.w-hero-img .slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .5s}
.w-hero-img .slide.on{opacity:1;visibility:visible}
.w-hero-img .slide .photo,.w-hero-img .photo{border-radius:0;position:absolute;inset:0;background:#d6d6d2}
.w-hero-img::before,.w-hero-img::after{display:none}
.car-ctl{left:auto;right:calc(((100vw - 100%)/2)*0 + 28px);bottom:24px;position:absolute;z-index:4;display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.92);padding:8px 12px;border-radius:999px}
/* bands */
.w-band{padding:clamp(28px,4vw,56px) 0;margin:7px 0}
.w-band.light{background:#f3f3f1}
.w-band.dark{background:#27235f;color:#fff;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:48px 48px}
.w-band .w-h2{margin-bottom:24px}
.w-band .w-nums,.w-band .w-svcs{background:transparent}
/* why choose us */
.w-why{display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(24px,5vw,72px);align-items:center;position:relative}
.w-why .w-quote{color:rgba(255,255,255,.08);left:-6px;top:-40px}
.w-why .w-big{color:#fff;position:relative}.w-why-t p{color:#c9d0ea;max-width:26em;margin:16px 0 22px}
.w-whylist{list-style:none;margin:0;padding:0 0 0 24px;border-left:3px solid #fff;display:grid;gap:18px;counter-reset:w}
.w-whylist li{display:grid;gap:3px}.w-whylist strong{font-size:1rem;color:#fff}.w-whylist span{font-size:.85rem;color:#c9d0ea;line-height:1.55}
/* compact offer cards */
.w-cats{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}
.w-cat{padding:16px;gap:4px;border-radius:12px}
.w-cat .w-circle{width:38px;height:38px;margin-bottom:6px}.w-cat h3{font-size:.95rem}.w-cat p{font-size:.78rem;line-height:1.45}
/* WhatsApp float */
.wa-float{position:fixed;right:18px;bottom:20px;z-index:70;width:52px;height:52px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;box-shadow:0 2px 8px rgba(39,35,95,.09);transition:transform .15s}
.wa-float:hover{transform:scale(1.08);color:#fff}.wa-float .ic{width:28px;height:28px}
@media (max-width:900px){
  .head.stuck .bar.wrap{padding-inline:12px}
  .wa-float{bottom:84px;right:14px;width:48px;height:48px}
}
@media (max-width:820px){
  .w-hero-grid{grid-template-columns:1fr;min-height:0}.w-hero-copy{padding:36px 12px 28px}
  .w-hero-copy .cp{align-self:start}.w-hero-copy{min-height:340px;align-items:start}
  .w-hero-img{margin-inline:calc((100% - 100vw)/2);min-height:280px}.car-ctl{right:14px;bottom:14px}
  .w-why{grid-template-columns:1fr}
}
.w-band>.wrap{padding-inline:clamp(12px,2.4vw,36px)}
.w-hero-copy{padding-left:clamp(14px,2.4vw,36px)}
@media (max-width:820px){.car-ctl{left:14px;right:auto}}
@media (max-width:620px){.w-cats{grid-template-columns:1fr 1fr;gap:8px}.w-cat{padding:12px}.w-cat h3{font-size:.88rem}.w-cat p{font-size:.72rem}.w-cat .w-circle{width:34px;height:34px}}

/* ===== v4 ===== */
/* header height is fixed so the hero can tuck up under it: no white gap below the blue top bar */
.head{height:60px;margin-bottom:-26px}
.bar.wrap{min-height:60px}
/* hero corner notch restored */
.w-hero-img::after{display:block;content:"";position:absolute;right:0;bottom:0;width:96px;height:56px;background:#fff;border-radius:30px 0 0 0;z-index:3}
.w-hero-img::before{display:block;content:"";position:absolute;right:96px;bottom:0;width:22px;height:22px;background:radial-gradient(circle at 0 0,transparent 21px,#fff 22px);z-index:3}
.car-ctl{right:auto;left:28px}
.w-hero{padding-top:26px}
/* search bar */
.w-search-wrap{position:relative;z-index:6;margin:-40px 0 6px}
.w-search{max-width:1040px;margin:0 auto;background:#fff;border-radius:14px;padding:10px 10px 8px;box-shadow:0 2px 8px rgba(39,35,95,.09);border:1px solid #ecece8}
.sbar{display:flex;align-items:center;gap:8px;margin:0}
.sbar-ic{flex:none;display:grid;place-items:center;width:40px;color:#5b6074}
.sbar input[type=search]{flex:1;min-width:0;border:0;border-radius:8px;background:#f3f3f1;padding:13px 14px;font-size:.95rem}
.sbar input[type=search]:focus{outline:3px solid rgba(244,114,39,.4)}
.sbar select{flex:none;width:auto;max-width:210px;border:0;border-radius:8px;background:#f3f3f1;padding:13px 12px;font-size:.88rem}
.sbar-go{flex:none;border:0;background:#27235f;color:#fff;border-radius:8px;padding:0 26px;min-height:46px;font:600 .92rem Mulish,sans-serif;cursor:pointer}
.sbar-go:hover{background:var(--orange);color:#27235f}
.w-search-hint{margin:8px 6px 0;font-size:.78rem;color:#5b6074}.w-search-hint a{margin-left:8px;color:#27235f;font-weight:600}
.page-head .sbar{margin-top:18px;max-width:760px}
.page-head .sbar-ic{color:#c9d0ea}
.results{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:10px}
.results a{display:grid;gap:2px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px;text-decoration:none;color:var(--ink)}
.results a:hover{border-color:#27235f}.results span{color:#5b6074;font-size:.9rem}.results em{font-style:normal;font-size:.75rem;color:#5b6074}
/* tabs section: no background, centered tabs */
.w-sec.plain .w-panel{background:transparent;padding:0}
.w-sec.plain .w-bar{display:grid;grid-template-columns:1fr auto 1fr;border:1px solid #e6e6e3;margin-bottom:16px}
.w-sec.plain .w-tabs{grid-column:2;justify-content:center}
.w-sec.plain .w-nav{grid-column:3;justify-self:end}
.w-sec.plain .w-card{border:1px solid #e6e6e3;box-shadow:0 2px 8px rgba(39,35,95,.09)}
.w-sec.plain .w-seeall{margin-top:10px}
/* footer: full width, 5 columns */
.foot{width:100%;margin:7px 0 0;border-radius:0;padding:52px 0 22px}
.foot>.wrap{width:min(100% - 24px,var(--w));padding-inline:clamp(12px,2.4vw,36px)}
.fgrid5{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1.3fr;gap:32px}
/* floating buttons */
.wa-float{width:42px;height:42px;right:16px;bottom:18px}.wa-float .ic{width:23px;height:23px}
.to-top{position:fixed;right:16px;bottom:68px;z-index:70;width:42px;height:42px;border-radius:50%;border:0;background:#fff;color:#27235f;display:grid;place-items:center;cursor:pointer;box-shadow:0 2px 8px rgba(39,35,95,.09);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .25s,transform .25s,visibility .25s}
.to-top.show{opacity:1;visibility:visible;transform:none}
.to-top .ic{width:18px;height:18px;position:relative}
.to-top .tt-ring{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.to-top .tt-ring circle{fill:none;stroke-width:3}
.to-top .trk{stroke:#e3e3e0}.to-top .fill{stroke:var(--orange);stroke-linecap:round;stroke-dasharray:119.38;stroke-dashoffset:119.38}
.to-top:hover{background:#27235f;color:#fff}
@media (max-width:1100px){.fgrid5{grid-template-columns:repeat(3,1fr)}.fgrid5>div:first-child{grid-column:1/-1}}
@media (max-width:900px){
  .wa-float{bottom:84px;right:12px;width:40px;height:40px}.to-top{bottom:132px;right:12px;width:40px;height:40px}
  .sbar{flex-wrap:wrap}.sbar-ic{display:none}.sbar input[type=search]{flex:1 1 100%}.sbar select{flex:1}.sbar-go{flex:1}
  .w-search-wrap{margin-top:-28px}
  .w-sec.plain .w-bar{display:flex}
  .w-hero-img::after{width:70px;height:42px}.w-hero-img::before{display:none}
}
@media (max-width:620px){.fgrid5{grid-template-columns:1fr 1fr}.w-sec.plain .w-tabs{justify-content:flex-start}}
@media (max-width:420px){.fgrid5{grid-template-columns:1fr}}

/* ===== v5 ===== */
/* hero: image runs up under the header; no corner notch; no carousel panel */
.w-hero{padding-top:0}
.w-hero-copy{padding-top:92px}
.w-hero-img::before,.w-hero-img::after{display:none!important}
.car-ctl{display:none}
/* slim search bar straddling hero / band edge */
.w-search-wrap{height:0;margin:0;position:relative;z-index:8;overflow:visible}
.w-search-wrap .w-search{transform:translateY(-50%);max-width:880px;padding:5px;border-radius:12px}
.w-search .sbar{gap:4px}
.w-search .sbar input[type=search]{padding:10px 12px;background:transparent;font-size:.9rem}
.w-search .sbar select{padding:10px 10px;font-size:.82rem;background:#f3f3f1}
.w-search .sbar-go{min-height:40px;padding:0 22px;font-size:.85rem}
.w-search .sbar-ic{width:34px}
/* What We Offer band touches the hero */
.w-hero+.w-search-wrap+.w-band{margin-top:0;padding-top:clamp(44px,5vw,68px)}
.w-hero{margin-bottom:0}
/* tabs: compact bar hugging the buttons, 4 cards per row */
.w-sec.plain .w-bar{display:flex;width:fit-content;max-width:100%;margin:0 auto 16px;gap:10px;padding:5px 6px 5px 5px}
.w-sec.plain .w-tabs{grid-column:auto}
.w-sec.plain .w-nav{grid-column:auto;justify-self:auto}
.w-track.four .w-card{flex-basis:calc((100% - 42px)/4)}
/* why list: no left line */
.w-whylist{border-left:0;padding-left:0}
/* clients logo wall */
.tr{position:relative;background:linear-gradient(180deg,#fff,#f3f3f1);border-radius:28px;box-shadow:0 2px 8px rgba(39,35,95,.09);padding:30px clamp(16px,3vw,44px) 54px;overflow:hidden}
.tr-grid{display:flex;gap:12px;-webkit-mask-image:linear-gradient(#000 55%,transparent 100%);mask-image:linear-gradient(#000 55%,transparent 100%);height:340px;overflow:hidden}
.tr-col{flex:1;min-width:0;display:flex;flex-direction:column;gap:12px}
.tr-ghost{display:block;border-radius:12px;background:linear-gradient(#f3f3f1,#fafafa);flex:none}
.c0{margin-top:60px}.c1{margin-top:0}.c2{margin-top:42px}.c3{margin-top:22px}.c4{margin-top:64px}.c5{margin-top:8px}.c6{margin-top:50px}.c7{margin-top:0}.c8{margin-top:40px}
.c0 .tr-ghost{height:70px}.c1 .tr-ghost{height:26px}.c2 .tr-ghost{height:44px}.c3 .tr-ghost{height:20px}.c4 .tr-ghost{height:60px}.c5 .tr-ghost{height:34px}.c6 .tr-ghost{height:52px}.c7 .tr-ghost{height:16px}.c8 .tr-ghost{height:48px}
.tr-tile{margin:0;aspect-ratio:4/3;background:#fff;border:1px solid #ecece8;border-radius:14px;display:grid;place-items:center;padding:12%;transition:transform .25s,box-shadow .25s;overflow:hidden}
.tr-tile img{width:100%;height:100%;object-fit:contain}
.tr-tile:hover{transform:translateY(-6px) scale(1.05);box-shadow:0 2px 8px rgba(39,35,95,.09);position:relative;z-index:3}
.tr-copy{position:relative;z-index:2;text-align:center;margin-top:-120px;display:grid;justify-items:center;gap:10px}
.tr-pill{background:#f3f3f1;border-radius:999px;padding:6px 16px;font-size:.8rem;font-weight:500}
.tr-h{margin:6px 0 0;font-weight:500;font-size:clamp(1.9rem,4.2vw,3.1rem);letter-spacing:-.03em;line-height:1.08}
.tr-h em{font-style:normal;color:#8c8c8a}
.tr-copy p{max-width:34em;margin:6px 0 10px;font-size:1rem;color:#27235f}
@media (max-width:1000px){.tr-col:nth-child(n+8){display:none}.w-track.four .w-card{flex-basis:calc((100% - 14px)/2)}}
@media (max-width:700px){.tr-col:nth-child(n+5){display:none}.tr-grid{height:300px}.tr-copy{margin-top:-100px}.w-track.four .w-card{flex-basis:76%}}
@media (max-width:820px){.w-hero-copy{padding-top:36px}.w-search-wrap .w-search{max-width:calc(100% - 4px)}}
.tr-grid{height:300px;-webkit-mask-image:linear-gradient(#000 40%,transparent 96%);mask-image:linear-gradient(#000 40%,transparent 96%)}
.tr-copy{margin-top:-64px}
@media (max-width:700px){.tr-grid{height:270px}.tr-copy{margin-top:-56px}}

/* footer: 4 columns, address + social on the left */
.fgrid4{grid-template-columns:1.6fr 1fr 1fr 1.1fr;gap:32px}
.foot .addr{list-style:none;margin:10px 0 12px;padding:0;display:grid;gap:8px;color:#c9d0ea;font-size:.88rem}
.foot .addr li{display:flex;gap:8px;align-items:flex-start}.foot .addr .ic{margin-top:4px;flex:none;color:var(--orange)}
.foot .social{display:flex;flex-wrap:wrap;gap:8px 18px;margin:0;font-size:.88rem}
.foot li small{display:block;color:#9aa3c7;font-size:.72rem}
@media (max-width:900px){.fgrid4{grid-template-columns:1fr 1fr}.sticky{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.fgrid4{grid-template-columns:1fr}}

/* ===== v7: video hero, why icons, full-width clients ===== */
.hv{position:relative;min-height:calc(100svh - 80px);display:flex;flex-direction:column;justify-content:center;color:#fff;overflow:hidden;background:#27235f;margin-bottom:0}
.hv-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.hv-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(20,18,60,.55),rgba(20,18,60,.35) 45%,rgba(20,18,60,.7))}
.hv-in{position:relative;z-index:2;padding:110px clamp(14px,2.4vw,36px) 130px;text-align:center;display:grid;justify-items:center;gap:14px}
.hv-kicker{margin:0;font-size:.82rem;letter-spacing:.06em;color:#d5dbf2}
.hv-h{margin:0;font-weight:500;font-size:clamp(2.4rem,6vw,4.8rem);line-height:1.05;letter-spacing:-.03em}
.hv-lead{margin:0;max-width:36em;font-size:clamp(.95rem,1.4vw,1.15rem);color:#e3e7f5}
.hv-btns{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:10px}
.hv-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 28px;border-radius:999px;font:600 .92rem/1 Mulish,sans-serif;text-decoration:none;border:1.5px solid transparent;transition:background .15s,color .15s}
.hv-btn-solid{background:#fff;color:#27235f}.hv-btn-solid:hover{background:var(--orange)}
.hv-btn-line{border-color:#fff;color:#fff}.hv-btn-line:hover{background:#fff;color:#27235f}
.hv-search{position:absolute;left:0;right:0;bottom:28px;z-index:3;margin-inline:auto;pointer-events:none}
.hv-search .w-search{pointer-events:auto;transform:none;margin-inline:auto;max-width:860px;box-shadow:0 2px 8px rgba(39,35,95,.09);border:0}
.hv-pause{position:absolute;left:16px;bottom:16px;z-index:4;width:36px;height:36px;border-radius:50%;border:0;background:rgba(255,255,255,.85);color:#27235f;display:grid;place-items:center;cursor:pointer}
.hv-pause .ic{width:14px;height:14px}
.hv+.w-band{margin-top:0}
/* why: icons */
.w-whylist li{display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:start}
.w-whyic{width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.12);color:var(--orange);display:grid;place-items:center}
.w-whytx{display:grid;gap:3px}.w-whytx strong{font-size:1rem;color:#fff}.w-whytx span{font-size:.85rem;color:#c9d0ea;line-height:1.55}
/* clients: full width */
.tr-band{background:linear-gradient(180deg,#fff,#f3f3f1);padding:34px 0 56px;margin:7px 0;overflow:hidden}
.tr-band .tr-grid{display:flex;gap:10px;padding:0 10px;height:300px;-webkit-mask-image:linear-gradient(#000 45%,transparent 98%);mask-image:linear-gradient(#000 45%,transparent 98%)}
.tr-band .tr-col{gap:10px}
.tr-band .tr-tile{padding:10%;border-radius:10px}
.tr-band .tr-copy{margin-top:-70px;padding:0 14px}
@media (max-width:1200px){.tr-band .tr-col:nth-child(n+11){display:none}}
@media (max-width:900px){.tr-band .tr-col:nth-child(n+8){display:none}}
@media (max-width:600px){.tr-band .tr-col:nth-child(n+6){display:none}.tr-band .tr-grid{height:250px}.tr-band .tr-copy{margin-top:-56px}}
@media (max-width:900px){.hv{min-height:calc(100svh - 70px)}.hv-in{padding:80px 14px 150px}.hv-search{bottom:20px;padding-inline:0}.hv-search .w-search{max-width:calc(100% - 4px)}}


/* ===== v8 ===== */
/* hero copy left-aligned */
.hv-in{text-align:left;justify-items:start;align-items:start;width:min(100% - 24px,var(--w));margin-inline:auto}
.hv-btns{justify-content:flex-start}
.hv-in>*{max-width:40em}
@media (max-width:900px){.hv-in{padding:70px 14px 150px}}
/* search: no orange outline; suggestions */
.w-search .sbar input[type=search]:focus,.sbar input[type=search]:focus{outline:none;box-shadow:none;border:0}
.w-search:focus-within{box-shadow:0 2px 8px rgba(39,35,95,.09)}
.sbar{position:relative}
.sbar-sugg{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:30;margin:0;padding:6px;list-style:none;background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(39,35,95,.09);max-height:340px;overflow:auto;text-align:left}
.sbar-sugg[hidden]{display:none}
.sbar-sugg a{display:grid;gap:1px;padding:10px 12px;border-radius:8px;text-decoration:none;color:#27235f}
.sbar-sugg strong{font-size:.9rem}.sbar-sugg span{font-size:.78rem;color:#5b6074}
.sbar-sugg li.on a,.sbar-sugg a:hover{background:#ebeaf6}
.sbar-sugg .none{padding:12px;font-size:.82rem;color:#5b6074}
.hv .sbar-sugg{top:auto;bottom:calc(100% + 8px)}
.hv{overflow:visible}.hv-video-wrap{overflow:hidden}
/* header: active tab */
.head .nav>a,.head .dd>a{position:relative}
.head .nav>a.on,.head .dd>a.on{color:#27235f;font-weight:600}
.head .nav>a.on::after,.head .dd>a.on::after{content:"";position:absolute;left:14px;right:14px;bottom:3px;height:3px;border-radius:3px;background:var(--orange)}
.head .dd-list a.on{background:#ebeaf6;color:#27235f;font-weight:600}
/* tabs: cards centred when they do not fill the row */
.w-track>.w-card:first-child{margin-left:auto}.w-track>.w-card:last-child{margin-right:auto}
/* why choose us: clean gradient with signal rings instead of the grid pattern */
.w-band.dark{background-color:#27235f;background-image:radial-gradient(circle at 88% 12%,rgba(244,114,39,.20),transparent 42%),repeating-radial-gradient(circle at 96% 112%,transparent 0 70px,rgba(255,255,255,.05) 71px 72px),linear-gradient(135deg,#27235f 0%,#2f2a72 55%,#382f8c 100%);background-size:auto}
.page-head>.wrap{background-image:radial-gradient(circle at 92% 0%,rgba(244,114,39,.18),transparent 45%),linear-gradient(135deg,#27235f,#352f84);background-size:auto}
/* clients: mockup arrangement - staggered columns, faint top tiles, hairlines, copy clear of the images */
.tr-band{background:linear-gradient(180deg,#fff 0%,#f3f3f1 100%);padding:30px 0 64px;margin:7px 0;overflow:hidden}
.tr-band .tr-grid{display:flex;gap:12px;padding:0 12px;height:auto;overflow:hidden;-webkit-mask-image:none;mask-image:none;align-items:flex-start}
.tr-band .tr-col{flex:1;min-width:0;display:flex;flex-direction:column;gap:12px;align-items:stretch}
.tr-band .tr-tile{padding:12%;border-radius:12px;background:#fff;border:1px solid #ecece8}
.tr-band .tr-tile.faint{opacity:.35;filter:grayscale(1)}
.tr-band .tr-col::after{content:"";display:block;height:84px;width:0;border-left:1px dashed #d9d9d4;margin:4px auto 0}
.tr-band .tr-col:nth-child(5n+3)::after,.tr-band .tr-col:nth-child(7n)::after{border-color:#f47227}
.tr-band .c0{margin-top:-22px}.tr-band .c1{margin-top:-62px}.tr-band .c2{margin-top:-10px}.tr-band .c3{margin-top:-46px}.tr-band .c4{margin-top:-78px}.tr-band .c5{margin-top:-30px}
.tr-band .c6{margin-top:-8px}.tr-band .c7{margin-top:-58px}.tr-band .c8{margin-top:-36px}.tr-band .c9{margin-top:-70px}.tr-band .c10{margin-top:-18px}.tr-band .c11{margin-top:-50px}
.tr-band .tr-copy{margin:34px auto 0;padding:0 14px;position:relative;z-index:2}
@media (max-width:1200px){.tr-band .tr-col:nth-child(n+10){display:none}}
@media (max-width:900px){.tr-band .tr-col:nth-child(n+8){display:none}}
@media (max-width:600px){.tr-band .tr-col:nth-child(n+6){display:none}.tr-band .tr-grid{gap:8px}.tr-band .tr-col{gap:8px}.tr-band .tr-col::after{height:50px}.tr-band .tr-copy{margin-top:26px}}

/* ===== v9: stats row, clients (no clipped logos), footer 5 cols, glassmorphism ===== */
.w-nums2{display:grid;gap:26px}
.w-stats{margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.w-stats>div{text-align:center;padding:20px 12px}
.w-stats dt{font-size:clamp(2.2rem,5vw,3.8rem);font-weight:400;letter-spacing:-.03em;line-height:1}
.w-stats dd{margin:8px auto 0;font-size:.82rem;color:#5b6074;max-width:20ch}
.w-nums2-body{display:grid;grid-template-columns:1.35fr 1fr;gap:clamp(20px,3vw,44px);align-items:center}
.w-nums2 .photo.wide{aspect-ratio:16/10;border-radius:20px}
.w-nums2 .w-nums-t p{font-size:.9rem;color:#3d4260}
/* clients: stagger downward only, nothing clipped at the top */
.tr-band{padding-top:26px}
.tr-band .tr-grid{padding-top:6px}
.tr-band .c0{margin-top:26px}.tr-band .c1{margin-top:0}.tr-band .c2{margin-top:38px}.tr-band .c3{margin-top:14px}.tr-band .c4{margin-top:42px}.tr-band .c5{margin-top:6px}
.tr-band .c6{margin-top:30px}.tr-band .c7{margin-top:0}.tr-band .c8{margin-top:46px}.tr-band .c9{margin-top:18px}.tr-band .c10{margin-top:34px}.tr-band .c11{margin-top:8px}
.tr-line{max-width:none!important;white-space:nowrap}
@media (max-width:760px){.tr-line{white-space:normal}.w-nums2-body{grid-template-columns:1fr}.w-stats{gap:6px}.w-stats dd{font-size:.7rem}}
/* ===== footer: measured from the live hasnet.co.tz footer (Bootstrap grid, Mulish + Urbanist) ===== */
@font-face{font-family:Mulish;src:url(fonts/mulish.woff2) format("woff2");font-weight:200 1000;font-display:swap}
@font-face{font-family:Urbanist;src:url(fonts/urbanist.woff2) format("woff2");font-weight:100 900;font-display:swap}
.foot{width:100%;margin:7px 0 0;padding:100px 0 0;background:#27235f;color:#fff;font-family:Mulish,sans-serif;font-size:16px;line-height:24px;border-radius:0}
.foot .ft-container{width:100%;max-width:1320px;margin-inline:auto;padding-inline:12px}
@media (max-width:1399.98px){.foot .ft-container{max-width:1140px}}
@media (max-width:1199.98px){.foot .ft-container{max-width:960px}}
@media (max-width:991.98px){.foot .ft-container{max-width:720px}}
@media (max-width:767.98px){.foot .ft-container{max-width:540px}}
@media (max-width:575.98px){.foot .ft-container{max-width:none}}
.foot .ft-top{padding-bottom:60px}
.foot .ft-row{display:flex;flex-wrap:wrap;margin-inline:-12px;row-gap:0}
.foot .ft-c{box-sizing:border-box;padding-inline:12px;width:100%}
@media (min-width:992px){.foot .ft-c-brand{width:25%}.foot .ft-c-2{width:16.66667%}.foot .ft-c-touch{width:25%}}
@media (min-width:768px) and (max-width:991.98px){.foot .ft-c-brand{width:50%}.foot .ft-c-2{width:25%}.foot .ft-c-touch{width:66.66667%}}
@media (min-width:576px) and (max-width:767.98px){.foot .ft-c-2{width:50%}}
.foot .ft-logo{display:inline-block}
.foot .logo-ph.on-dark{width:160px;height:45px;margin:0;padding:0;justify-content:center;border-radius:10px;background:rgba(255,255,255,.14);color:#c9d0ea}
.foot .ft-about{margin:30px 0 16px;color:#fff;font-size:16px;line-height:24px}
.foot .ft-social{margin-top:48px}
.foot .ft-subtitle{position:relative;display:inline-block;margin:0 0 8px;font:700 20px/24px Urbanist,sans-serif;color:#fff;letter-spacing:0;text-transform:none}
.foot .ft-subtitle::after{content:"";position:absolute;left:calc(100% + 10px);top:17px;width:60px;height:2px;background:#f47227}
.foot .ft-social-nav{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:9px}
.foot .ft-social-nav a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#f47227;color:#fff;overflow:hidden;transition:background .2s,color .2s}
.foot .ft-social-nav a:hover{background:#fff;color:#f47227}
.foot .ft-social-nav .ic{width:15px;height:15px}
.foot .ft-widget{margin-top:8px;margin-bottom:60px}
.foot .ft-title{position:relative;margin:0 0 48px;font:700 20px/24px Urbanist,sans-serif;color:#fff;letter-spacing:0;text-transform:none}
.foot .ft-title::before{content:"";position:absolute;left:0;top:36px;width:50px;height:3px;background:#f47227}
.foot .ft-nav{list-style:none;margin:0;padding:0}
.foot .ft-nav li{margin:0 0 12px;line-height:24px}
.foot .ft-nav a{font-size:15px;line-height:22.5px;color:#fff;text-decoration:none;transition:color .2s}
.foot .ft-nav a:hover{color:#f47227}
.foot .ft-form{position:relative}
.foot .ft-form input[type=email]{display:inline-block;width:100%;height:64px;box-sizing:border-box;padding:20px 100px 20px 20px;background:#293571;border:0;border-radius:5px;color:#fff;font:400 16px/24px Mulish,sans-serif}
.foot .ft-form input[type=email]::placeholder{color:#9aa3d1}
.foot .ft-form input[type=email]:focus{outline:none;box-shadow:none}
.foot .ft-form button{position:absolute;right:9px;top:9px;height:46.5px;padding:12px 24px;border:0;border-radius:5px;background:#f47227;color:#fff;font:600 15px/22.5px Urbanist,sans-serif;cursor:pointer;transition:background .2s}
.foot .ft-form button:hover{background:#ff8a47}
.foot .ft-pm{margin-top:40px}
.foot .ft-pay{list-style:none;display:flex;margin:16px 0 0;padding:0}
.foot .ft-pay li{display:inline-flex;align-items:center;justify-content:center;width:80px;height:50px;margin-right:8px;background:#25326f;border-radius:4px}
.foot .ft-pay img{max-width:100%;height:auto}
.foot .ft-copy{padding:15px 0}
.foot .ft-copy-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 24px}
.foot .ft-copy p{margin:0;font-size:14px;line-height:21px;color:#fff}
.foot .ft-copy-links a{margin-left:20px;font-size:14px;line-height:21px;color:#fff;text-decoration:none}
.foot .ft-copy-links a:first-child{margin-left:0}
.foot .ft-copy-links a:hover{color:#f47227}
@media (max-width:991.98px){.foot{padding-top:70px}}
@media (max-width:575.98px){.foot .ft-copy-row{flex-direction:column;align-items:flex-start}.foot .ft-widget{margin-bottom:34px}}
.foot .ft-nav{display:block;gap:0}
.foot .ft-pay{display:flex;gap:0;grid-template-columns:none}
.foot .ft-pay li{flex:0 1 80px}
.foot .ft-social-nav{gap:9.5px}
.foot .ft-pay li:last-child img{width:100%}
.foot .ft-copy-links a+a{margin-left:25px}
.foot .ft-c-brand{padding-bottom:60px}

/* ===== v10: one blue, Mulish + Urbanist only, four service groups, three-column satisfaction block ===== */
h1,h2,h3,h4,h5,.t,.hv-h,.w-h2,.w-big,.tr-h,.w-btn,.hv-btn,.btn,.w-tab,.w-stats3 dt,.w-whytx strong,.hv-kicker{font-family:Urbanist,Mulish,sans-serif}
.w-cats{grid-template-columns:repeat(4,1fr)}
.w-cat{padding:22px;gap:6px}.w-cat h3{font-size:1.1rem}.w-cat p{font-size:.85rem}
@media (max-width:1000px){.w-cats{grid-template-columns:repeat(2,1fr)}}
@media (max-width:420px){.w-cats{grid-template-columns:1fr}}
.w-whylist li{align-items:center}.w-whytx strong{font-size:1.15rem}
.w-nums3{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:clamp(20px,3vw,48px);align-items:center}
.w-stats3{margin:0;display:grid;gap:26px}
.w-stats3 dt{font-size:clamp(2.4rem,4vw,3.4rem);font-weight:600;letter-spacing:-.03em;line-height:1;color:#27235f}
.w-stats3 dd{margin:6px 0 0;font-size:.88rem;color:#3d4260;max-width:22ch}
.w-nums3 .photo.mid{aspect-ratio:16/11;width:100%;max-width:460px;justify-self:center;border-radius:20px}
.w-nums3 .w-nums-t .w-h2{font-size:clamp(1.4rem,2.2vw,1.9rem);margin-bottom:14px}
.w-nums3 .w-nums-t p{font-size:.95rem;color:#3d4260;margin:0 0 12px}
@media (max-width:820px){.w-nums3{grid-template-columns:1fr}.w-stats3{grid-template-columns:repeat(3,1fr);gap:10px;text-align:center}.w-stats3 dd{margin-inline:auto;font-size:.75rem}}

/* ===== v11: inspire fan, numbers with +, white recent-works and FAQ ===== */
.insp-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(24px,4vw,56px);align-items:center}
.insp-fan{position:relative}
.fan{display:block;width:100%;height:auto;overflow:visible}
.fan-core{fill:#27235f}
.fan-t1,.fan-t2,.fan-t3{fill:#fff;font-family:Urbanist,Mulish,sans-serif;letter-spacing:.02em}
.fan-t1{font-size:34px;font-weight:800}.fan-t2{font-size:24px;font-weight:500;fill:#f47227}.fan-t3{font-size:62px;font-weight:800}
.fan-arc{fill:none;stroke:#27235f;stroke-width:4;stroke-linecap:round}
.fan-dot{fill:#fff;stroke:#27235f;stroke-width:4}.fan-dot.d1,.fan-dot.d3{stroke:#f47227}
.pt{cursor:pointer;transition:transform .35s ease}
.pt path{fill:#27235f;stroke:#27235f;stroke-width:14;stroke-linejoin:round;transition:fill .3s,stroke .3s,filter .3s}
.pt.alt path{fill:#15123d;stroke:#15123d}
.pt.hv path{filter:brightness(1.35)}
.pt.on path{fill:#f47227;stroke:#f47227;filter:none}
.pt.p1.on{transform:translate(-10px,3px)}.pt.p2.on{transform:translate(-6px,8px)}.pt.p3.on{transform:translate(0,10px)}.pt.p4.on{transform:translate(6px,8px)}.pt.p5.on{transform:translate(10px,3px)}
.fan-ic{color:#fff;overflow:visible;pointer-events:none}
.fan-lead{stroke:#9aa0b5;stroke-width:1.6}
.fan-lbl{font:600 17px Urbanist,Mulish,sans-serif;fill:#27235f;transition:fill .3s}
.fan-lbl.on{fill:#f47227}
.fan-btns{position:absolute;inset:0;pointer-events:none}
.fb{position:absolute;width:19%;height:25%;transform:translate(-50%,-50%);border:0;background:transparent;border-radius:30%;cursor:pointer;pointer-events:auto}
.fb:focus-visible{outline:3px solid #f47227;outline-offset:2px}
.fb1{left:24.3%;top:43.9%}.fb2{left:34.1%;top:66.4%}.fb3{left:50%;top:75%}.fb4{left:65.9%;top:66.4%}.fb5{left:75.7%;top:43.9%}
.insp-intro{margin:0 0 18px;font-size:.98rem;color:#3d4260;max-width:36em}
.insp-stage{position:relative}
.insp-stage.js{transition:height .4s ease}
.insp-panel{background:#fff;border:1px solid #e6e8f0;border-radius:20px;padding:22px;box-shadow:0 2px 8px rgba(39,35,95,.09);margin-bottom:14px}
.insp-stage.js .insp-panel{position:absolute;top:0;left:0;right:0;margin:0;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .35s ease,transform .35s ease,visibility .35s}
.insp-stage.js .insp-panel.on{opacity:1;visibility:visible;transform:none}
.insp-h{display:flex;align-items:center;gap:12px;margin:0 0 14px;font-size:1.35rem;color:#27235f}
.insp-ic{width:40px;height:40px;border-radius:12px;background:#27235f;color:#fff;display:grid;place-items:center}.insp-ic .ic{width:20px;height:20px}
.insp-list details{border-top:1px solid #e9ebf3}
.insp-list summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:14px;padding:13px 0;font-weight:700;font-family:Urbanist,Mulish,sans-serif;color:#27235f}
.insp-list summary::-webkit-details-marker{display:none}
.insp-list summary::after{content:"+";font-size:1.3rem;line-height:1;color:#f47227;transition:transform .25s}
.insp-list details[open] summary::after{content:"\2212"}
.insp-list p{margin:0 0 14px;font-size:.93rem;color:#3d4260;line-height:1.65}
.org{display:grid;justify-items:center;margin-top:14px;padding-top:14px;border-top:1px dashed #d9dcea}
.org-n{background:#27235f;color:#fff;border-radius:10px;padding:8px 14px;font-size:.78rem;font-weight:700;text-align:center}
.org-n.top{background:#f47227;color:#27235f}
.org-v{display:block;width:2px;height:14px;background:#b9bdd6}
.org-row{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.org-n.dep{background:#fff;color:#27235f;border:2px solid #27235f}
.org-team{margin:10px 0 0;font-size:.76rem;color:#5b6074;text-align:center}
@media (max-width:900px){.insp-grid{grid-template-columns:1fr}}
/* numbers: plus sign, balanced three columns, image spans the full height of the numbers/text */
.w-stats3 dt .plus{margin-right:2px;color:#f47227}
.w-nums3{grid-template-columns:1fr 1.35fr 1fr;gap:clamp(16px,2.4vw,32px);align-items:stretch}
.w-stats3{align-content:space-between;gap:20px}
.w-nums3 .photo.mid{aspect-ratio:auto;height:100%;min-height:300px;max-width:none;width:100%;justify-self:stretch;border-radius:18px}
.w-nums3 .w-nums-t{align-self:center}
@media (max-width:820px){.w-nums3 .photo.mid{height:auto;aspect-ratio:16/10;min-height:0}}
/* recent works + FAQ: white, no grey panel */
.w-sec.white .w-panel{background:transparent;border:0;box-shadow:none;padding-inline:0}
.w-sec.white .w-card{background:#fff;border:1px solid #e6e8f0;box-shadow:0 2px 8px rgba(39,35,95,.09)}
.w-sec.white .w-bar.plain{background:transparent}
.w-sec.white .w-end>.w-panel:first-child{background:#fff;border:1px solid #e6e8f0;box-shadow:0 2px 8px rgba(39,35,95,.09);padding-inline:clamp(16px,2.6vw,30px)}
.w-panel.bleed{overflow:visible}
.insp-grid{grid-template-columns:1.5fr 1fr;gap:clamp(16px,2.4vw,36px)}
.fan-lbl{font-size:23px}
.fan-t1{font-size:36px}.fan-t3{font-size:66px}
@media (max-width:900px){.insp-grid{grid-template-columns:1fr}}
.fan-t3{font-size:52px}.fan-t1{font-size:34px}
.fan-lbl{font-size:21px}
.org-row{width:100%;flex-wrap:nowrap}
.org-row .org-n{flex:0 1 auto}
@media (max-width:420px){.org-row{flex-wrap:wrap}}
.w-nums3 .w-nums-t{align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;gap:12px}
.w-nums3 .w-nums-t .w-h2,.w-nums3 .w-nums-t p{margin:0}
.w-sec.white .w-panel.w-cta{background:#27235f;border:0;padding:clamp(20px,3vw,34px)}
.w-sec.white .w-panel.bleed .w-track{margin-right:0;padding-right:0}
.w-nums3>*,.insp-grid>*,.w-end>*,.w-why>*{min-width:0}
.fan-btns{max-width:100%}

/* ===== v12: soft shadows only, one font system, fan hints, fixed-height stage, endless recent works ===== */
html,body,button,input,select,textarea{font-family:Mulish,sans-serif}
h1,h2,h3,h4,h5,h6,.t,.hv-h,.w-h2,.w-big,.tr-h,.btn,.btn-cta,.hv-btn,.w-btn,.w-wide,.w-tab,.w-meta,.chip,.sbar-go,.hc-cta,.pill,.fan-lbl,.insp-list summary,.w-stats3 dt,.foot .ft-title,.foot .ft-subtitle{font-family:Urbanist,Mulish,sans-serif}
.fan-t1,.fan-t2,.fan-t3{font-family:Urbanist,Mulish,sans-serif}
.fan-t1{font-size:32px;letter-spacing:.06em}
.fan-t3{font-size:44px;letter-spacing:.01em}
.fan-t2{font-size:15px;letter-spacing:.14em;font-weight:700;fill:#f47227}
.fan-hint{display:flex;align-items:center;justify-content:center;gap:8px;margin:6px 0 0;font-size:.85rem;color:#5b6074}
.fan-hint-dot{width:9px;height:9px;border-radius:50%;background:#f47227;animation:hintpulse 2s ease-in-out infinite}
@keyframes hintpulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.5);opacity:.45}}
.pt{--dx:0px;--dy:0px}
.pt.p1{--dx:-4px;--dy:1px}.pt.p2{--dx:-3px;--dy:3px}.pt.p3{--dx:0px;--dy:4px}.pt.p4{--dx:3px;--dy:3px}.pt.p5{--dx:4px;--dy:1px}
.pt:not(.on){animation:nudge 4s ease-in-out infinite}
.pt.p2:not(.on){animation-delay:.6s}.pt.p3:not(.on){animation-delay:1.2s}.pt.p4:not(.on){animation-delay:1.8s}.pt.p5:not(.on){animation-delay:2.4s}
@keyframes nudge{0%,100%{transform:translate(0,0)}50%{transform:translate(var(--dx),var(--dy))}}
.pt.hv{animation:none;transform:translate(calc(var(--dx)*2),calc(var(--dy)*2))}
.pt.on path{filter:drop-shadow(0 2px 3px rgba(39,35,95,.12))}
@media (prefers-reduced-motion:reduce){.pt:not(.on),.fan-hint-dot{animation:none}}
/* fixed stage: the panel area never changes size, so nothing shifts when tabs switch */
.insp-stage.js{transition:none}
.insp-stage.js .insp-panel{height:100%;overflow:auto;box-sizing:border-box;scrollbar-width:thin}
.insp-stage.measure .insp-panel{height:auto!important;opacity:0!important;visibility:hidden!important;transition:none!important}
/* CTA blue card stays blue */
.w-sec.white .w-panel.w-cta,.w-panel.w-cta{background:#27235f!important;color:#e9ecf8}
.w-cta .w-h2{color:#fff}.w-cta p{color:#e9ecf8}
/* numbers: plus after the number, four rows */
.w-stats3 dt .plus{margin-left:2px;margin-right:0;color:#f47227}
.w-stats3{gap:14px}
.w-stats3 dt{font-size:clamp(2rem,3.4vw,2.8rem)}
/* recent works: endless marquee of image cards */
.rw{overflow:hidden;padding:14px 0 18px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.rw-track{display:flex;gap:16px;width:max-content;animation:rw 70s linear infinite}
@keyframes rw{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 8px))}}
.rw-card{position:relative;flex:0 0 260px;aspect-ratio:4/5;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 2px 8px rgba(39,35,95,.10)}
.rw-card .photo{position:absolute;inset:0;border-radius:0}
.rw-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(39,35,95,.78) 0%,rgba(39,35,95,.35) 34%,rgba(39,35,95,0) 60%);pointer-events:none}
.rw-top{position:absolute;left:0;right:0;top:0;z-index:2;padding:16px 16px 0;color:#fff}
.rw-top h3{margin:0 0 4px;font-size:1.05rem;line-height:1.2;color:#fff}
.rw-top p{margin:0;font-size:.8rem;line-height:1.35;color:#e9ecf8}
.rw-loc{position:absolute;left:12px;bottom:12px;z-index:2;display:inline-flex;align-items:center;gap:5px;background:#fff;color:#27235f;border-radius:999px;padding:5px 11px;font-size:.75rem;font-weight:700}
.rw-loc .ic{color:#f47227}
@media (prefers-reduced-motion:reduce){.rw{overflow-x:auto;-webkit-mask-image:none;mask-image:none}.rw-track{animation:none}}
@media (max-width:700px){.rw-card{flex-basis:220px}}

/* ===== v13 ===== */
.w-band.white{background:#fff;border-block:0}
.tr-band{background:#f3f3f1;margin:0;padding-bottom:56px}
.tr-band+.w-band.light{margin-top:0}
.rw-sec{padding-top:clamp(64px,8vw,110px)}
.insp-panel.single{display:flex;flex-direction:column;justify-content:center}
.insp-single{padding:8px 4px 4px}
.insp-single h4{margin:0 0 12px;font-size:1.15rem;color:#27235f}
.insp-single p{margin:0;font-size:1.02rem;line-height:1.8;color:#3d4260}
.insp-list details{overflow:hidden}

/* ===== v14: logos, mega menu, glowing thin underline, stats cross, active cards, endless tab marquee ===== */
.logo img{display:block;height:44px;width:auto}
.foot .ft-logo img{display:block;width:160px;height:45px}
/* active menu underline: thin, light, glowing */
.head .nav>a.on::after,.head .dd>a.on::after,.head .dd>.dd-link.on::after{height:2px;border-radius:2px;background:#f47227;box-shadow:0 0 6px 1px rgba(244,114,39,.55);bottom:4px}
.head .dd>.dd-link.on{color:#27235f;font-weight:600}
/* mega dropdown */
.hrow{position:relative}
.head .dd{position:static;display:flex;align-items:center}
.dd-link{position:relative;display:inline-flex;align-items:center;padding:10px 4px 10px 14px;color:#27235f;text-decoration:none;font-weight:500;font-size:.95rem;border-radius:4px}
.dd-toggle{display:inline-grid;place-items:center;width:28px;height:36px;margin-left:-2px;border:0;background:transparent;color:#27235f;cursor:pointer;border-radius:4px}
.dd-toggle .ic{width:12px;height:12px;transition:transform .2s}
.dd.open .dd-toggle .ic{transform:rotate(180deg)}
.dd-toggle:focus-visible,.dd-link:focus-visible,.mega a:focus-visible{outline:2px solid #27235f;outline-offset:2px}
.mega{position:absolute;top:calc(100% + 6px);left:50%;transform:translateX(-50%);width:min(900px,calc(100vw - 24px));background:#fff;border-radius:16px;box-shadow:0 2px 8px rgba(39,35,95,.09);border:1px solid #e6e8f0;z-index:90;padding:22px 22px 0}
.mega[hidden]{display:none}
.mega-in{display:grid;grid-template-columns:.9fr 1.35fr;gap:0}
.mega-list{padding-right:20px;border-right:1px solid #e9ebf3}
.mega-h{margin:0 0 10px;font:700 .7rem/1 Urbanist,Mulish,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#5b6074}
.mega-list ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.mega-list a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 14px;border-radius:10px;color:#3d4260;text-decoration:none;font-size:1rem;transition:background .15s,color .15s}
.mega-list a .ic{color:#9aa0b8;transition:transform .15s,color .15s}
.mega-list a.on,.mega-list a:hover{background:#ebeaf6;color:#27235f}
.mega-list a.on .ic{color:#27235f;transform:translateX(2px)}
.mega-prev{padding-left:22px}
.mega-pv h3{margin:0 0 6px;font-size:1.4rem;color:#27235f}
.mega-pv p{margin:0 0 14px;color:#5b6074;font-size:.95rem;line-height:1.55;max-width:34em}
.mega-btn{display:inline-flex;align-items:center;gap:8px;background:#27235f;color:#fff;text-decoration:none;border-radius:8px;padding:11px 18px;font:600 .9rem Urbanist,Mulish,sans-serif;margin-bottom:16px;transition:background .15s}
.mega-btn:hover{background:#f47227;color:#27235f}
.mega-img{height:190px;border-radius:12px;margin:0}
.mega-foot{margin:18px 0 0;border-top:1px solid #e9ebf3;text-align:center}
.mega-foot a{display:inline-flex;align-items:center;gap:8px;padding:14px;color:#5b6074;text-decoration:none;font:700 .78rem Urbanist,Mulish,sans-serif;letter-spacing:.16em;text-transform:uppercase}
.mega-foot a:hover{color:#27235f}
@media (max-width:900px){
  .head .dd{display:block;position:relative}
  .head .dd-link{display:inline-flex}.dd-toggle{position:absolute;right:0;top:4px}
  .mega{position:static;transform:none;width:100%;box-shadow:none;border:0;padding:0 0 6px}
  .mega-in{grid-template-columns:1fr}.mega-list{border:0;padding:0}.mega-prev,.mega-foot,.mega-h{display:none}
}
/* stats: 2 x 2 with thin glowing cross */
.w-stats3{position:relative;grid-template-columns:1fr 1fr;gap:0;align-content:stretch}
.w-stats3>div{padding:20px 10px;text-align:center;display:grid;align-content:center;justify-items:center}
.w-stats3 dd{margin:6px auto 0;max-width:16ch}
.w-stats3::before,.w-stats3::after{content:"";position:absolute;pointer-events:none;background:#f47227;box-shadow:0 0 6px 1px rgba(244,114,39,.5)}
.w-stats3::before{left:50%;top:4%;bottom:4%;width:1px;background:linear-gradient(180deg,transparent,#f47227 22%,#f47227 78%,transparent)}
.w-stats3::after{top:50%;left:4%;right:4%;height:1px;background:linear-gradient(90deg,transparent,#f47227 22%,#f47227 78%,transparent)}
.w-stats3 dt{font-size:clamp(1.9rem,3vw,2.6rem)}
/* satisfaction text: natural spacing */
.w-nums3 .w-nums-t{justify-content:center;gap:14px}
.w-nums3 .w-nums-t p{line-height:1.7}
/* What We Offer: first card active until another is hovered */
.w-cat{transition:background .2s,color .2s,border-color .2s}
.w-cat.first,.w-cat:hover,.w-cat:focus-visible{background:#27235f;color:#fff}
.w-cat.first h3,.w-cat:hover h3,.w-cat:focus-visible h3{color:#fff}
.w-cat.first p,.w-cat:hover p,.w-cat:focus-visible p{color:#e9ecf8}
.w-cat.first .w-circle,.w-cat:hover .w-circle,.w-cat:focus-visible .w-circle{background:#f47227;color:#27235f}
.w-cats:hover .w-cat.first:not(:hover):not(:focus-visible){background:#fff;color:#27235f}
.w-cats:hover .w-cat.first:not(:hover):not(:focus-visible) h3{color:#27235f}
.w-cats:hover .w-cat.first:not(:hover):not(:focus-visible) p{color:#3d4260}
.w-cats:hover .w-cat.first:not(:hover):not(:focus-visible) .w-circle{background:#27235f;color:#fff}
/* tabs: endless marquee, hover activeness */
.mq{overflow:hidden;padding:12px 0 16px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.mq[hidden]{display:none}
.mq-track{display:flex;gap:16px;width:max-content;animation:mq 60s linear infinite}
.mq:hover .mq-track{animation-play-state:paused}
@keyframes mq{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 8px))}}
.mq .w-card{flex:0 0 300px;transition:transform .25s ease,border-color .25s,box-shadow .25s}
.mq .w-card:hover,.mq .w-card:focus-within{transform:translateY(-6px);border-color:#27235f;box-shadow:0 2px 10px rgba(39,35,95,.14)}
.mq .w-card:hover .w-btn-solid,.mq .w-card:focus-within .w-btn-solid{background:#f47227;color:#27235f}
.mq .w-card:hover h3{color:#27235f}
@media (prefers-reduced-motion:reduce){.mq{overflow-x:auto;-webkit-mask-image:none;mask-image:none}.mq-track{animation:none}}
@media (max-width:700px){.mq .w-card{flex-basis:250px}}
.dd-toggle .ic{width:15px;height:15px}
.w-stats3::before,.w-stats3::after{box-shadow:0 0 4px rgba(244,114,39,.45)}

/* ===== v15 ===== */
/* What We Offer: active = slight shadow only, no colour change */
.w-cat{border:1px solid #e6e8f0}
.w-cat.first,.w-cat:hover,.w-cat:focus-visible{background:#fff;color:#27235f;box-shadow:0 3px 12px rgba(39,35,95,.12);transform:translateY(-3px);border-color:#dcdff0}
.w-cat.first h3,.w-cat:hover h3,.w-cat:focus-visible h3{color:#27235f}
.w-cat.first p,.w-cat:hover p,.w-cat:focus-visible p{color:#3d4260}
.w-cat.first .w-circle,.w-cat:hover .w-circle,.w-cat:focus-visible .w-circle{background:#27235f;color:#fff}
.w-cats:hover .w-cat.first:not(:hover):not(:focus-visible){background:#fff;box-shadow:none;transform:none;border-color:#e6e8f0}
.w-cat{transition:box-shadow .25s,transform .25s,border-color .25s}
/* very thin lines */
.head .nav>a.on::after,.head .dd>a.on::after,.head .dd>.dd-link.on::after{height:1px;box-shadow:0 0 3px rgba(244,114,39,.4)}
.foot .ft-title::before{height:1px;width:46px}
.foot .ft-subtitle::after{height:1px}
/* header domain search */
.nav .dsearch{position:relative;display:flex;align-items:center;flex:0 1 250px;min-width:150px;margin-right:12px;background:#f3f3f1;border-radius:999px;height:40px;padding:0 4px 0 12px}
.nav .dsearch:focus-within{background:#fff;box-shadow:0 0 0 1px #27235f}
.ds-ic{display:grid;place-items:center;color:#5b6074}.ds-ic .ic{width:16px;height:16px}
.dsearch input{flex:1;min-width:0;border:0;background:transparent;padding:0 8px;height:38px;font:400 .88rem Mulish,sans-serif;color:#27235f;outline:none;box-shadow:none}
.dsearch input::placeholder{color:#7b8097}
.ds-go{display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:50%;background:#27235f;color:#fff;cursor:pointer;flex:none}
.ds-go .ic{width:15px;height:15px}.ds-go:hover{background:#f47227;color:#27235f}
.ds-panel{position:absolute;top:calc(100% + 10px);left:0;width:min(380px,calc(100vw - 24px));background:#fff;border:1px solid #e6e8f0;border-radius:14px;box-shadow:0 2px 10px rgba(39,35,95,.10);padding:8px;z-index:95;text-align:left}
.ds-panel[hidden]{display:none}
.ds-panel ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.ds-head{padding:6px 10px 8px;font-size:.74rem;letter-spacing:.04em;color:#5b6074}
.ds-pick{display:flex;justify-content:space-between;align-items:center;width:100%;padding:10px 12px;border:0;background:transparent;border-radius:9px;font:500 .95rem Mulish,sans-serif;color:#27235f;cursor:pointer;text-align:left}
.ds-pick b{color:#f47227;font-weight:700}.ds-pick em{font-style:normal;font-size:.75rem;color:#5b6074}
.ds-pick:hover,.ds-pick:focus-visible{background:#ebeaf6;outline:none}
.ds-row{display:grid;gap:2px;padding:10px 12px;border-radius:9px}
.ds-row+.ds-row{border-top:1px solid #f0f1f6}
.ds-line{display:flex;justify-content:space-between;align-items:center;gap:10px}
.ds-line strong{font:700 .95rem Urbanist,Mulish,sans-serif;color:#27235f}
.ds-st{font:700 .72rem Urbanist,Mulish,sans-serif;padding:3px 10px;border-radius:999px;background:#ebeaf6;color:#27235f}
.ds-st.ok{background:#e3f3ea;color:#0d5a32}.ds-st.no{background:#f3e9e8;color:#8a2a20}.ds-st.warn{background:#fff1d6;color:#6b4a00}
.ds-sub{font-size:.78rem;color:#5b6074}
.ds-link{font:700 .8rem Urbanist,Mulish,sans-serif;color:#27235f;text-decoration:underline;text-underline-offset:3px}.ds-link:hover{color:#f47227}
@media (max-width:1180px){.nav .dsearch{flex-basis:190px;min-width:130px}}
@media (max-width:900px){.nav .dsearch{flex:none;width:100%;margin:0 0 8px;background:#f3f3f1;min-width:0}.ds-panel{width:100%}}
/* floating buttons: WhatsApp, chat, go-top (stacked in that order) */
.chat-float{position:fixed;right:16px;bottom:68px;z-index:70;width:42px;height:42px;border-radius:50%;border:0;background:#27235f;color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 2px 8px rgba(39,35,95,.18);transition:transform .15s,background .15s}
.chat-float:hover{transform:scale(1.07);background:#f47227;color:#27235f}.chat-float .ic{width:22px;height:22px}
.chat-float.busy{opacity:.6;cursor:progress}
.to-top{bottom:118px}
@media (max-width:900px){.chat-float{bottom:132px;right:12px;width:40px;height:40px}.to-top{bottom:180px}}

/* ===== service pages: real sections from the live site ===== */
.sec-intro{margin:0;max-width:62em;color:#3d4260;font-size:1.02rem;line-height:1.7}
.sec-note{display:flex;align-items:center;gap:8px;margin:12px 0 0;color:#27235f;font-weight:600}.sec-note .ic{color:#f47227}
.svc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px;margin-top:22px}
.svc-card{background:#fff;border:1px solid #e6e8f0;border-radius:16px;padding:20px;transition:box-shadow .25s,transform .25s,border-color .25s}
.svc-card:hover,.svc-card:target{box-shadow:0 3px 12px rgba(39,35,95,.12);transform:translateY(-3px);border-color:#dcdff0}
.svc-card h3{margin:0 0 8px;font-size:1.08rem;color:#27235f}
.svc-card p{margin:0;font-size:.93rem;line-height:1.65;color:#3d4260}
.sec{scroll-margin-top:90px}.svc-card{scroll-margin-top:100px}

/* ===== hosting: blue plan cards (mockup 1) ===== */
.hp-sec{padding:28px 0}
.hp-sec>.wrap{background:linear-gradient(180deg,#e7e8ff 0%,#f4f4ff 55%,#fbfbff 100%);border-radius:38px;padding:56px clamp(14px,2vw,28px) 70px}
.hp-title{margin:0;text-align:center;font:600 clamp(2rem,3.6vw,2.9rem)/1.15 Urbanist,Mulish,sans-serif;color:#27235f;letter-spacing:-.01em}
.hp-sub{margin:12px auto 0;text-align:center;max-width:46em;font-size:.95rem;color:#5b6074}
.hp-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;align-items:stretch;margin-top:64px}
.hp-card{position:relative;display:flex;flex-direction:column;text-align:center;background:rgba(255,255,255,.6);border:1px solid #e0e2fb;border-radius:12px;padding:24px 14px 20px;color:#27235f;cursor:pointer;transition:background .3s,color .3s,margin .3s,padding .3s,box-shadow .3s,border-color .3s;outline:none}
.hp-card:focus-visible{box-shadow:0 0 0 2px #4b5df0}
.hp-name{margin:0 0 8px;font:700 1rem Urbanist,Mulish,sans-serif;color:#27235f}
.hp-art{position:relative;height:98px;margin:0 0 8px}
.hp-moon{position:absolute;left:50%;top:4px;width:90px;height:90px;border-radius:50%;background:#e3e2ff;transform:translateX(-50%);transition:background .3s}
.hp-ic{position:absolute;left:50%;top:50%;width:44px;height:44px;transform:translate(-50%,-42%);color:#4b5df0;display:grid;place-items:center;transition:color .3s}
.hp-ic .ic{width:44px;height:44px}
.hp-leaf{position:absolute;bottom:2px;width:13px;height:36px;border-radius:60% 60% 0 0;background:#d9d9fa;transition:background .3s}
.hp-leaf.l1{left:14%}.hp-leaf.l2{right:14%;height:28px}
.hp-from{margin:6px 0 0;font-size:.68rem;color:#5b6074}
.hp-price{margin:0;font:800 1.75rem/1.15 Urbanist,Mulish,sans-serif;color:#27235f;letter-spacing:-.01em}
.hp-price sup{font-size:.62rem;font-weight:700;margin-right:3px;vertical-align:top;position:relative;top:.45em}
.hp-renew{margin:2px 0 14px;font-size:.68rem;color:#5b6074}
.hp-box{list-style:none;margin:0 -14px 16px;padding:11px 14px;background:#fff;display:grid;gap:6px;text-align:left;transition:background .3s}
.hp-box li{display:flex;justify-content:space-between;gap:8px;font-size:.72rem}
.hp-box span{font-weight:700;color:#27235f}.hp-box b{font-weight:500;color:#5b6074;text-align:right}
.hp-list{list-style:none;margin:0 0 20px;padding:0;text-align:left;display:grid;gap:8px;font-size:.76rem;flex:1;align-content:start}
.hp-list li{display:flex;align-items:center;gap:8px}.hp-list .ic{flex:none;width:12px;height:12px}
.hp-btn{align-self:center;display:inline-block;background:#4b5df0;color:#fff;border-radius:999px;padding:11px 26px;font:700 .78rem Urbanist,Mulish,sans-serif;text-decoration:none;box-shadow:0 3px 8px rgba(75,93,240,.28);transition:background .3s,color .3s}
.hp-btn:hover{background:#27235f;color:#fff}
.hp-badge{position:absolute;left:50%;top:-15px;transform:translateX(-50%);background:#27235f;color:#fff;border-radius:999px;padding:7px 16px;font:700 .72rem Urbanist,Mulish,sans-serif;white-space:nowrap}
.hp-card.sel{background:linear-gradient(180deg,#4f64f6 0%,#3135c6 100%);border-color:transparent;color:#fff;margin-block:-22px;padding-block:32px 28px;box-shadow:0 6px 20px rgba(80,98,240,.26)}
.hp-card.sel .hp-name,.hp-card.sel .hp-price,.hp-card.sel .hp-box span{color:#fff}
.hp-card.sel .hp-from,.hp-card.sel .hp-renew,.hp-card.sel .hp-box b{color:rgba(255,255,255,.78)}
.hp-card.sel .hp-moon{background:#dcdcff}.hp-card.sel .hp-ic{color:#3a3fd0}.hp-card.sel .hp-leaf{background:rgba(255,255,255,.4)}
.hp-card.sel .hp-box{background:rgba(255,255,255,.16)}
.hp-card.sel .hp-btn{background:#fff;color:#3135c6;box-shadow:0 3px 8px rgba(20,18,58,.2)}
.hp-card.sel .hp-btn:hover{background:#27235f;color:#fff}
@media (max-width:1279px){.hp-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 14px}.hp-card.sel{margin-block:0;padding-block:26px 22px}}
@media (max-width:760px){.hp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.hp-grid{grid-template-columns:1fr}}
.ext-row{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}.ext{background:#ebeaf6;color:#27235f;border-radius:999px;padding:5px 14px;font:700 .85rem Urbanist,Mulish,sans-serif}

/* ===== email packages: orange plan cards (mockup 2) ===== */
.em-sec{padding:70px 0 100px;overflow:hidden}
.em-title{margin:0;text-align:center;font:600 clamp(2rem,3.4vw,2.7rem)/1.15 Urbanist,Mulish,sans-serif;color:#27235f}
.em-sub{margin:10px 0 0;text-align:center;color:#5b6074}
.em-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(26px,5vw,80px);max-width:1000px;margin:130px auto 110px;align-items:center}
.em-card{position:relative;background:#fff;border-radius:22px;padding:30px 20px 28px;text-align:center;box-shadow:0 4px 18px rgba(39,35,95,.10)}
.em-name{margin:0;font:800 1.15rem Urbanist,Mulish,sans-serif;letter-spacing:.05em;color:#f9a21b}
.em-note{margin:3px 0 12px;padding-bottom:12px;border-bottom:1px solid #fdebc9;font-size:.72rem;letter-spacing:.05em;color:#f6b550}
.em-price{margin:0;font:400 clamp(2.8rem,5vw,3.9rem)/1 Urbanist,Mulish,sans-serif;color:#f9a21b}
.em-price sup{font-size:1.2rem;font-weight:700;vertical-align:top;position:relative;top:.55em;margin-right:6px}
.em-price span{letter-spacing:-.02em}
.em-ask span{font-size:.62em}
.em-per{margin:2px 0 14px;font-size:.82rem;color:#f6b550}
.em-list{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:5px;font-size:.82rem;color:#ee8c1d}
.em-btn{display:inline-block;background:linear-gradient(90deg,#ffc832,#ff9a2a);color:#fff;border-radius:999px;padding:12px 40px;font:700 .86rem Urbanist,Mulish,sans-serif;text-decoration:none;box-shadow:0 4px 10px rgba(255,154,42,.32);transition:transform .2s}
.em-btn:hover{transform:translateY(-2px)}
.em-card.feat{background:linear-gradient(165deg,#ffcb35 0%,#ff8a22 62%,#ff6417 100%);padding-block:46px 42px;box-shadow:0 6px 20px rgba(255,120,30,.22)}
.em-card.feat .em-name,.em-card.feat .em-price,.em-card.feat .em-list{color:#fff}
.em-card.feat .em-note,.em-card.feat .em-per{color:rgba(255,255,255,.9)}.em-card.feat .em-note{border-color:rgba(255,255,255,.35)}
.em-card.feat .em-btn{background:#fff;color:#ff7a1f;box-shadow:0 4px 10px rgba(120,40,0,.18)}
.em-card .b{position:absolute;display:block;pointer-events:none}
.em-card .b1{left:7%;top:-70px;width:44px;height:82px;border-radius:22px 22px 0 0;background:#ffc632}
.em-card .b2{left:40%;top:-98px;width:16px;height:66px;border-radius:8px;background:#ffcb3f}
.em-card .b3{left:41%;top:-142px;width:28px;height:28px;border-radius:50%;background:#ffd24f}
.em-card .b4{right:20%;bottom:-96px;width:42px;height:106px;border-radius:0 0 22px 22px;background:#ff6a1a}
.em-card .b5{left:15%;bottom:-74px;width:28px;height:28px;border-radius:50%;background:#ff7a24}
@media (max-width:860px){.em-grid{grid-template-columns:1fr;margin:90px auto 90px;gap:60px;max-width:420px}.em-card.feat .b1,.em-card.feat .b2,.em-card.feat .b3{display:block}}
.em-grid{margin-top:170px}
.em-sub{position:relative;z-index:2}

/* ===== v16: borderless cards (shadow only), centred domain search, registration modal ===== */
.w-cat,.w-cat:hover,.w-cat.first,.w-cat:focus-visible{border:0!important}
.w-cat{box-shadow:0 1px 6px rgba(39,35,95,.07)}
.w-cat.first,.w-cat:hover,.w-cat:focus-visible{box-shadow:0 4px 14px rgba(39,35,95,.14)}
.w-cats:hover .w-cat.first:not(:hover):not(:focus-visible){box-shadow:0 1px 6px rgba(39,35,95,.07)}
.mq .w-card,.w-sec.plain .w-card{border:0;box-shadow:0 1px 6px rgba(39,35,95,.09)}
.mq .w-card:hover,.mq .w-card:focus-within{border:0;box-shadow:0 4px 14px rgba(39,35,95,.15)}
.svc-card,.svc-card:hover,.svc-card:target{border:0;box-shadow:0 1px 6px rgba(39,35,95,.08)}
.svc-card:hover,.svc-card:target{box-shadow:0 4px 14px rgba(39,35,95,.14)}
/* domain search centred in the space between the logo and the menu links */
.hrow{gap:14px}
.head .nav{flex:1 1 auto;margin:0;display:flex;align-items:center;justify-content:flex-end}
.nav .dsearch{flex:0 1 310px;min-width:240px;margin:0 auto}
@media (max-width:1180px){.nav .dsearch{flex-basis:230px;min-width:190px}}
@media (max-width:900px){.head .nav{display:none}.head .nav.open{display:flex;flex-direction:column;align-items:stretch}.nav .dsearch{flex:none;width:100%;min-width:0;margin:0 0 8px}}
.dsearch input::placeholder{opacity:1;color:#5b6074}
/* registration modal */
html.modal-open{overflow:hidden}
.modal{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:16px}
.modal[hidden]{display:none}
.modal-bg{position:absolute;inset:0;background:rgba(39,35,95,.55)}
.modal-box{position:relative;width:min(560px,100%);max-height:calc(100vh - 32px);overflow:auto;background:#fff;border-radius:20px;padding:30px clamp(18px,4vw,32px) 28px;box-shadow:0 8px 28px rgba(20,18,58,.22);outline:none;animation:mpop .25s ease}
@keyframes mpop{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
.modal-x{position:absolute;right:14px;top:14px;width:36px;height:36px;border:0;border-radius:50%;background:#f3f3f1;color:#27235f;display:grid;place-items:center;cursor:pointer}
.modal-x:hover{background:#ebeaf6}.modal-x .ic{width:16px;height:16px}
.dm-kicker{margin:0 0 4px;font:700 .72rem Urbanist,Mulish,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#f47227}
.dm-domain{margin:0 0 8px;font:700 clamp(1.5rem,3vw,1.9rem)/1.15 Urbanist,Mulish,sans-serif;color:#27235f;word-break:break-all}
.dm-lead{margin:0 0 18px;color:#3d4260;font-size:.95rem}
.dm-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}
.dm-f{display:grid;gap:5px;align-content:start}.dm-f.wide{grid-column:1/-1}
.dm-f label{font-size:.82rem;font-weight:700;color:#27235f}.dm-f abbr{text-decoration:none;color:#f47227}
.dm-f input{width:100%;padding:12px 14px;border:1.5px solid #d6d9e8;border-radius:10px;background:#fff;color:#27235f;font:400 .95rem Mulish,sans-serif}
.dm-f input:focus{outline:none;border-color:#27235f;box-shadow:0 0 0 3px rgba(39,35,95,.12)}
.dm-err{margin:0;min-height:0;color:#b3261e;font-size:.78rem}.dm-err:empty{display:none}
.dm-check{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;margin-bottom:10px;border:1.5px solid #e3e5f1;border-radius:12px;cursor:pointer;transition:border-color .2s,background .2s}
.dm-check:hover{background:#f8f8fd}
.dm-check input{margin-top:3px;width:18px;height:18px;accent-color:#27235f;flex:none}
.dm-check strong{display:block;font-size:.92rem;color:#27235f}.dm-check em{display:block;font-style:normal;font-size:.78rem;color:#5b6074}
.dm-check:has(input:checked){border-color:#27235f;background:#f3f2fb}
.dm-ns{margin:0 0 10px;padding:14px;background:#f8f8fd;border-radius:12px}
.dm-ns[hidden]{display:none}
.dm-submit{width:100%;margin-top:8px;padding:14px;border:0;border-radius:10px;background:#27235f;color:#fff;font:700 1rem Urbanist,Mulish,sans-serif;cursor:pointer;transition:background .2s}
.dm-submit:hover{background:#f47227;color:#27235f}.dm-submit:disabled{opacity:.6;cursor:progress}
.dm-form-err{margin-top:8px}
.dm-done{text-align:center;padding:14px 4px 4px}
.dm-done[hidden]{display:none}
.dm-tick{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 16px;border-radius:50%;background:#e3f3ea;color:#0d5a32}.dm-tick .ic{width:34px;height:34px}
.dm-done h2{margin:0 0 10px;font:700 1.7rem Urbanist,Mulish,sans-serif;color:#27235f}
.dm-done p{margin:0 0 18px;color:#3d4260;line-height:1.65}
.ds-link.ds-reg{border:0;background:transparent;padding:0;cursor:pointer;font:700 .8rem Urbanist,Mulish,sans-serif}
@media (max-width:520px){.dm-grid{grid-template-columns:1fr}}

/* v17 service pages: live-style bands, hosting summary */
.svc-band{max-width:820px;margin:0 0 6px}.svc-band .lead{margin:12px 0 16px}
.sec.has-band{padding-top:40px}.sec-head .btns{margin-top:16px}
.hs-feat{list-style:none;margin:0 0 6px;padding:0;display:flex;flex-wrap:wrap;gap:8px 22px;color:#3d4260;font-weight:600}.hs-feat li{display:flex;align-items:center;gap:8px}.hs-feat .ic{color:#f47227}
.hs-h{font-family:Urbanist,sans-serif;color:#27235f;font-size:1.25rem;margin:26px 0 0;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px}.hs-h span{font-size:.9rem;color:#f47227;font-weight:700}
.hs-plan{display:block;text-decoration:none;color:inherit}.hs-price{font-family:Urbanist,sans-serif;font-weight:800;color:#27235f;font-size:1.2rem;margin:4px 0}.hs-price small{font-size:.8rem;color:#5b6074;font-weight:600}
.hs-plans,.hs-mail{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.hs-more{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:22px 0 0;color:#5b6074;font-size:.9rem}

/* v18 mobile glass bottom bar */
@property --i{syntax:'<number>';inherits:true;initial-value:0}
@media (max-width:900px){
  .sticky{display:none!important}body{padding-bottom:96px}
  .mnav{--i:0;--mh:64px;--ic:25px;--nr:27px;--fr:34px;display:block;position:fixed;left:50%;bottom:12px;z-index:60;width:min(calc(100% - 24px),420px);height:var(--mh);transform:translateX(-50%);transition:width .4s ease,height .4s ease,bottom .4s ease}
  .mnav.anim{transition:--i .45s cubic-bezier(.3,.9,.3,1),width .4s ease,height .4s ease,bottom .4s ease}
  .mnav.sq{--mh:52px;--ic:26px;--nr:22px;--fr:29px;width:290px;bottom:10px}
  .mnav.off{opacity:0;pointer-events:none}
  .mn-bar{position:absolute;inset:0;z-index:2;display:grid;grid-template-columns:repeat(5,1fr)}
  .mn-bg{position:absolute;inset:0;z-index:0;border-radius:32px;background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(18px) saturate(1.5);backdrop-filter:blur(18px) saturate(1.5);box-shadow:0 4px 14px rgba(39,35,95,.12),inset 0 0 0 1px rgba(255,255,255,.7);
    -webkit-mask-image:radial-gradient(circle var(--nr) at calc(var(--i)*20% + 10%) 0,transparent calc(var(--nr) - 1px),#000 var(--nr));mask-image:radial-gradient(circle var(--nr) at calc(var(--i)*20% + 10%) 0,transparent calc(var(--nr) - 1px),#000 var(--nr));transition:border-radius .4s}
  .mnav.sq .mn-bg{border-radius:26px}
  .mnav.none .mn-bg{-webkit-mask-image:radial-gradient(circle var(--fr) at 50% 0,transparent calc(var(--fr) - 1px),#000 var(--fr));mask-image:radial-gradient(circle var(--fr) at 50% 0,transparent calc(var(--fr) - 1px),#000 var(--fr))}
  .mn-t{grid-row:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:3px;padding-top:calc(var(--mh)/2 - 11px - 7px);color:#3d4260;text-decoration:none;font:700 .66rem/1 Urbanist,sans-serif;-webkit-tap-highlight-color:transparent;transition:padding .4s}
  .mnav.sq .mn-t{padding-top:calc(var(--mh)/2 - 11px)}
  .mn-t.t2{grid-column:3}.mn-t.t0{grid-column:1}.mn-t.t1{grid-column:2}.mn-t.t3{grid-column:4}.mn-t.t4{grid-column:5}
  .mnav:not(.rdy){visibility:hidden}.mnav:not(.rdy):not(.anim){transition:none}
  .mn-t .ic{width:22px;height:22px;flex:none;position:relative;z-index:2;transition:transform .45s cubic-bezier(.3,.9,.3,1),color .3s}
  .mn-t span{transition:opacity .25s,transform .4s;white-space:nowrap}
  .mnav.sq .mn-t span{opacity:0;transform:translateY(-6px);pointer-events:none;position:absolute;width:1px;overflow:hidden}
  .mn-t[aria-current]{color:#27235f}.mn-fab[aria-current]{background:#27235f;box-shadow:0 4px 12px rgba(39,35,95,.3)}.mn-t[aria-current] .ic{color:#fff;transform:translateY(calc(var(--ic)*-1))}
  .mnav.none .mn-t .ic{transform:none;color:inherit}
  .mn-dot{position:absolute;z-index:1;top:0;left:calc(var(--i)*20% + 10%);width:40px;height:40px;margin:-20px 0 0 -20px;border-radius:50%;background:#27235f;box-shadow:0 3px 10px rgba(39,35,95,.25);transition:opacity .3s,width .4s,height .4s,margin .4s}
  .mnav.sq .mn-dot{width:34px;height:34px;margin:-17px 0 0 -17px}
  .mnav.none .mn-dot{opacity:0}
  .mn-fab{position:absolute;z-index:3;left:50%;top:0;width:52px;height:52px;margin:-26px 0 0 -26px;border-radius:50%;background:#f47227;color:#fff;display:grid;place-items:center;box-shadow:0 4px 12px rgba(244,114,39,.35);transition:width .4s,height .4s,margin .4s,transform .2s}
  .mn-fab:active{transform:scale(.94)}.mn-fab .ic{width:26px;height:26px}
  .mnav.sq .mn-fab{width:42px;height:42px;margin:-21px 0 0 -21px}
  .wa-float{bottom:112px}.chat-float{bottom:160px}.to-top{bottom:208px}
}
@media (prefers-reduced-motion:reduce){.mnav,.mn-t .ic,.mn-dot{transition:none!important}}

@media (max-width:900px){.hs-price{font-size:1.02rem}.hs-price small{white-space:nowrap}.hs-plan p{font-size:.88rem}}

/* v19 clean fields, soft domain search, hidden scrollbars, no gap under footer */
input,select,textarea{border:0;background:#f1f1ef}
input:focus,select:focus,textarea:focus{border:0;background:#ebebf5;outline:none;box-shadow:none}
[aria-invalid=true]{background:#fbeceb;box-shadow:none}
.fld input,.fld select,.fld textarea{background:#f1f1ef}
.dm-f input{border:0;background:#f1f1ef}.dm-f input:focus{border:0;background:#ebebf5;box-shadow:none}
.dm-check{border:0;background:#f6f6f8}.dm-check:hover{background:#efeff6}.dm-check:has(input:checked){border:0;background:#ebebf5}
.dm-ns{background:#f6f6f8}
.nav .dsearch{background:#f6f6fa}.nav .dsearch:focus-within{background:#f1f1f8;box-shadow:none}
.ds-panel{border:0}.ds-row+.ds-row{border-top:0}
html{scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar,body::-webkit-scrollbar,*::-webkit-scrollbar{display:none;width:0;height:0}
*{scrollbar-width:none}
@media (max-width:900px){body{padding-bottom:0!important}.foot{padding-bottom:104px!important}}

@media (max-width:900px){.foot .ft-bottom,.foot [class*=copy]{padding-right:56px}}
@media (max-width:900px){.ft-copy-row{padding-right:56px}}

@media (max-width:900px){
  .mnav{--nr:31px}.mnav.sq{--nr:25px}
  .mnav .mn-bg{-webkit-mask-image:radial-gradient(circle var(--nr) at calc(var(--i)*20% + 10%) 0,transparent calc(var(--nr) - 1px),#000 var(--nr));mask-image:radial-gradient(circle var(--nr) at calc(var(--i)*20% + 10%) 0,transparent calc(var(--nr) - 1px),#000 var(--nr))}
  .mnav.none .mn-bg{-webkit-mask-image:none;mask-image:none}
  .mn-dot{width:46px;height:46px;margin:-23px 0 0 -23px;background:#f47227;box-shadow:0 4px 12px rgba(244,114,39,.35)}
  .mnav.sq .mn-dot{width:36px;height:36px;margin:-18px 0 0 -18px}
  .mn-fab{display:none}
}

@media (max-width:900px){
  .mn-bg{background:rgba(39,35,95,.9);-webkit-backdrop-filter:blur(14px) saturate(1.3);backdrop-filter:blur(14px) saturate(1.3);box-shadow:0 4px 14px rgba(39,35,95,.2)}
  .mn-t{color:#c9d0ea}.mn-t[aria-current]{color:#fff}
  .mn-dot{left:calc(var(--i)*20% + 10%);display:block}
  .mn-t .ic{margin-top:0}
}

/* v20 mobile hero: search sits above the bottom bar */
@media (max-width:900px){.hv{min-height:max(560px,calc(100svh - 150px))}.hv-in{padding:56px 14px 190px}.hv-search{bottom:100px}}
@media (max-width:700px){
  .w-cats{gap:10px}
  .w-cat{display:grid;grid-template-columns:46px 1fr;column-gap:14px;align-items:start;padding:16px!important;text-align:left}
  .w-cat .w-circle{grid-row:1/3;width:46px;height:46px;margin:0}.w-cat h3{margin:0 0 4px;font-size:1.05rem}.w-cat p{margin:0;font-size:.9rem}
}
@media (max-width:820px){
  .w-nums3{grid-template-columns:1fr;gap:22px;align-items:start}
  .w-nums3 .w-nums-t{order:1;display:block}.w-nums3 .photo.mid{order:2;height:auto;aspect-ratio:16/10;min-height:0}.w-nums3 .w-stats3{order:3;grid-template-columns:1fr 1fr;text-align:center}
  .w-nums3 .w-nums-t p{margin:0 0 10px;font-size:.95rem}.w-nums3 .w-nums-t .w-h2{margin-bottom:12px}
  .w-stats3 dd{font-size:.85rem}
}

}
@media (max-width:900px){.insp-stage .insp-panel,.insp-stage.js .insp-panel{justify-content:flex-start}}
@media (max-width:700px){.rw-sec{padding-top:48px}}

/* v21 inspire fan stays visible on phones with larger lettering */
.insp-mt{display:none}
@media (max-width:700px){
  .insp-fan{margin-inline:-6px}
  .fan-lbl{font-size:29px}.fan-t1{font-size:32px;letter-spacing:.04em}.fan-t3{font-size:42px}.fan-t2{font-size:19px;letter-spacing:.07em}
  .fan-hint{justify-content:center;text-align:center}
}

@media (max-width:900px){
  .hv-in{padding:56px 14px 190px}
  .mn-bg{background:rgba(39,35,95,.97);box-shadow:0 6px 16px rgba(20,18,58,.35),0 1px 4px rgba(20,18,58,.25)}
  .mn-dot{box-shadow:0 4px 10px rgba(10,8,40,.35),0 1px 3px rgba(10,8,40,.25)}
}

@media (max-width:700px){.hv-search{display:none}.hv-in{padding-bottom:120px}.hv{min-height:max(520px,calc(100svh - 150px))}}
@media (min-width:600px) and (max-width:820px){.w-why{grid-template-columns:1fr 1.3fr}}
@media (min-width:600px) and (max-width:820px){
  .w-nums3{grid-template-columns:1fr 1fr;gap:24px 28px;align-items:center}
  .w-nums3 .w-nums-t{order:1}.w-nums3 .photo.mid{order:2;aspect-ratio:4/3;height:auto;min-height:0}
  .w-nums3 .w-stats3{order:3;grid-column:1/-1;grid-template-columns:repeat(4,1fr)}
  .w-stats3::before,.w-stats3::after{display:none}
  .w-nums3 .w-stats3>div+div{border-left:1px solid rgba(244,114,39,.45)}
}

/* v22 smooth burger menu, quote icon, centred mobile footer, Why heading */
.quote-ic{display:none}
@media (max-width:900px){
  .head .nav{display:flex!important;flex-direction:column;align-items:stretch;max-height:0;opacity:0;overflow:hidden;visibility:hidden;padding-block:0;transition:max-height .45s cubic-bezier(.3,.8,.3,1),opacity .3s ease,padding .3s ease,visibility 0s .45s}
  .head .nav.open{max-height:80vh;opacity:1;visibility:visible;overflow-y:auto;padding-block:6px 10px;transition:max-height .45s cubic-bezier(.3,.8,.3,1),opacity .3s ease .05s,padding .3s ease,visibility 0s}
  .head .bar-end{display:flex!important;width:100%;justify-content:center;align-items:center;gap:14px;max-height:0;opacity:0;overflow:hidden;visibility:hidden;padding:0;transition:max-height .4s ease,opacity .3s ease,padding .3s,visibility 0s .4s}
  .head .bar-end.open{max-height:80px;opacity:1;visibility:visible;padding:4px 0 8px;transition:max-height .4s ease,opacity .3s ease .1s,padding .3s,visibility 0s}
  .head .bar-end .quote-ic{display:grid}
  .head .bar-end .bag,.head .bar-end .quote-ic{width:48px;height:48px;border-radius:50%;place-items:center}
  .head .bar{row-gap:0}
}
@media (max-width:767.98px){
  .foot{text-align:center}
  .foot .ft-top{padding-bottom:24px}
  .foot .ft-container{max-width:none;padding-inline:20px}
  .foot .ft-c-brand,.foot .ft-c-touch{width:100%}
  .foot .ft-c-2{width:50%}.foot .ft-c-2:nth-of-type(4){width:100%}
  .foot .ft-logo{display:block;margin-inline:auto}.foot .ft-logo img{margin-inline:auto}
  .foot .ft-about{margin:20px auto 0;max-width:34em}
  .foot .ft-social{margin-top:24px}
  .foot .ft-subtitle{display:block;margin-bottom:10px}.foot .ft-subtitle::after{position:static;display:block;margin:8px auto 0;width:46px}
  .foot .ft-social-nav,.foot .ft-pay{justify-content:center}
  .foot .ft-widget{margin:28px 0 0}
  .foot .ft-title{margin:0 0 22px}.foot .ft-title::before{left:50%;top:32px;margin-left:-23px}
  .foot .ft-nav li{margin-bottom:10px}
  .foot .ft-form input[type=email]{text-align:left}
  .foot .ft-pm{margin-top:28px}
  .foot .ft-pay li{margin:0 4px}
  .foot .ft-copy-row{flex-direction:column;justify-content:center;text-align:center;padding-right:0!important;gap:8px}
  .foot .ft-copy-links{display:flex;justify-content:center;gap:20px}.foot .ft-copy-links a{margin:0}
  .w-why{text-align:center}.w-why-t{text-align:center}.w-why .w-big{font-size:clamp(1.7rem,8vw,2.2rem);white-space:nowrap;margin-inline:auto}.w-why .w-big br{display:none}.w-why-t p{margin-inline:auto}
  .w-whylist{text-align:left;max-width:22em;margin-inline:auto}
}
@media (max-width:900px){.head .bar-end .bag,.head .bar-end .quote-ic{border:0;background:#f3f3f1;color:#27235f;box-shadow:none}}
@media (max-width:767.98px){
  .foot .ft-copy-row{align-items:stretch;padding:0!important}
  .foot .ft-copy-row>*{width:100%;text-align:center;margin:0}
  .foot .ft-copy-links a{white-space:nowrap}
}
@media (max-width:900px){.foot .ft-copy,.foot .ft-bottom{padding-right:0}.foot .ft-copy{padding-bottom:96px}}

/* v23 pricing cards: brand colours only (navy #27235f, orange #f47227, greys) */
.hp-sec>.wrap{background:#f3f3f1}
.hp-card{background:#fff;border:0;box-shadow:0 1px 6px rgba(39,35,95,.08)}
.hp-card:focus-visible{box-shadow:0 0 0 2px #f47227}
.hp-moon{background:#ebeaf6}.hp-leaf{background:#ebeaf6}.hp-ic{color:#27235f}
.hp-box{background:#f3f3f1}
.hp-btn{background:#27235f;box-shadow:0 3px 8px rgba(39,35,95,.2)}.hp-btn:hover{background:#f47227;color:#fff}
.hp-card.sel{background:#27235f;box-shadow:0 6px 18px rgba(39,35,95,.22)}
.hp-card.sel .hp-moon{background:rgba(255,255,255,.12)}.hp-card.sel .hp-ic{color:#f47227}.hp-card.sel .hp-leaf{background:rgba(255,255,255,.18)}
.hp-card.sel .hp-box{background:rgba(255,255,255,.1)}
.hp-card.sel .hp-btn{background:#f47227;color:#fff;box-shadow:0 3px 8px rgba(0,0,0,.2)}.hp-card.sel .hp-btn:hover{background:#fff;color:#27235f}
.hp-badge{background:#f47227}
.em-name,.em-price,.em-note,.em-per,.em-list{color:#f47227}
.em-card{box-shadow:0 1px 6px rgba(39,35,95,.08)}
.em-note{border-bottom-color:rgba(244,114,39,.25)}
.em-list{color:#5b6074}
.em-btn{background:#f47227;color:#fff;box-shadow:0 3px 8px rgba(244,114,39,.28)}
.em-card.feat{background:#f47227;box-shadow:0 6px 18px rgba(244,114,39,.25)}
.em-card.feat .em-name,.em-card.feat .em-price,.em-card.feat .em-list{color:#fff}
.em-card.feat .em-note,.em-card.feat .em-per{color:rgba(255,255,255,.9)}
.em-card.feat .em-btn{background:#fff;color:#f47227;box-shadow:0 3px 8px rgba(39,35,95,.15)}
.em-card .b1{background:rgba(244,114,39,.35)}.em-card .b2{background:rgba(244,114,39,.5)}.em-card .b3{background:rgba(244,114,39,.28)}
.em-card .b4{background:#27235f}.em-card .b5{background:rgba(39,35,95,.45)}

/* v24 new home sections: survey strip, how we work, brands, spotlights, voices, domain, FAQ, final CTA */
.hx-eyebrow{margin:0 0 10px;font:700 .74rem Urbanist,Mulish,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#f47227}.hx-eyebrow.center{text-align:center}
.hx-or{color:#f47227}
.w-btn-orange{background:#f47227;color:#fff}.w-btn-orange:hover{background:#fff;color:#27235f}
.w-btn-ghostw{background:rgba(255,255,255,.1);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}.w-btn-ghostw:hover{background:#fff;color:#27235f}
/* survey strip */
.sv-sec{padding:34px 0 0}
.sv-card{position:relative;overflow:hidden;display:grid;grid-template-columns:1.4fr 1fr;gap:24px 40px;align-items:center;background:#27235f;color:#fff;border-radius:28px;padding:clamp(24px,4vw,44px);box-shadow:0 6px 18px rgba(39,35,95,.18)}
.sv-glow{position:absolute;right:-60px;top:-80px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(244,114,39,.55),transparent 70%);pointer-events:none}
.sv-copy,.sv-act{position:relative}
.sv-h{margin:0 0 8px;font:700 clamp(1.5rem,2.6vw,2.1rem)/1.15 Urbanist,Mulish,sans-serif;letter-spacing:-.01em}
.sv-p{margin:0;color:#c9d0ea;max-width:34em}
.sv-act{display:grid;gap:12px;justify-items:start}
.sv-ln{display:inline-flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-weight:600}.sv-ln:hover{color:#f47227}
/* how we work */
.hw-sec{padding:clamp(48px,7vw,84px) 0;background:#fff}
.hw-list{list-style:none;margin:44px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;counter-reset:s;position:relative}
.hw-list::before{content:"";position:absolute;left:12%;right:12%;top:49px;border-top:2px dashed rgba(244,114,39,.55)}
.hw-step{position:relative;background:#f3f3f1;border-radius:22px;padding:90px 20px 26px;text-align:center}
.hw-num{position:absolute;left:50%;top:-14px;transform:translateX(-50%);width:30px;height:30px;border-radius:50%;background:#f47227;color:#fff;display:grid;place-items:center;font:800 .85rem Urbanist,sans-serif;box-shadow:0 0 0 6px #fff,0 0 12px 2px rgba(244,114,39,.45)}
.hw-ic{position:absolute;left:50%;top:22px;transform:translateX(-50%);width:54px;height:54px;border-radius:50%;background:#27235f;color:#fff;display:grid;place-items:center}.hw-ic .ic{width:24px;height:24px}
.hw-step h3{margin:0 0 6px;font:700 1.1rem Urbanist,sans-serif;color:#27235f}.hw-step p{margin:0;font-size:.9rem;color:#5b6074}
/* brands */
.bd-sec{padding:clamp(40px,6vw,70px) 0;background:#fff}
.bd-list{list-style:none;margin:30px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.bd-tile{display:grid;place-items:center;min-height:96px;background:#f3f3f1;border-radius:20px;transition:transform .25s,background .25s}
.bd-tile span{font:800 clamp(1.1rem,2vw,1.55rem) Urbanist,sans-serif;letter-spacing:.04em;color:#27235f;text-transform:uppercase}
.bd-tile:hover{transform:translateY(-3px);background:#ebeaf6}
/* spotlights */
.pj-sec{padding:clamp(48px,7vw,84px) 0 clamp(24px,4vw,40px);background:#fff}
.pj-grid{display:grid;grid-template-columns:1.3fr 1fr;grid-template-rows:1fr 1fr;gap:16px;margin-top:34px;min-height:440px}
.pj-card{position:relative;overflow:hidden;border-radius:24px;background:#27235f;min-height:200px;box-shadow:0 1px 6px rgba(39,35,95,.1)}
.pj-card.pj0{grid-row:1/3}
.pj-card .photo{position:absolute;inset:0;width:100%;height:100%;border-radius:0;aspect-ratio:auto}
.pj-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(39,35,95,0) 35%,rgba(39,35,95,.92))}
.pj-body{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:22px;color:#fff}
.pj-body h3{margin:8px 0 4px;font:700 1.25rem Urbanist,sans-serif}.pj-body p{margin:0;font-size:.9rem;color:#e3e7f5}
.pj-tag{display:inline-flex;align-items:center;gap:6px;background:#fff;color:#27235f;border-radius:999px;padding:5px 12px;font:700 .75rem Urbanist,sans-serif}.pj-tag .ic{color:#f47227}
/* testimonials */
.ts-sec{padding:clamp(36px,5vw,64px) 0 clamp(48px,7vw,84px);background:#f3f3f1}
.ts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px}
.ts-card{position:relative;margin:0;background:#fff;border-radius:24px;padding:56px 24px 22px;box-shadow:0 1px 6px rgba(39,35,95,.08)}
.ts-q{position:absolute;left:22px;top:-18px;width:46px;height:46px;border-radius:50%;background:#f47227;color:#fff;display:grid;place-items:center;box-shadow:0 0 12px 2px rgba(244,114,39,.4)}.ts-q .ic{width:20px;height:20px}
.ts-card blockquote{margin:0 0 18px;color:#3d4260;line-height:1.7}
.ts-card figcaption{display:flex;align-items:center;gap:12px;position:relative}
.ts-av{width:42px;height:42px;border-radius:50%;background:#27235f;color:#fff;display:grid;place-items:center;font:800 1rem Urbanist,sans-serif;flex:none}
.ts-card figcaption strong{display:block;font:700 .95rem Urbanist,sans-serif;color:#27235f}.ts-card figcaption em{font-style:normal;font-size:.82rem;color:#5b6074}
.ts-demo{margin-left:auto;background:#ebeaf6;color:#27235f;border-radius:999px;padding:3px 10px;font:700 .68rem Urbanist,sans-serif;letter-spacing:.08em;text-transform:uppercase}
/* domain */
.dn-sec{padding:clamp(40px,6vw,70px) 0;background:#fff}
.dn-card{position:relative;overflow:hidden;display:grid;grid-template-columns:220px 1fr;gap:28px 44px;align-items:center;background:#27235f;color:#fff;border-radius:28px;padding:clamp(24px,4vw,46px);box-shadow:0 6px 18px rgba(39,35,95,.18)}
.dn-glow{position:absolute;left:-70px;bottom:-90px;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(244,114,39,.45),transparent 70%);pointer-events:none}
.dn-seal{position:relative;display:grid;justify-items:center;gap:4px;text-align:center;background:rgba(255,255,255,.08);border-radius:50%;width:190px;height:190px;align-content:center;margin-inline:auto;box-shadow:0 0 0 8px rgba(255,255,255,.05)}
.dn-seal .ic{width:44px;height:44px;color:#f47227}.dn-seal strong{font:800 1.05rem Urbanist,sans-serif}.dn-seal span{font-size:.8rem;color:#c9d0ea}
.dn-copy{position:relative}
.dn-h{margin:0 0 8px;font:700 clamp(1.5rem,2.6vw,2.1rem)/1.15 Urbanist,sans-serif}
.dn-p{margin:0 0 18px;color:#c9d0ea;max-width:40em}
.dn-form.dsearch{display:flex;align-items:center;position:relative;max-width:520px;height:54px;background:#fff;border-radius:999px;padding:0 6px 0 18px;margin:0;flex:none}
.dn-form input{flex:1;min-width:0;border:0;background:transparent;height:50px;padding:0 10px;color:#27235f;font:400 1rem Mulish,sans-serif}
.dn-form .ds-go{width:42px;height:42px;border-radius:50%;background:#f47227;color:#fff;border:0;display:grid;place-items:center;cursor:pointer}
.dn-form .ds-ic{color:#5b6074}
.dn-form .ds-panel{top:calc(100% + 10px);color:#27235f}
.dn-ext{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 0}.dn-ext span{background:rgba(255,255,255,.1);border-radius:999px;padding:4px 14px;font:700 .8rem Urbanist,sans-serif}
/* faq */
.fq-sec{padding:clamp(40px,6vw,70px) 0;background:#f3f3f1}
.fq-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:30px clamp(24px,5vw,70px);align-items:start}
.fq-t p{color:#5b6074;margin:12px 0 20px}
.fq-list{display:grid;gap:10px}
.fq-list details{background:#fff;border-radius:18px;padding:0 20px;box-shadow:0 1px 6px rgba(39,35,95,.06)}
.fq-list summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:18px 0;font:700 1rem Urbanist,sans-serif;color:#27235f}
.fq-list summary::-webkit-details-marker{display:none}
.fq-list summary::after{content:"+";flex:none;width:28px;height:28px;border-radius:50%;background:#f3f3f1;color:#f47227;display:grid;place-items:center;font-size:1.2rem;line-height:1;transition:transform .25s,background .25s}
.fq-list details[open] summary::after{content:"\2212";background:#f47227;color:#fff}
.fq-list p{margin:0 0 18px;color:#5b6074;line-height:1.7}
/* final cta */
/* responsive */
@media (max-width:1000px){
  .hw-list{grid-template-columns:1fr 1fr;gap:34px 16px}.hw-list::before{display:none}
  .bd-list{grid-template-columns:1fr 1fr}
  .ts-grid{grid-template-columns:1fr;gap:34px}
  .fq-grid{grid-template-columns:1fr}
}
@media (max-width:760px){
  .sv-card{grid-template-columns:1fr;text-align:center}.sv-act{justify-items:center}
  .pj-grid{grid-template-columns:1fr;grid-template-rows:none;min-height:0}.pj-card,.pj-card.pj0{grid-row:auto;min-height:230px}
  .dn-card{grid-template-columns:1fr;text-align:center}.dn-seal{width:150px;height:150px}.dn-form.dsearch{margin-inline:auto}.dn-ext{justify-content:center}
  .fq-t{text-align:center}
}
@media (max-width:520px){.hw-list{grid-template-columns:1fr}.hw-step{padding-top:90px}.ts-demo{position:absolute;right:0;top:-6px}}
.sv-sec>.wrap,.hw-sec>.wrap,.bd-sec>.wrap,.pj-sec>.wrap,.ts-sec>.wrap,.dn-sec>.wrap,.fq-sec>.wrap,.fc-sec>.wrap{padding-inline:clamp(16px,2.4vw,36px)}
@media (max-width:760px){.ts-card:nth-child(n+2){display:none}}

/* v25 testimonials: folder-tab cards with avatar, brand colours only */
.ts-rate{margin:12px 0 0;text-align:center;color:#5b6074;font-size:.95rem}.ts-rate strong{color:#27235f}.ts-rate a{color:#27235f;font-weight:700}
.ts-stars,.tf-stars{color:#f47227;letter-spacing:2px}
.ts-grid{grid-template-columns:repeat(4,1fr);gap:24px;margin-top:56px;align-items:stretch}
.tf{--c:#f47227;--g:rgba(244,114,39,.38);position:relative;margin:0;display:flex;flex-direction:column;align-items:center;text-align:center;background:#fff;border-radius:6px 22px 22px 22px;padding:54px 18px 34px;box-shadow:0 18px 30px -14px var(--g)}
.tf1{--c:#27235f;--g:rgba(39,35,95,.35)}
.tf-tab{position:absolute;left:-2px;right:-2px;top:-12px;height:44px;border-radius:22px 22px 0 0;background:var(--c);z-index:0;clip-path:path('M0 44 L0 22 Q0 0 22 0 L90 0 Q108 0 120 12 Q132 24 150 24 L2000 24 L2000 44 Z')}
.tf::before{content:"";position:absolute;inset:0;border-radius:inherit;background:#fff;z-index:0}
.tf>*:not(.tf-tab){position:relative;z-index:1}
.tf-av{position:absolute!important;left:18px;top:-24px;width:50px;height:50px;border-radius:50%;background:var(--c);color:#fff;display:grid;place-items:center;font:800 1.15rem Urbanist,sans-serif;box-shadow:0 0 0 5px #fff,0 6px 14px var(--g);z-index:2!important}
.tf-stars{font-size:.95rem;margin:2px 0 8px}
.tf figcaption{margin-bottom:10px}.tf figcaption strong{display:block;font:800 1rem Urbanist,sans-serif;letter-spacing:.04em;text-transform:uppercase;color:#27235f}.tf figcaption em{font-style:normal;font-size:.78rem;color:#5b6074}
.tf blockquote{margin:0;font-size:.86rem;line-height:1.65;color:#5b6074}
.tf-base{position:absolute!important;left:12%;right:12%;bottom:-14px;height:16px;border-radius:0 0 8px 8px;background:var(--c);z-index:0!important}
@media (max-width:1100px){.ts-grid{grid-template-columns:1fr 1fr;gap:44px 20px}}
@media (max-width:640px){.ts-grid{grid-template-columns:1fr;gap:44px}}
/* TCRA seal */
.dn-seal{background:#fff;box-shadow:0 0 0 8px rgba(255,255,255,.12);align-content:center;gap:6px;padding:10px}
.dn-seal img{width:150px;height:auto;display:block}
.dn-seal strong{color:#27235f;font:800 .78rem Urbanist,sans-serif;line-height:1.2;max-width:12em}
.dn-seal span{display:none}

/* v26 survey banner: orbit of service icons */
.sv2{position:relative;overflow:hidden;display:grid;grid-template-columns:1.25fr 1fr;align-items:center;gap:20px 30px;background:#27235f;color:#fff;border-radius:30px;padding:clamp(26px,4vw,48px);box-shadow:0 6px 18px rgba(39,35,95,.18)}
.sv2-slash{position:absolute;right:-8%;top:-40%;width:46%;height:200%;background:linear-gradient(90deg,rgba(244,114,39,.0),rgba(244,114,39,.22));transform:rotate(18deg);pointer-events:none}
.sv2-copy{position:relative;z-index:1}
.sv2-h{margin:0 0 10px;font:700 clamp(1.6rem,3vw,2.5rem)/1.12 Urbanist,sans-serif;letter-spacing:-.015em}.sv2-h span{color:#f47227}
.sv2-p{margin:0 0 22px;color:#c9d0ea;max-width:32em}
.sv2-act{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px}
.sv2-ln{display:inline-flex;align-items:center;gap:8px;color:#fff;text-decoration:none;font-weight:700}.sv2-ln:hover{color:#f47227}
.sv2-orbit{position:relative;z-index:1;width:min(300px,100%);aspect-ratio:1;margin-inline:auto}
.sv2-ring{position:absolute;border-radius:50%;border:1.5px dashed rgba(255,255,255,.28)}
.sv2-ring.r1{inset:0}.sv2-ring.r2{inset:19%;border-style:solid;border-color:rgba(244,114,39,.45)}
.sv2-core{position:absolute;left:50%;top:50%;width:34%;height:34%;transform:translate(-50%,-50%);border-radius:50%;background:#f47227;color:#fff;display:grid;place-items:center;box-shadow:0 0 0 10px rgba(244,114,39,.18),0 0 40px 6px rgba(244,114,39,.45)}.sv2-core .ic{width:46%;height:46%}
.sv2-dot{position:absolute;width:19%;height:19%;border-radius:50%;background:#fff;color:#27235f;display:grid;place-items:center;box-shadow:0 6px 14px rgba(0,0,0,.25)}.sv2-dot .ic{width:52%;height:52%}
.sv2-dot.d1{left:50%;top:0;transform:translate(-50%,-50%)}.sv2-dot.d2{right:0;top:50%;transform:translate(50%,-50%)}.sv2-dot.d3{left:50%;bottom:0;transform:translate(-50%,50%)}.sv2-dot.d4{left:0;top:50%;transform:translate(-50%,-50%)}
@media (max-width:760px){.sv2{grid-template-columns:1fr;text-align:center}.sv2-p{margin-inline:auto}.sv2-act{justify-content:center}.sv2-orbit{width:210px;margin-block:14px 6px}.sv2-ring.r1{inset:6%}.sv2-dot.d1{top:6%}.sv2-dot.d2{right:6%}.sv2-dot.d3{bottom:6%}.sv2-dot.d4{left:6%}}
@media (prefers-reduced-motion:no-preference){.sv2-ring.r1{animation:sv2spin 60s linear infinite}@keyframes sv2spin{to{transform:rotate(360deg)}}}

/* TCRA seal: logo only, filling the circle */
.dn-seal{padding:0;overflow:hidden;display:grid;place-items:center;background:#fff}
.dn-seal img{width:100%;height:100%;object-fit:contain;padding:14%;box-sizing:border-box;border-radius:50%}

/* v27 real images from the live Hasnet site */
.photo.real{background:#f3f3f1;overflow:hidden}
.photo.real img{display:block;width:100%;height:100%;object-fit:contain}
.photo.real.fill img,.photo.real.wide-photo img,.photo.real.mid img{object-fit:cover}
.photo.real.fill{background:#27235f}.photo.real.fill img{opacity:.92}
.photo.real.ratio img{padding:8px;box-sizing:border-box}

/* project cards: brand artwork instead of photos until real project photos exist */
.rw-card,.pj-card{background:linear-gradient(150deg,#27235f 0%,#1f1c4d 100%)}
.art-ic{position:absolute;right:-6%;top:-4%;width:62%;aspect-ratio:1;display:grid;place-items:center;color:rgba(255,255,255,.09);pointer-events:none}
.art-ic .ic{width:100%;height:100%}
.pj-card::before,.rw-card::before{content:"";position:absolute;left:-40px;bottom:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(244,114,39,.4),transparent 70%)}

.hv-video{transform-origin:60% 40%}
.hv{overflow:hidden!important}
@media (prefers-reduced-motion:no-preference){.hv-video{animation:hvzoom 28s ease-in-out infinite alternate}@keyframes hvzoom{from{transform:scale(1)}to{transform:scale(1.08)}}}
.hv-shade{background:linear-gradient(90deg,rgba(20,18,60,.82) 0%,rgba(20,18,60,.55) 50%,rgba(20,18,60,.25) 100%),linear-gradient(180deg,rgba(20,18,60,.35),rgba(20,18,60,.6))}

/* v28 hanging ribbon banner, step ribbons, paged reviews */
.ic.flip{transform:scaleX(-1)}
.sv-sec{padding:44px 0 6px}
.rb{position:relative;max-width:1080px;margin:0 auto;filter:drop-shadow(0 12px 12px rgba(39,35,95,.18))}
.rb-fl{position:absolute;top:-1px;width:34px;height:22px;background:#a63d0a;z-index:0}
.rb-l{left:calc(3.2% - 22px);border-radius:16px 0 0 0;clip-path:polygon(0 0,100% 0,100% 100%,40% 100%)}
.rb-r{right:calc(3.2% - 22px);border-radius:0 16px 0 0;clip-path:polygon(0 0,100% 0,60% 100%,0 100%)}
.rb-body{position:relative;z-index:1;display:flex;align-items:center;gap:22px;background:linear-gradient(180deg,#f58238,#f47227 45%,#e8631a);color:#fff;padding:26px 9% 30px;clip-path:polygon(3.2% 0,96.8% 0,100% 100%,0 100%);border-radius:0 0 18px 18px}
.rb-ic{flex:none;width:62px;height:62px;border-radius:50%;background:rgba(255,255,255,.18);display:grid;place-items:center}.rb-ic .ic{width:30px;height:30px}
.rb-tx{flex:1;min-width:0}
.rb-h{margin:0 0 4px;font:800 clamp(1.3rem,2.6vw,2rem)/1.12 Urbanist,sans-serif;letter-spacing:-.01em}
.rb-p{margin:0;font-size:1rem;color:#fff;opacity:.92}
.rb-btn{flex:none;display:inline-flex;align-items:center;gap:8px;background:#27235f;color:#fff;text-decoration:none;border-radius:999px;padding:13px 22px;font:700 .92rem Urbanist,sans-serif;white-space:nowrap;box-shadow:0 3px 8px rgba(39,35,95,.25)}.rb-btn:hover{background:#fff;color:#27235f}
@media (max-width:820px){.rb-body{flex-direction:column;text-align:center;gap:12px;padding:24px 8% 28px;clip-path:polygon(4% 0,96% 0,100% 100%,0 100%)}.rb-l{left:calc(4% - 22px)}.rb-r{right:calc(4% - 22px)}}
/* steps */
.st-list{list-style:none;margin:56px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:34px 20px;counter-reset:s}
.st{--c:#f47227;--d:#a63d0a;position:relative;padding-top:62px}
.st1{--c:#27235f;--d:#14123a}
.st-ic{position:absolute;left:46%;top:0;width:44px;height:44px;color:var(--c);display:grid;place-items:center}.st-ic .ic{width:100%;height:100%;stroke-width:1.2}
.st-rb{position:relative;display:flex;align-items:center;gap:12px;height:84px;padding:0 20px 0 22px;border-radius:2px 56px 56px 2px;background:linear-gradient(180deg,rgba(255,255,255,.14),rgba(255,255,255,0) 60%),var(--c);color:#fff;filter:drop-shadow(0 6px 8px rgba(39,35,95,.18))}
.st-rb::before{content:"";position:absolute;left:0;bottom:-16px;width:26px;height:16px;background:var(--d);clip-path:polygon(0 0,100% 0,100% 100%)}
.st-rb i{font:italic 500 1.05rem Urbanist,sans-serif;letter-spacing:.04em}
.st-rb b{font:italic 800 3.1rem/1 Urbanist,sans-serif}
.st h3{margin:30px 0 6px 22px;font:800 1rem Urbanist,sans-serif;letter-spacing:.05em;text-transform:uppercase;color:var(--c)}
.st p{margin:0 0 0 22px;padding-left:14px;border-left:2px solid var(--c);font-size:.88rem;line-height:1.6;color:#5b6074}
@media (max-width:1000px){.st-list{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.st-list{grid-template-columns:1fr;gap:42px}.st-ic{left:auto;right:24px}}
/* reviews carousel */
.ts-car{margin-top:46px}
.ts-pages{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:34px 4px 30px;margin:-24px -4px -10px;outline:none}
.ts-pages::-webkit-scrollbar{display:none}
.ts-page{flex:0 0 100%;scroll-snap-align:start;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:60px 24px;align-content:start;box-sizing:border-box;padding:0 4px}
.ts-ctl{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:22px}
.ts-nav{width:44px;height:44px;border-radius:50%;border:0;background:#fff;color:#27235f;display:grid;place-items:center;cursor:pointer;box-shadow:0 1px 6px rgba(39,35,95,.12);transition:background .2s,color .2s}.ts-nav:hover{background:#f47227;color:#fff}
.ts-dots{display:flex;gap:8px}.ts-dots i{width:9px;height:9px;border-radius:50%;background:#d6d8e4;transition:width .25s,background .25s}.ts-dots i.on{width:26px;border-radius:999px;background:#f47227}
@media (max-width:1000px){.ts-page{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.ts-page{display:contents}.ts-pages{gap:14px;padding-top:36px}.ts-pages .tf{flex:0 0 84%;scroll-snap-align:center}.ts-dots{display:none}}

/* brands: endless logo strip, all logos in the same box */
.bd-mq{overflow:hidden;margin-top:30px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.bd-track{display:flex;gap:16px;list-style:none;margin:0;padding:6px 0;width:max-content;animation:bdmq 34s linear infinite}
.bd-mq:hover .bd-track{animation-play-state:paused}
.bd-tile{flex:none;width:190px;height:86px;border-radius:18px;background:#f3f3f1;display:grid;place-items:center;padding:0 22px;box-sizing:border-box;transition:background .25s,transform .25s}
.bd-tile img{display:block;max-width:100%;max-height:44px;width:auto;height:auto;object-fit:contain}
.bd-tile:hover{background:#ebeaf6;transform:translateY(-2px)}
@keyframes bdmq{to{transform:translateX(calc(-50% - 8px))}}
@media (prefers-reduced-motion:reduce){.bd-track{animation:none}.bd-mq{overflow-x:auto}}
@media (max-width:600px){.bd-tile{width:150px;height:72px}.bd-tile img{max-height:36px}}
.tf blockquote.nt{font-style:italic;color:#5b6074}

/* v29 steps with icon in ribbon, mockup-style banner, bare brand logos, 6-per-row reviews, balanced FAQ */
.st{padding-top:0}
.st-ic{position:static;margin-left:auto;flex:none;width:42px;height:42px;color:#fff;display:grid;place-items:center;opacity:.95}.st-ic .ic{width:100%;height:100%;stroke-width:1.4}
.st-rb{padding:0 22px 0 22px}
.st h3{margin-top:34px}
@media (max-width:560px){.st-ic{right:auto}}
/* banner */
.rb{max-width:1120px;filter:drop-shadow(0 14px 12px rgba(39,35,95,.2))}
.rb-top{position:absolute;left:-6%;right:-6%;top:0;height:26px;background:linear-gradient(180deg,rgba(39,35,95,.16),rgba(39,35,95,0));z-index:0;pointer-events:none}
.rb-fl{top:0;width:44px;height:34px;background:linear-gradient(180deg,#c2500f,#8f3407)}
.rb-l{left:calc(5.4% - 40px);border-radius:22px 0 0 0;clip-path:polygon(0 0,100% 0,100% 100%,0 70%)}
.rb-r{right:calc(5.4% - 40px);border-radius:0 22px 0 0;clip-path:polygon(0 0,100% 0,100% 70%,0 100%)}
.rb-body{padding:34px 12% 38px;gap:26px;clip-path:polygon(5.4% 0,94.6% 0,91% 100%,9% 100%);border-radius:0 0 22px 22px;background:linear-gradient(180deg,#f7873f,#f47227 40%,#e5601a)}
.rb-ic{width:84px;height:84px;background:transparent;border-radius:0}.rb-ic .ic{width:100%;height:100%;stroke-width:1.5}
.rb-h{font-size:clamp(1.4rem,2.8vw,2.1rem)}
.rb-btn{border:0;cursor:pointer}
@media (max-width:900px){.rb-body{padding:30px 14% 36px;clip-path:polygon(5.4% 0,94.6% 0,92% 100%,8% 100%)}.rb-ic{width:56px;height:56px}}
/* brands: logos alone, no tile */
.bd-tile{background:transparent;border-radius:0;width:190px;height:70px;padding:0 26px}
.bd-tile:hover{background:transparent;transform:scale(1.06)}
.bd-tile img{max-height:46px}
/* reviews: six cards per row on wide screens, then scroll */
.ts-pages{gap:14px;padding:34px 4px 30px}
.ts-pages .tf{flex:0 0 calc((100% - 70px) / 6);scroll-snap-align:start;min-width:0;padding:50px 12px 32px;align-self:stretch}
.ts-pages .tf figcaption strong{font-size:.82rem}
.ts-pages .tf blockquote{font-size:.78rem;line-height:1.55}
.tf-av{left:12px;width:44px;height:44px;font-size:1rem}
@media (max-width:1279px){.ts-pages .tf{flex-basis:calc((100% - 42px) / 4)}}
@media (max-width:900px){.ts-pages .tf{flex-basis:calc((100% - 28px) / 3)}}
@media (max-width:640px){.ts-pages .tf{flex:0 0 78%;scroll-snap-align:center}.ts-dots{display:none}}
/* faq: questions under the button as well */
.fq-grid{align-items:start}
.fq-col{display:grid;gap:26px;align-content:start}
.fq-grid{grid-template-columns:1fr 1fr}
.fq-t p{margin:12px 0 20px}
.fq-r{padding-top:6px}
@media (max-width:900px){.fq-grid{grid-template-columns:1fr}.fq-r{padding-top:0}.fq-col{gap:12px}.fq-t{text-align:center}}
/* survey modal fields */
.dm-f select,.dm-f textarea{width:100%;padding:12px 14px;border:0;border-radius:10px;background:#f1f1ef;color:#27235f;font:400 .95rem Mulish,sans-serif;box-sizing:border-box}
.dm-f select:focus,.dm-f textarea:focus{outline:none;background:#ebebf5}
.dm-f textarea{resize:vertical;min-height:84px}

/* v30 glass testimonial cards, domain dropdown, footer social */
.ts-pages .tg{flex:0 0 calc((100% - 70px) / 6);scroll-snap-align:start;min-width:0}
@media (max-width:1279px){.ts-pages .tg{flex-basis:calc((100% - 42px) / 4)}}
@media (max-width:900px){.ts-pages .tg{flex-basis:calc((100% - 28px) / 3)}}
@media (max-width:640px){.ts-pages .tg{flex:0 0 78%;scroll-snap-align:center}}
.ts-pages{padding-top:30px;align-items:stretch}
.tg{position:relative;margin:0;display:flex;flex-direction:column;gap:14px;padding:40px 16px 62px;color:#fff;border-radius:26px;min-height:300px;isolation:isolate}
.tg-bg{position:absolute;inset:0;z-index:-1;border-radius:26px;background:linear-gradient(165deg,#27235f 0%,#3a2f6a 45%,#b0562c 85%,#f47227 120%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.16);
  -webkit-mask-image:radial-gradient(circle 24px at 50% 0,transparent 23px,#000 24px),radial-gradient(circle 34px at 100% 100%,transparent 33px,#000 34px);-webkit-mask-composite:source-in;
  mask-image:radial-gradient(circle 24px at 50% 0,transparent 23px,#000 24px),radial-gradient(circle 34px at 100% 100%,transparent 33px,#000 34px);mask-composite:intersect}
.tg-star{position:absolute;left:50%;top:-18px;transform:translateX(-50%);width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);color:#f47227;display:grid;place-items:center;font-size:1.05rem;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.tg-head{display:flex;align-items:center;gap:10px}
.tg-av{flex:none;width:44px;height:44px;border-radius:50%;background:#f47227;color:#fff;display:grid;place-items:center;font:800 1.05rem Urbanist,sans-serif;box-shadow:0 0 0 3px rgba(255,255,255,.22)}
.tg-head strong{display:block;font:700 .92rem/1.2 Urbanist,sans-serif}.tg-head em{display:block;font-style:normal;font-size:.72rem;color:#d5dbf2}
.tg blockquote{margin:0;flex:1;font-size:.8rem;line-height:1.6;color:#f1f2fb}.tg blockquote.nt{font-style:italic;color:#d5dbf2}
.tg-pill{align-self:flex-start;display:inline-block;padding:7px 14px;border-radius:999px;background:rgba(255,255,255,.14);box-shadow:inset 0 0 0 1px rgba(255,255,255,.25);color:#f47227;letter-spacing:3px;font-size:.85rem;line-height:1}
.tg-orb{position:absolute;right:-6px;bottom:-6px;width:46px;height:46px;pointer-events:none}
.tg-orb i{position:absolute;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffc08f,#f47227 55%,#a63d0a)}
.tg-orb i:first-child{width:30px;height:30px;right:6px;bottom:8px}.tg-orb i:last-child{width:18px;height:18px;right:26px;bottom:28px;opacity:.9}
/* domain card: dropdown may leave the card, glow stays clipped */
.dn-card{overflow:visible}
.dn-bg{position:absolute;inset:0;border-radius:inherit;overflow:hidden;pointer-events:none}
.dn-bg .dn-glow{position:absolute}
.dn-form .ds-panel{z-index:60;background:rgba(255,255,255,.45);-webkit-backdrop-filter:blur(16px) saturate(1.3);backdrop-filter:blur(16px) saturate(1.3);border:1px solid rgba(255,255,255,.5);box-shadow:0 8px 24px rgba(20,18,58,.28);color:#27235f;left:0;right:0;width:auto;min-width:260px}
.dn-form .ds-panel .ds-row,.dn-form .ds-panel li{color:#27235f}
.dn-form .ds-panel *{color:inherit}
.dn-form .ds-panel [class*=ext],.dn-form .ds-panel strong{font-weight:700}
.dn-form .ds-panel .ds-link{color:#27235f}
.dn-sec{position:relative;z-index:5}
/* footer social under Platforms */
.foot .ft-c-2 .ft-social{margin-top:28px}
.foot .ft-c-2 .ft-social-nav a{width:36px;height:36px}

/* v31 banner closer to the hanging-ribbon mockup */
.rb{max-width:1060px;margin-top:6px;filter:drop-shadow(0 18px 14px rgba(39,35,95,.22))}
.rb-fl{display:none}
.rb-top{left:-9%;right:-9%;height:34px;background:linear-gradient(180deg,rgba(39,35,95,.2),rgba(39,35,95,0))}
.rb-curl{position:absolute;top:-10px;width:58px;height:44px;z-index:0;background:linear-gradient(180deg,#d2570f,#9a3a08)}
.rb-cl{left:calc(5.2% - 46px);border-radius:30px 4px 0 0;transform:skewY(-10deg);transform-origin:right bottom}
.rb-cr{right:calc(5.2% - 46px);border-radius:4px 30px 0 0;transform:skewY(10deg);transform-origin:left bottom}
.rb-curl::after{content:"";position:absolute;left:14%;right:14%;top:14%;height:30%;border-radius:20px;background:rgba(255,255,255,.18)}
.rb-body{min-height:150px;padding:30px 11% 40px;gap:30px;clip-path:polygon(5.2% 0,94.8% 0,90.5% 100%,9.5% 100%);background:linear-gradient(180deg,#f78a42 0%,#f47227 38%,#e2601a 100%)}
.rb-ic{width:92px;height:92px}
.rb-h{font-size:clamp(1.5rem,3vw,2.3rem);line-height:1.1}
.rb-p{font-size:1.02rem;max-width:30em}
@media (max-width:900px){.rb-body{padding:30px 12% 40px;clip-path:polygon(5.2% 0,94.8% 0,92% 100%,8% 100%);min-height:0}.rb-ic{width:60px;height:60px}.rb-curl{width:44px;height:36px}.rb-cl{left:calc(5.2% - 34px)}.rb-cr{right:calc(5.2% - 34px)}}
/* v31 testimonials: dashed outline cards with avatar badge, five per row */
.ts-pages{gap:18px;padding:46px 6px 26px}
.ts-pages .th{flex:0 0 calc((100% - 72px) / 5);scroll-snap-align:start;min-width:0}
@media (max-width:1100px){.ts-pages .th{flex-basis:calc((100% - 36px) / 3)}}
@media (max-width:700px){.ts-pages .th{flex:0 0 78%;scroll-snap-align:center}}
.th{--c:#f47227;--t:rgba(244,114,39,.16);position:relative;margin:0;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:52px 18px 24px;border:2px dashed var(--c);border-radius:20px;background:#fff}
.th1{--c:#27235f;--t:rgba(39,35,95,.14)}
.th::before,.th::after{content:"";position:absolute;top:34%;height:30%;width:7px;border-radius:4px;background:var(--c)}
.th::before{left:-5px}.th::after{right:-5px}
.th-av{position:absolute;left:50%;top:-34px;transform:translateX(-50%);width:66px;height:66px;border-radius:50%;background:var(--c);color:#fff;display:grid;place-items:center;font:800 1.5rem Urbanist,sans-serif;box-shadow:0 0 0 6px #fff,0 8px 16px var(--t);z-index:1}
.th-av::after{content:"";position:absolute;left:50%;bottom:-13px;width:16px;height:16px;transform:translateX(-50%) rotate(45deg);background:var(--c);border-radius:0 0 4px 0;z-index:-1;box-shadow:3px 3px 0 3px #fff}
.th-stars{color:var(--c);letter-spacing:3px;font-size:.82rem;margin-top:8px}
.th-name{margin:0;padding:6px 14px;border:2px solid var(--c);border-radius:10px;font:800 .78rem Urbanist,sans-serif;letter-spacing:.07em;text-transform:uppercase;color:var(--c);box-shadow:0 0 0 3px var(--t)}
.th blockquote{margin:2px 0 0;flex:1;font-size:.78rem;line-height:1.6;color:#5b6074}.th blockquote.nt{font-style:italic}
.th-src{font-style:normal;font-size:.7rem;color:#8a8fa5}
/* v31 every popup, dropdown and modal: 45% glass */
.modal-bg{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.modal-box{background:rgba(255,255,255,.45);-webkit-backdrop-filter:blur(22px) saturate(1.4);backdrop-filter:blur(22px) saturate(1.4);border:1px solid rgba(255,255,255,.55)}
.modal-box .dm-check,.modal-box .dm-ns{background:rgba(255,255,255,.5)}
.modal-box .dm-f input,.modal-box .dm-f select,.modal-box .dm-f textarea{background:rgba(255,255,255,.7)}
.modal-box .modal-x{background:rgba(255,255,255,.6)}
.ds-panel,.sbar-sugg{background:rgba(255,255,255,.45);-webkit-backdrop-filter:blur(18px) saturate(1.4);backdrop-filter:blur(18px) saturate(1.4);border:1px solid rgba(255,255,255,.55)}
.sbar-sugg li.on a,.sbar-sugg a:hover{background:rgba(255,255,255,.55)}
@media (min-width:901px){.mega{background:rgba(255,255,255,.45);-webkit-backdrop-filter:blur(20px) saturate(1.4);backdrop-filter:blur(20px) saturate(1.4);border:1px solid rgba(255,255,255,.55)}}
.ts-car{overflow-x:clip}

/* v32 bowl-shaped hanging ribbon (matches the attached banner), offers strip, review marquee, bare tab images */
.rb{max-width:1080px;filter:drop-shadow(0 16px 12px rgba(39,35,95,.22))}
.rb-fl,.rb-curl{display:none}
.rb-top{left:-9%;right:-9%;height:30px;background:linear-gradient(180deg,rgba(39,35,95,.2),rgba(39,35,95,0))}
.rb-ear{position:absolute;top:0;width:5.6%;height:46px;z-index:0;background:linear-gradient(180deg,#b3410f,#8c3207)}
.rb-el{left:-3.4%;border-radius:100% 0 0 0 / 100% 0 0 0;clip-path:polygon(0 0,100% 0,100% 100%,55% 100%)}
.rb-er{right:-3.4%;border-radius:0 100% 0 0 / 0 100% 0 0;clip-path:polygon(0 0,100% 0,45% 100%,0 100%)}
.rb-body{position:relative;z-index:1;min-height:190px;padding:34px 15% 66px;gap:28px;clip-path:none;border-radius:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 190' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23f88f4a'/%3E%3Cstop offset='.45' stop-color='%23f47227'/%3E%3Cstop offset='1' stop-color='%23e2601a'/%3E%3C/linearGradient%3E%3ClinearGradient id='h' x1='0' y1='0' x2='1' y2='0'%3E%3Cstop offset='0' stop-color='%23fff' stop-opacity='0'/%3E%3Cstop offset='.5' stop-color='%23fff' stop-opacity='.14'/%3E%3Cstop offset='1' stop-color='%23fff' stop-opacity='0'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath fill='url(%23g)' d='M0 0H1000C985 20 975 60 940 105C905 150 860 190 790 190H210C140 190 95 150 60 105C25 60 15 20 0 0Z'/%3E%3Cpath fill='url(%23h)' d='M0 0H1000C985 20 975 60 940 105C905 150 860 190 790 190H210C140 190 95 150 60 105C25 60 15 20 0 0Z'/%3E%3C/svg%3E") center/100% 100% no-repeat;align-items:flex-start}
.rb-ic{margin-top:6px;width:78px;height:78px}
.rb-btn{align-self:flex-start;margin-top:12px}
@media (max-width:900px){.rb-body{padding:30px 10% 78px;flex-direction:column;align-items:center;text-align:center;min-height:0}.rb-btn{align-self:center;margin-top:6px}.rb-ear{height:34px}}
/* offers strip above the blue header */
.offers{background:#fff;color:#27235f;overflow:hidden;position:relative;z-index:70}
.offers-track{display:flex;width:max-content;animation:offmq 46s linear infinite}
.offers:hover .offers-track{animation-play-state:paused}
.offers-set{display:flex;list-style:none;margin:0;padding:0}
.offers-set li{flex:none}
.offers-set a{display:inline-flex;align-items:center;gap:9px;padding:8px 34px;color:#27235f;text-decoration:none;font:700 .82rem Urbanist,Mulish,sans-serif;letter-spacing:.02em;white-space:nowrap}
.offers-set a:hover{color:#f47227}.offers-set .ic{color:#f47227;width:14px;height:14px}
@keyframes offmq{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.offers-track{animation:none}.offers{overflow-x:auto}}
/* reviews: endless loop of text reviews */
.ts-car{display:none}
.ts-mq{overflow:hidden;padding:52px 0 30px;margin-top:6px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.ts-mqtrack{display:flex;gap:22px;width:max-content;animation:tsmq 70s linear infinite}
.ts-mq:hover .ts-mqtrack{animation-play-state:paused}
.ts-mqtrack .th{flex:none;width:262px;align-self:stretch}
.th-av .ic{width:56%;height:56%}
@keyframes tsmq{to{transform:translateX(calc(-50% - 11px))}}
@media (prefers-reduced-motion:reduce){.ts-mqtrack{animation:none}.ts-mq{overflow-x:auto}}
/* tab images: no card behind the picture */
.w-card .photo,.w-card .photo.real{background:transparent;border-radius:0}
/* TCRA: the whole logo inside the circle, nothing clipped */
.dn-seal img{padding:10%;border-radius:0;object-fit:contain}
.rb-ear{width:7.4%;height:52px;background:linear-gradient(180deg,#a63d0a,#7c2c06)}
.rb-el{left:-5.6%}.rb-er{right:-5.6%}

/* v33 services menu stays solid white; full-width service hero; 3 plans per row; step cards for Software Development */
@media (min-width:901px){.mega{background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none;border:1px solid #e6e8f0}}
.ph-full{padding:0}
.ph-full>.wrap{max-width:none;width:100%;margin:0;border-radius:0;padding:clamp(28px,4vw,56px) max(18px,calc((100vw - 1440px)/2 + 36px))}
.page-head .head-photo.real{background:transparent}
.page-head .head-photo.real img{object-fit:contain}
/* plans */
.hp-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 22px;margin-top:50px}
.hp-card.sel{margin-block:0;padding-block:24px 20px}
@media (max-width:900px){.hp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.hp-grid{grid-template-columns:1fr}}
.hp-btn,.em-btn{border:0;cursor:pointer;font-family:Urbanist,Mulish,sans-serif}
/* step cards: white outer card, coloured panel with a swoosh, outlined number */
.sd-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-top:30px}
.sd{--c:#f47227;position:relative;background:#fff;border-radius:28px;padding:12px;box-shadow:0 2px 12px rgba(39,35,95,.1);display:flex;flex-direction:column}
.sd1{--c:#27235f}
.sd-in{position:relative;flex:1;background:var(--c);color:#fff;border-radius:20px 20px 20px 4px;padding:26px 18px 56px;text-align:center;overflow:hidden}
.sd-in::after{content:"";position:absolute;right:-18%;bottom:-34px;width:92%;height:70px;background:#fff;border-radius:60% 0 0 0 / 100% 0 0 0}
.sd-ic{display:grid;place-items:center;width:46px;height:46px;margin:0 auto 14px;color:#fff}.sd-ic .ic{width:100%;height:100%;stroke-width:1.3}
.sd-in h3{margin:0 0 8px;font:800 1rem Urbanist,sans-serif;letter-spacing:.06em;text-transform:uppercase}
.sd-in p{margin:0;font-size:.84rem;line-height:1.6;color:rgba(255,255,255,.92)}
.sd-no{display:flex;align-items:baseline;justify-content:center;gap:12px;padding:2px 8px 4px}
.sd-no b{font:800 2.6rem/1 Urbanist,sans-serif;color:transparent;-webkit-text-stroke:1.6px var(--c);letter-spacing:.02em}
.sd-no span{font:800 .95rem Urbanist,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--c)}
@media (max-width:1100px){.sd-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.sd-grid{grid-template-columns:1fr}}

/* v34 service page: plain and full-width sections, image cards, checklist, bare menu images */
.sec.sec-white>.wrap{background:#fff;border-radius:0;padding-inline:0}
.sec.sec-band{padding:0;background:var(--panel)}
.sec.sec-band>.wrap{background:transparent;border-radius:0;padding:clamp(34px,5vw,64px) clamp(18px,3vw,40px)}
.hp-sec{background:var(--panel);padding:0}
.hp-sec>.wrap{background:transparent;border-radius:0;padding:clamp(40px,5vw,70px) clamp(18px,3vw,40px)}
.svc-card.has-img{padding:0;overflow:hidden}
.svc-card.has-img .photo{display:block;height:170px;margin:0;border-radius:0;background:#fff}
.svc-card.has-img .photo img{object-fit:contain;padding:14px;box-sizing:border-box}
.svc-card.has-img h3{margin:14px 20px 6px}.svc-card.has-img p{margin:0 20px 20px}
.sec-band .svc-card{border-color:transparent}
.sd-in{padding-bottom:62px}
.cl{list-style:none;margin:18px 0 6px;padding:0;max-width:720px}
.cl li{position:relative;display:flex;align-items:center;gap:20px;background:#fff;border-radius:22px 44px 44px 22px;box-shadow:0 5px 16px rgba(39,35,95,.13);min-height:86px;margin-bottom:34px}
.cl li:last-child{margin-bottom:0}
.cl li:not(:last-child)::after{content:"";position:absolute;right:46px;bottom:-30px;height:26px;border-left:2px dashed #27235f}
.cl-ic{flex:none;align-self:stretch;width:112px;background:#27235f;color:#fff;display:grid;place-items:center;border-radius:22px 0 0 22px;clip-path:polygon(0 0,100% 0,84% 100%,0 100%)}
.cl-ic .ic{width:38px;height:38px;stroke-width:1.4}
.cl-tx{flex:1;font:700 1.2rem/1.25 Urbanist,sans-serif;color:#27235f;padding:10px 0}
.cl-no{flex:none;width:46px;height:46px;border-radius:50%;border:2px solid #27235f;display:grid;place-items:center;margin-right:22px;font:800 .95rem Urbanist,sans-serif;color:#27235f}
@media (max-width:560px){.cl-ic{width:78px}.cl-tx{font-size:1rem}.cl-no{width:38px;height:38px;margin-right:14px}}
.em-card .b4{background:#f47227}.em-card .b5{background:rgba(244,114,39,.6)}
.mega .photo,.mega .photo.real{background:transparent}.mega-img img{object-fit:contain}
.sec.sec-white>.wrap{padding-inline:clamp(18px,3vw,40px)}

/* v35 banner uses the supplied ribbon image */
.rb{max-width:1100px;filter:drop-shadow(0 16px 12px rgba(39,35,95,.2))}
.rb-top,.rb-ear,.rb-curl,.rb-fl{display:none}
.rb-body{position:relative;display:flex;align-items:center;gap:26px;clip-path:none;border-radius:0;background:url("/assets/img/p/ribbon.webp") center/100% 100% no-repeat;aspect-ratio:1960/586;min-height:0;padding:3% 15% 7%;color:#fff}
.rb-ic{width:76px;height:76px;margin:0}
.rb-btn{align-self:center;margin:0}
@media (max-width:900px){.rb-body{aspect-ratio:auto;min-height:0;flex-direction:column;text-align:center;padding:34px 12% 70px;gap:12px}.rb-ic{width:54px;height:54px}}
@media (max-width:900px){.rb-ic{display:none}.rb-body{padding:40px 12% 84px}}

/* v36 ribbon straddles the bottom edge of the hero; the search bar sits just above it */
:root{--rbw:min(1100px,calc(100vw - 40px));--rbo:calc(var(--rbw) * .084)}
.sv-sec{position:relative;z-index:7;padding:0 0 22px;margin-top:calc(var(--rbo) * -1)}
.sv-sec>.wrap{padding-inline:20px}
.hv-search{bottom:calc(var(--rbo) + 6px)}
.hv-in{padding-bottom:calc(var(--rbo) + 150px)}
@media (max-width:900px){
  :root{--rbo:72px}
  .hv-in{padding:56px 14px calc(var(--rbo) + 190px)}
  .hv-search{bottom:calc(var(--rbo) + 100px)}
}
@media (max-width:700px){.hv-in{padding-bottom:calc(var(--rbo) + 150px)}}

/* v37 ribbon: the supplied image on wide screens (flat 6.5:1 ribbon), a stretchable bowl on tablets and phones */
:root{--rbw:min(1100px,calc(100vw - 40px));--rbo:calc(var(--rbw) * .0428)}
.hv-search{bottom:calc(var(--rbo) + 16px)}
.hv-in{padding-bottom:calc(var(--rbo) + 160px)}
.rb-body{aspect-ratio:1912/296;background:url("/assets/img/p/ribbon.webp") center/100% 100% no-repeat;padding:3.4% 16% 7.5%;gap:22px;align-items:center;flex-direction:row;text-align:left}
.rb-ic{display:grid;width:54px;height:54px;margin:0}
.rb-h{font-size:clamp(1.1rem,2.1vw,1.65rem);line-height:1.12;margin:0 0 2px}
.rb-p{font-size:clamp(.8rem,1.2vw,.95rem);margin:0}
.rb-btn{margin:0;padding:10px 18px;font-size:clamp(.78rem,1.1vw,.9rem)}
@media (max-width:900px){
  :root{--rbo:42px}
  .hv-search{bottom:calc(var(--rbo) + 100px)}
  .hv-in{padding:56px 14px calc(var(--rbo) + 190px)}
  .rb-ear{display:block}
  .rb-body{aspect-ratio:auto;flex-direction:column;text-align:center;gap:10px;padding:36px 11% 76px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 190' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23fbb25f'/%3E%3Cstop offset='.4' stop-color='%23f58a37'/%3E%3Cstop offset='1' stop-color='%23e2601a'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath fill='url(%23g)' d='M0 0H1000C985 20 975 60 940 105C905 150 860 190 790 190H210C140 190 95 150 60 105C25 60 15 20 0 0Z'/%3E%3C/svg%3E") center/100% 100% no-repeat}
  .rb-ic{display:none}
  .rb-h{font-size:clamp(1.3rem,5vw,1.8rem)}.rb-p{font-size:1rem}
  .rb-btn{padding:12px 20px;font-size:.92rem}
}
@media (max-width:700px){.hv-in{padding-bottom:calc(var(--rbo) + 150px)}}
@media (min-width:901px){.rb-h{font-size:clamp(1.05rem,1.9vw,1.45rem)}}
@media (min-width:1200px){.rb-h{white-space:nowrap}}
.sv-sec{overflow-x:clip}
@media (max-width:900px){.rb-ear{width:6.4%;height:40px}.rb-el{left:-2.2%}.rb-er{right:-2.2%}}

@media (max-width:900px){
  .rb-body{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 190' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23fbb25f'/%3E%3Cstop offset='.4' stop-color='%23f58a37'/%3E%3Cstop offset='1' stop-color='%23e2601a'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath fill='url(%23g)' d='M0 0H1000C992 24 986 64 962 104C938 150 892 190 820 190H180C108 190 62 150 38 104C14 64 8 24 0 0Z'/%3E%3C/svg%3E");padding:30px 9% 52px;gap:8px}
  .rb-h{font-size:clamp(1.15rem,4.6vw,1.6rem)}
  .rb-p{font-size:.9rem;max-width:20em}
  .rb-btn{margin-top:4px}
}

/* v38 ear base sits exactly on the hero's bottom line; below 1059px the ribbon is replaced by a simple card */
:root{--rbo:calc(var(--rbw) * .0435)}
.rb{margin-top:0}
@media (max-width:1058px){
  :root{--rbo:0px}
  .sv-sec{margin-top:0;padding:26px 0 6px;overflow:visible}
  .sv-sec>.wrap{padding-inline:clamp(16px,3vw,28px)}
  .rb{max-width:none;margin:0;filter:none}
  .rb-top,.rb-ear,.rb-curl,.rb-fl{display:none}
  .rb-body{aspect-ratio:auto;min-height:0;flex-direction:row;text-align:left;align-items:center;justify-content:space-between;gap:16px 24px;padding:24px 28px;border-radius:24px;background:linear-gradient(135deg,#f58a37 0%,#f47227 55%,#e2601a 100%);box-shadow:0 4px 14px rgba(39,35,95,.14)}
  .rb-ic{display:grid;width:48px;height:48px}
  .rb-tx{flex:1;min-width:0}
  .rb-h{font-size:clamp(1.15rem,2.6vw,1.5rem);white-space:normal}
  .rb-p{font-size:.95rem;max-width:none}
  .rb-btn{flex:none;margin:0}
  .hv-search{bottom:28px}
}
@media (max-width:900px){.hv-search{bottom:100px}}
@media (max-width:640px){
  .rb-body{flex-direction:column;text-align:center;padding:24px 20px;gap:12px}
  .rb-ic{display:none}
  .rb-btn{align-self:stretch;justify-content:center}
}
:root{--rbw:min(1100px,calc(100vw - 64px));--rbo:calc(var(--rbw) * .04334)}
@media (max-width:1058px){:root{--rbo:0px}}
.pl-price{margin:-2px 0 14px;font:600 1rem Urbanist,Mulish,sans-serif;color:#27235f}.pl-price strong{color:#f47227}
.dm-domain#pl-title{font-size:clamp(1.2rem,2.6vw,1.5rem)}

/* v39 shared page design: ribbon fully visible, centred heads, centred domain block, brand logo row */
@media (min-width:1059px){.hv{min-height:max(560px,calc(100svh - 115px - var(--rbw) * .1114 - 28px))}}
.dn-card{grid-template-columns:auto minmax(0,660px);justify-content:center;gap:28px 56px}
@media (max-width:760px){.dn-card{grid-template-columns:1fr}}
.sec-head{margin-inline:auto;text-align:center;max-width:860px}
.sec-head .btns,.svc-band .btns,.sec-head .pill{justify-content:center}
.sec-head .pill{display:inline-block}
.sec-note{justify-content:center}
.svc-band{margin-inline:auto;text-align:center;max-width:860px}
.svc-band .lead{margin-inline:auto}
.hs-more{justify-content:center}
.cl{margin-inline:auto}
.brands-h{margin:0 0 16px;text-align:center;font:800 .74rem Urbanist,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#f47227}
.brands-row{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:22px 44px;justify-content:center;align-items:center}
.brands-row img{display:block;max-height:42px;max-width:150px;width:auto;height:auto}
.ph-full .head-split{max-width:1360px;margin-inline:auto}
@media (min-width:1059px){.hv-in{padding-top:64px;padding-bottom:calc(var(--rbo) + 110px)}}
.svc-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:16px}
.svc-grid>.svc-card{flex:0 1 calc((100% - 48px) / 4);min-width:250px}
.hs-plans{display:grid}
@media (max-width:640px){.svc-grid>.svc-card{flex-basis:100%;min-width:0}}
.sec-white .panel{background:var(--panel)}
.sd-grid .sd-in{min-height:190px}
.sec.sec-white>.wrap .panel{background:var(--panel)}.sec.sec-white>.wrap .panel .form,.sec.sec-white>.wrap .panel input,.sec.sec-white>.wrap .panel textarea{background:#fff}
.sec.sec-white>.wrap .panel .form{background:transparent}.sec.sec-white>.wrap .panel input,.sec.sec-white>.wrap .panel textarea{background:#fff}
.dn-form.dsearch{max-width:none}.dn-p{max-width:none}

/* v40 service/page heroes: truly full width at every screen size */
.page-head.ph-full>.wrap{max-width:none;width:100%;margin:0;border-radius:0;padding:clamp(28px,4vw,56px) max(18px,calc((100vw - 1440px) / 2 + 36px))}
.page-head.ph-full{padding:0;margin:0}

/* v41 modals only 15% see-through */
.modal-box{background:rgba(255,255,255,.85);-webkit-backdrop-filter:blur(16px) saturate(1.3);backdrop-filter:blur(16px) saturate(1.3)}

/* v42 testimonials in the offset-card design, scrollable loop */
.ts-car,.ts-mq{display:none}
.ts-scroll{overflow-x:auto;padding:64px 0 46px;margin-top:4px;scrollbar-width:none;-ms-overflow-style:none;outline:none;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.ts-scroll::-webkit-scrollbar{display:none}
.ts-row{display:flex;gap:46px;width:max-content;padding-inline:36px}
.tq{--c:#f47227;position:relative;isolation:isolate;flex:none;width:290px;margin:0;background:#fff;border-radius:36px 36px 74px 36px / 36px 36px 46px 36px;padding:56px 24px 30px;text-align:center;box-shadow:0 12px 30px rgba(39,35,95,.1);display:flex;flex-direction:column;align-items:center}
.tq1{--c:#27235f;border-radius:36px 74px 36px 36px / 36px 46px 36px 36px}
.tq::before{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--c);z-index:-1;transform:translate(-14px,10px) rotate(-1.6deg)}
.tq1::before{transform:translate(14px,12px) rotate(1.6deg)}
.tq-av{position:absolute;left:50%;top:-38px;transform:translateX(-50%);width:76px;height:76px;border-radius:50%;background:var(--c);color:#fff;display:grid;place-items:center;box-shadow:0 0 0 5px #fff,0 8px 16px rgba(39,35,95,.18)}.tq-av .ic{width:52%;height:52%}
.tq figcaption strong{display:block;font:700 1.15rem Urbanist,sans-serif;color:#27235f}
.tq figcaption em{display:block;font-style:normal;font-size:.82rem;color:#8a8fa5;margin-top:2px}
.tq-mark{display:block;margin:6px 0 0;font:800 2.6rem/1 Urbanist,sans-serif;color:var(--c);height:26px}
.tq blockquote{margin:8px 0 12px;font-style:italic;font-size:.86rem;line-height:1.65;color:#5b6074;flex:1}
.tq-stars{color:var(--c);letter-spacing:3px;font-size:.9rem}
@media (max-width:640px){.tq{width:250px}.ts-row{gap:38px}}
/* hosting page: domain search inside the request panel */
.hs-search.dsearch{margin:16px 0 0;width:100%;max-width:none}
.hs-search .ds-panel{left:0;right:0;width:auto}
/* contact page, built from the supplied mockup */
.ct-hero{position:relative;overflow:hidden;min-height:clamp(220px,28vw,300px);background:#27235f;color:#fff;margin:0 clamp(8px,1.2vw,14px);border-radius:26px}
.ct-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.9}
.ct-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(39,35,95,.92),rgba(39,35,95,.45) 60%,rgba(244,114,39,.25));z-index:1}
.ct-hero-in{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:flex-end;min-height:inherit;padding:clamp(26px,4vw,44px)}
.ct-dots{display:flex;gap:4px;margin-bottom:12px}.ct-dots i{width:7px;height:7px;border-radius:50%;background:#fff}.ct-dots i:nth-child(2){background:#f47227}
.ct-title{margin:0;font:700 clamp(2.4rem,6vw,4rem)/1.05 Urbanist,sans-serif;letter-spacing:-.02em}
.ct-vert{position:absolute;right:18px;top:12px;writing-mode:vertical-rl;font:700 clamp(2rem,5vw,3.6rem) Urbanist,sans-serif;color:transparent;-webkit-text-stroke:1.2px rgba(255,255,255,.7);letter-spacing:.02em}
.ct-crumb{position:absolute;right:0;bottom:0;background:#fff;color:#27235f;border-radius:18px 0 0 0;padding:10px 20px;font-size:.82rem}
.ct-crumb a{color:#27235f;text-decoration:underline;text-underline-offset:3px}.ct-crumb span{margin:0 4px;color:#8a8fa5}
.ct-main{background:#fff;padding:clamp(34px,5vw,70px) 0 clamp(40px,5vw,70px)}
.ct-wrap{width:min(100% - 32px,1180px);margin-inline:auto;display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,70px);align-items:start}
.ct-kick{margin:0 0 14px;font-size:.82rem;color:#5b6074}
.ct-h{margin:0 0 20px;font:600 clamp(1.9rem,3.6vw,2.9rem)/1.12 Urbanist,sans-serif;letter-spacing:-.02em;color:#27235f}
.ct-p{margin:0 0 30px;color:#5b6074;max-width:30em}
.ct-info{display:grid;grid-template-columns:1fr 1fr;gap:26px 30px}
.ct-info h3{margin:0 0 8px;font:700 1rem Urbanist,sans-serif;color:#27235f}
.ct-info p{margin:0;font-size:.92rem;line-height:1.7;color:#3d4260}.ct-info a{color:#3d4260;text-decoration:none}.ct-info a:hover{color:#f47227}
.ct-soc{list-style:none;margin:0;padding:0;display:flex;gap:10px;flex-wrap:wrap}.ct-soc a{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#f3f3f1;color:#27235f}.ct-soc a:hover{background:#f47227;color:#fff}.ct-soc .ic{width:16px;height:16px}
.ct-card{background:#f3f3f1;border-radius:28px;padding:clamp(24px,4vw,44px)}
.ct-card h3{margin:0 0 6px;font:700 1.4rem Urbanist,sans-serif;color:#27235f}
.ct-sub{margin:0 0 22px;color:#5b6074;font-size:.92rem}
.ct-card .form{background:transparent;padding:0}
.ct-card input,.ct-card textarea,.ct-card select{background:transparent;border:0;border-bottom:1px solid #c9ccd8;border-radius:0;padding-left:0}
.ct-card input:focus,.ct-card textarea:focus{background:transparent;border-bottom-color:#27235f}
.ct-card .fgrid{gap:14px}
.ct-card button[type=submit],.ct-card .btn{border-radius:999px}
.ct-mapwrap{display:block;margin-top:clamp(30px,4vw,50px)}
.ct-map{position:relative;border-radius:26px;overflow:hidden;background:#e8e8ee}
.ct-map-bar{display:flex;gap:8px;flex-wrap:wrap;padding:12px;position:absolute;left:0;top:0;z-index:2}
.ct-map-tab{display:inline-flex;align-items:center;gap:6px;border:0;background:#fff;color:#27235f;border-radius:999px;padding:8px 14px;font:700 .8rem Urbanist,sans-serif;cursor:pointer;box-shadow:0 1px 6px rgba(39,35,95,.15)}.ct-map-tab.on{background:#27235f;color:#fff}
.ct-map-box{height:clamp(260px,34vw,380px);display:grid;place-items:center}
.ct-map-box iframe{width:100%;height:100%;border:0;filter:grayscale(1)}
.ct-map-load{border:0;background:#27235f;color:#fff;border-radius:999px;padding:14px 26px;font:700 .95rem Urbanist,sans-serif;cursor:pointer;display:grid;gap:2px;justify-items:center}.ct-map-load small{font-weight:400;font-size:.72rem;opacity:.8}
@media (max-width:860px){.ct-wrap{grid-template-columns:1fr}.ct-vert{display:none}}
@media (max-width:520px){.ct-info{grid-template-columns:1fr}}
.ct-card,.ct-card .form,.ct-card .fld,.ct-card label{color:#3d4260}
.ct-card{text-align:left}.ct-card label{font-size:.8rem;color:#5b6074}
.ct-card .fine{color:#5b6074}
.tq{background:transparent;box-shadow:none}
.tq::after{content:"";position:absolute;inset:0;border-radius:inherit;background:#fff;box-shadow:0 12px 30px rgba(39,35,95,.1);z-index:-1}

/* v43 contact card: white with soft shadow */
.ct-card{background:#fff;box-shadow:0 10px 32px rgba(39,35,95,.10)}

/* v44 home final CTA: navy band that runs straight into the footer */
.fc-sec{position:relative;overflow:hidden;background:#27235f;color:#fff;text-align:center;padding:clamp(56px,8vw,96px) 0 calc(clamp(40px,6vw,72px) + 24px);margin-bottom:-24px}
.fc-card{position:relative}
.fc-o{position:absolute;border-radius:50%;pointer-events:none}.fc-o1{width:340px;height:340px;left:-110px;top:-140px;background:radial-gradient(circle,rgba(244,114,39,.5),transparent 70%)}.fc-o2{width:300px;height:300px;right:-90px;bottom:-60px;background:radial-gradient(circle,rgba(244,114,39,.35),transparent 70%)}
.fc-h{position:relative;margin:0 0 10px;font:700 clamp(1.8rem,4vw,3rem)/1.1 Urbanist,sans-serif;letter-spacing:-.02em;color:#fff}
.fc-p{position:relative;margin:0 auto 24px;max-width:34em;color:#c9d0ea}
.fc-btns{position:relative;display:flex;flex-wrap:wrap;gap:12px;justify-content:center}

/* v45 FAQ on white, cards keep a soft shadow */
.fq-sec{background:#fff}
.fq-list details{box-shadow:0 4px 18px rgba(39,35,95,.10)}

/* v46 fan centre: white disc with the Hasnet world mark */
.fan-core{fill:#fff;stroke:#e6e7f0;stroke-width:2;filter:drop-shadow(0 6px 16px rgba(39,35,95,.14))}
/* v47 final CTA: bigger, higher-contrast buttons and copy */
.fc-p{color:#fff;font-size:clamp(1rem,1.6vw,1.15rem);opacity:.92}
.fc-btns .w-btn{font-size:1rem;padding:15px 28px;min-height:52px}
.fc-btns .w-btn-orange{box-shadow:0 8px 22px rgba(244,114,39,.35)}
.fc-btns .w-btn-ghostw{background:rgba(255,255,255,.14);border:2px solid #fff;color:#fff}
.fc-btns .w-btn-ghostw:hover{background:#fff;color:#27235f}
.fc-btns .w-btn-ghostw svg{color:currentColor}
@media (max-width:520px){.fc-btns{flex-direction:column;align-items:stretch;max-width:320px;margin-inline:auto}.fc-btns .w-btn{justify-content:center}}

/* v48 contact: full-width hero, map always visible and full width */
.ct-hero{margin:0;border-radius:0}
.ct-mapsec{background:#fff}
.ct-mapsec .ct-map{border-radius:0}
.ct-mapsec .ct-map-box{height:clamp(320px,44vw,520px);display:block}
.ct-mapsec .ct-map-box iframe{display:block;filter:none}
/* v49 mobile: smaller review cards, tighter gaps between home sections */
@media (max-width:640px){
  .tq{width:208px;padding:42px 16px 20px;border-radius:26px 26px 54px 26px / 26px 26px 34px 26px}
  .tq1{border-radius:26px 54px 26px 26px / 26px 34px 26px 26px}
  .tq-av{width:58px;height:58px;top:-29px}
  .tq-av svg{width:26px;height:26px}
  .tq figcaption strong{font-size:1rem}.tq figcaption em{font-size:.74rem}
  .tq-mark{font-size:2rem;height:20px}
  .tq blockquote{font-size:.78rem;line-height:1.55;margin:6px 0 8px}
  .tq-stars{font-size:.78rem}
  .ts-row{gap:28px;padding-inline:24px}
  .ts-scroll{padding:46px 0 26px}
  .bd-sec{padding:22px 0}
  .bd-mq{margin-top:16px}
  .bd-tile{width:128px;height:52px;padding:0 14px}.bd-tile img{max-height:28px}
  .bd-track{gap:8px}
  .tr-band{padding-top:18px}
  .tr-band{padding-bottom:36px}
}
/* v50 mobile: even smaller review cards and tighter page-to-page gaps */
@media (max-width:640px){
  .tq{width:176px;padding:34px 12px 16px}
  .tq-av{width:48px;height:48px;top:-24px}.tq-av svg{width:22px;height:22px}
  .tq figcaption strong{font-size:.9rem}.tq figcaption em{font-size:.68rem}
  .tq-mark{font-size:1.6rem;height:14px;margin:4px 0 0}
  .tq blockquote{font-size:.7rem;line-height:1.5;margin:4px 0 6px}
  .tq-stars{font-size:.7rem;letter-spacing:2px}
  .ts-row{gap:22px;padding-inline:18px}
  .ts-scroll{padding:36px 0 18px}
  .w-band{padding:20px 0;margin:4px 0}
  .bd-sec{padding:14px 0}
  .bd-sec .w-h2{margin-bottom:8px}
  .bd-mq{margin-top:8px}
  .tr-band{margin:4px 0;padding-top:12px}
}
