:root{
  --ink:#0F1B33; --navy:#0A3D91; --deep:#07224F; --cyan:#1B7FD4; --cyan-lt:#8FBCE8;
  --surf:#F3F7FC; --surf2:#E7EFF9; --rule:#DCE7F4; --mute:#5B6B84;
  --amber:#8A5A00; --amber-bg:#FDF6E9; --amber-bd:#EDD9B4; --white:#fff;
  --wrap:1080px; --r:6px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--white);color:var(--ink);
  font:400 16.5px/1.6 "Segoe UI",Roboto,-apple-system,"Helvetica Neue",Arial,sans-serif}
img{max-width:100%}
a{color:var(--navy)}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
.sr{position:absolute;left:-9999px}
.sr:focus{left:8px;top:8px;background:#fff;padding:10px 14px;z-index:99;border-radius:4px}

/* ---------- nav ---------- */
.nav{position:sticky;top:0;z-index:50;background:var(--deep);border-bottom:1px solid #143b74}
.nav .wrap{display:flex;align-items:center;gap:18px;min-height:60px}
.brand{color:#fff;font-weight:700;font-size:15.5px;letter-spacing:.02em;text-decoration:none;white-space:nowrap}
.brand span{color:var(--cyan-lt);font-weight:400}
.nav ul{list-style:none;display:flex;gap:20px;margin:0 0 0 auto;padding:0}
.nav a.lk{color:#C3D8F0;text-decoration:none;font-size:14.5px;padding:6px 0;border-bottom:2px solid transparent}
.nav a.lk:hover,.nav a.lk[aria-current=page]{color:#fff;border-bottom-color:var(--cyan)}
.nav .btn{margin-left:6px}
.navtoggle{display:none;margin-left:auto;background:none;border:1px solid #2b558f;color:#fff;
  border-radius:5px;padding:7px 11px;font-size:14px;cursor:pointer}
@media(max-width:860px){
  .nav ul{display:none;position:absolute;top:60px;left:0;right:0;background:var(--deep);
    flex-direction:column;gap:0;padding:8px 20px 16px;border-bottom:1px solid #143b74}
  .nav ul.open{display:flex}
  .nav ul li{width:100%}
  .nav a.lk{display:block;padding:11px 0;border-bottom:1px solid #143b74}
  .navtoggle{display:block}
  .nav .btn{margin:10px 0 0}
}

/* ---------- buttons ---------- */
.btn{display:inline-block;background:var(--navy);color:#fff;text-decoration:none;font-weight:650;
  font-size:15.5px;padding:12px 22px;border-radius:5px;border:0;cursor:pointer;white-space:nowrap}
.btn:hover{background:#0C4AAE}
.btn.ghost{background:transparent;color:#fff;border:1.5px solid #4d7cbb}
.btn.ghost:hover{background:#0d3madd;background:#0e3570}
.btn.lg{font-size:17px;padding:15px 30px}
.btn:focus-visible{outline:3px solid #9CC6EE;outline-offset:2px}

/* ---------- hero ---------- */
.hero{background:var(--deep);color:#fff;padding:58px 0 46px}
.eyebrow{font-size:12.5px;letter-spacing:.16em;color:var(--cyan-lt);margin:0 0 16px;font-weight:600}
.hero h1{margin:0 0 16px;font-size:clamp(29px,5.4vw,46px);line-height:1.14;letter-spacing:-.02em;max-width:16ch}
.hero p.lead{margin:0 0 26px;font-size:clamp(16px,2.2vw,19px);color:#C3D8F0;max-width:56ch;line-height:1.5}
.cta-row{display:flex;flex-wrap:wrap;gap:12px}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:44px 0 0;border-top:1px solid #143b74;padding-top:24px}
.stats div{padding-right:14px;border-right:1px solid #143b74}
.stats div:last-child{border-right:0}
.stats b{display:block;font-size:clamp(20px,3.4vw,28px);color:var(--cyan);line-height:1.15}
.stats span{font-size:12.5px;color:#A9C8EC;display:block;margin-top:5px}
@media(max-width:700px){.stats{grid-template-columns:1fr 1fr;gap:20px 0}
  .stats div:nth-child(2){border-right:0}}

/* ---------- page header (inner pages) ---------- */
.phead{background:var(--deep);color:#fff;padding:40px 0 36px}
.phead h1{margin:0 0 12px;font-size:clamp(25px,4.4vw,36px);line-height:1.16;letter-spacing:-.015em;max-width:22ch}
.phead p{margin:0;color:#C3D8F0;font-size:16.5px;max-width:60ch}

/* ---------- trust bar ---------- */
.trust{background:var(--surf);border-bottom:1px solid var(--rule);padding:16px 0}
.trust ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px 26px;
  justify-content:center;font-size:13.5px;color:var(--mute)}
.trust li{display:flex;align-items:center;gap:7px}
.trust i{width:6px;height:6px;background:var(--cyan);border-radius:50%;flex:none}

/* ---------- sections ---------- */
section{padding:56px 0}
section.tint{background:var(--surf)}
h2{font-size:clamp(22px,3.4vw,30px);line-height:1.2;letter-spacing:-.015em;margin:0 0 12px}
h3{font-size:18px;margin:0 0 8px;line-height:1.3}
.sub{color:var(--mute);font-size:16px;margin:0 0 30px;max-width:62ch}
.grid{display:grid;gap:20px}
.g2{grid-template-columns:repeat(2,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}
@media(max-width:860px){.g3{grid-template-columns:1fr}.g2{grid-template-columns:1fr}}

.card{background:#fff;border:1px solid var(--rule);border-radius:var(--r);padding:24px}
.card.plain{border:0;padding:0}
.card p{margin:0;color:var(--mute);font-size:15px}
.card p+p{margin-top:10px}
.num{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;
  border-radius:50%;background:var(--navy);color:#fff;font-size:14px;font-weight:700;margin-bottom:12px}

/* ---------- model cards ---------- */
.models{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media(max-width:860px){.models{grid-template-columns:1fr}}
.model{border:1px solid var(--rule);border-radius:var(--r);padding:26px;background:#fff;position:relative}
.model.pop{background:var(--deep);border-color:var(--deep);color:#fff}
.model.pop h3,.model.pop .tier{color:#fff}
.model .tag{position:absolute;top:-12px;left:26px;background:var(--amber);color:#fff;
  font-size:11px;font-weight:700;letter-spacing:.08em;padding:5px 11px;border-radius:4px}
.model .price{font-size:31px;font-weight:700;color:var(--navy);margin:6px 0 2px;letter-spacing:-.02em}
.model.pop .price{color:var(--cyan)}
.model .tier{font-size:14px;font-weight:600;color:var(--cyan);margin:0 0 2px}
.model .area{font-size:13.5px;color:var(--mute);margin:0 0 16px}
.model.pop .area{color:#A9C8EC}
.model ul{list-style:none;margin:16px 0 0;padding:16px 0 0;border-top:1px solid var(--rule)}
.model.pop ul{border-top-color:#143b74}
.model li{font-size:14.5px;padding:0 0 9px 18px;position:relative}
.model li:before{content:"";position:absolute;left:0;top:8px;width:6px;height:6px;
  background:var(--cyan);border-radius:1px}

/* ---------- table ---------- */
.tblwrap{overflow-x:auto;border:1px solid var(--rule);border-radius:var(--r)}
table{border-collapse:collapse;width:100%;min-width:620px;font-size:14.5px;background:#fff}
th,td{padding:11px 14px;text-align:center;border-bottom:1px solid var(--rule)}
th:first-child,td:first-child{text-align:left;font-weight:600}
thead th{background:var(--deep);color:#fff;font-size:14px;font-weight:650;border-bottom:0}
thead th.hl{background:var(--navy)}
td.hl{background:var(--surf2)}
tr.strong td{font-weight:700;background:var(--surf)}
tr.strong td.hl{background:var(--surf2)}
tr:last-child td{border-bottom:0}
.tnote{font-size:13.5px;color:var(--mute);margin:12px 0 0;font-style:italic}

/* ---------- callouts ---------- */
.amber{background:var(--amber-bg);border:1px solid var(--amber-bd);border-radius:var(--r);padding:22px 24px}
.amber h3{color:var(--amber);margin-bottom:8px}
.amber p{margin:0;font-size:15px;color:#4A3A18}
.amber p+p{margin-top:10px}

.split{display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media(max-width:860px){.split{grid-template-columns:1fr}}
.list{list-style:none;margin:0;padding:0}
.list li{position:relative;padding:0 0 12px 26px;font-size:15px}
.list li:before{content:"";position:absolute;left:0;top:8px;width:8px;height:8px;border-radius:2px;background:var(--navy)}
.list.alt li:before{background:var(--cyan)}
.list.no li:before{background:#C2CBD8}

/* ---------- steps ---------- */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
@media(max-width:860px){.steps{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.steps{grid-template-columns:1fr}}
.step .wk{font-size:11.5px;letter-spacing:.1em;color:var(--mute);font-weight:700;margin:10px 0 4px}
.step h3{font-size:16px}

/* ---------- faq ---------- */
details{border:1px solid var(--rule);border-radius:var(--r);background:#fff;margin-bottom:10px}
details[open]{border-color:#B9CFEA}
summary{cursor:pointer;padding:16px 20px;font-weight:650;font-size:16px;list-style:none;
  display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
summary::-webkit-details-marker{display:none}
summary:after{content:"+";color:var(--navy);font-weight:700;font-size:20px;line-height:1}
details[open] summary:after{content:"\2212"}
summary:focus-visible{outline:3px solid #9CC6EE;outline-offset:-2px;border-radius:var(--r)}
details p{margin:0 20px 18px;color:var(--mute);font-size:15px}

/* ---------- cta band ---------- */
.band{background:var(--deep);color:#fff;padding:52px 0}
.band h2{margin:0 0 12px;color:#fff}
.band p{color:#C3D8F0;max-width:56ch;margin:0 0 26px;font-size:16.5px}

/* ---------- footer ---------- */
footer{background:#061a3d;color:#93B4DA;padding:44px 0 30px;font-size:14.5px}
footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px;margin-bottom:30px}
@media(max-width:760px){footer .cols{grid-template-columns:1fr}}
footer h4{color:#fff;font-size:14px;margin:0 0 12px;letter-spacing:.04em}
footer a{color:#93B4DA;text-decoration:none;display:block;padding:4px 0}
footer a:hover{color:#fff}
footer .legal{border-top:1px solid #143b74;padding-top:20px;font-size:13px;color:#6E90BC}
footer .legal p{margin:0 0 8px}

/* ================= merged from prototype ================= */
/* utility bar */
.topbar{background:#041426;color:#9EC0E4;font-size:13px;padding:7px 0}
.topbar .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.topbar a{color:#9EC0E4;text-decoration:none}
.topbar a:hover{color:#fff}
@media(max-width:640px){.topbar{display:none}}

/* brand lockup */
.brandmark{display:block;line-height:1.05;text-decoration:none;white-space:nowrap}
.brandmark b{font-weight:800;font-size:21px;color:#fff;letter-spacing:-.02em}
.brandmark b i{font-style:normal;color:var(--orange-lt)}
.brandmark small{display:block;font-size:8.5px;letter-spacing:.22em;color:#7FA9DA;margin-top:3px;font-weight:600}

/* hero two-column with photo */
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:48px;align-items:center}
@media(max-width:920px){.hero-grid{grid-template-columns:1fr;gap:32px}}
.photo{background:#0d2c5c;border:1px solid #17417c;border-radius:10px;padding:12px}
.photo img{display:block;width:100%;height:360px;object-fit:cover;border-radius:6px}
.photo .ph{height:360px;border-radius:6px;display:flex;align-items:center;justify-content:center;
  text-align:center;padding:24px;color:#7FA9DA;font-size:13.5px;line-height:1.5;
  background:repeating-linear-gradient(45deg,#0b2751,#0b2751 12px,#0d2c5c 12px,#0d2c5c 24px)}
@media(max-width:920px){.photo img,.photo .ph{height:230px}}

/* numbered revenue architecture */
.revgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
@media(max-width:860px){.revgrid{grid-template-columns:1fr}}
.rev{background:#fff;border:1px solid var(--rule);border-radius:var(--r);padding:20px 22px}
.rev .n{font-size:12px;font-weight:800;color:var(--cyan);letter-spacing:.1em;display:block;margin-bottom:7px}
.rev b{display:block;font-size:16px;margin-bottom:5px}
.rev span{font-size:14px;color:var(--mute)}

/* tick list for model cards */
ul.tick{list-style:none;margin:16px 0 0;padding:16px 0 0;border-top:1px solid var(--rule)}
.model.pop ul.tick{border-top-color:#143b74}
ul.tick li{font-size:14.5px;padding:7px 0 7px 24px;position:relative;border-bottom:1px solid #EEF3F9}
.model.pop ul.tick li{border-bottom-color:#123765}
ul.tick li:last-child{border-bottom:0}
ul.tick li:before{content:"\2713";position:absolute;left:0;top:7px;color:#1B9E6A;font-weight:800}
.model.pop ul.tick li:before{color:#4FD1A5}

/* cash line inside model card */
.cashline{background:var(--amber-bg);border:1px solid var(--amber-bd);border-radius:5px;
  padding:9px 12px;margin:14px 0 0;font-size:13.5px;color:#4A3A18}
.cashline b{color:var(--amber);display:block;font-size:11px;letter-spacing:.06em;margin-bottom:2px}
.model.pop .cashline{background:#0d3a76;border-color:#1d5296;color:#D6E7FA}
.model.pop .cashline b{color:#7FD4F5}

/* programme pills */
.progs{display:flex;flex-wrap:wrap;gap:9px;margin-top:6px}
.progs span{background:#fff;border:1px solid var(--rule);border-radius:999px;
  padding:8px 15px;font-size:14px;color:var(--ink)}
section.tint .progs span{background:#fff}
.photo .ph span{max-width:34ch;display:block}

/* ==================== premium visual layer ====================
   Fonts are loaded with <link> in each page head, not @import:
   an @import placed after other rules is ignored by browsers.     */
:root{--orange:#D2530E;--orange-lt:#E8621A;--head:"Plus Jakarta Sans",Georgia,serif}
body{font-family:Manrope,"Segoe UI",Roboto,-apple-system,Arial,sans-serif}
h1,h2,h3,.price,.stats b,.brandmark b,summary{font-family:var(--head)}

/* light hero, per the design comp */
.hero{background:radial-gradient(circle at 84% 6%,rgba(34,184,214,.16),transparent 32%),
  linear-gradient(135deg,#F8FCFE 0%,#EDF6FC 58%,#fff 100%);color:var(--ink);padding:64px 0 46px}
.hero .eyebrow{color:var(--navy)}
.hero h1{color:var(--deep);letter-spacing:-.025em;max-width:15ch}
.hero h1 .hl{color:var(--orange-lt);display:block}
.hero p.lead{color:#4E6178}
.hero .stats{background:#fff;border:1px solid var(--rule);border-radius:16px;padding:0;margin-top:34px;
  box-shadow:0 12px 34px rgba(6,27,56,.07);overflow:hidden}
.hero .stats div{padding:20px 18px;border-right:1px solid var(--rule)}
.hero .stats b{color:var(--deep)}
.hero .stats span{color:var(--mute)}
@media(max-width:700px){.hero .stats div{border-bottom:1px solid var(--rule)}}
.photo{background:#fff;border:1px solid var(--rule);box-shadow:0 16px 44px rgba(6,27,56,.10)}
.photo .ph{background:repeating-linear-gradient(45deg,#F2F7FC,#F2F7FC 12px,#E9F1F9 12px,#E9F1F9 24px);color:#7C93AC}

/* buttons: pill, orange primary per the comp */
.btn{border-radius:999px;background:var(--orange);font-weight:800;
  box-shadow:0 8px 20px rgba(210,83,14,.22)}
.btn:hover{background:#B8480C}
.btn.ghost{background:#fff;color:var(--deep);border:1.5px solid #B9CADB;box-shadow:none}
.btn.ghost:hover{background:#F4F8FC}
.nav .btn{box-shadow:none}
.band .btn{background:#fff;color:var(--deep);box-shadow:none}
.band .btn:hover{background:#EAF2FA}
.band .btn.ghost{background:transparent;color:#fff;border-color:#4d7cbb}

/* dark trust strip */
.trust{background:var(--deep);border:0}
.trust ul{color:#BFD6EC}
.trust i{background:var(--cyan)}

/* softer cards */
.card{border-radius:14px;box-shadow:0 5px 18px rgba(6,27,56,.04);transition:transform .18s,box-shadow .18s}
.card:hover{transform:translateY(-3px);box-shadow:0 14px 36px rgba(6,27,56,.09)}
@media(prefers-reduced-motion:reduce){.card{transition:none}.card:hover{transform:none}}
.num{border-radius:10px;background:#E9F4FB;color:var(--navy)}
.model{border-radius:18px;box-shadow:0 10px 30px rgba(6,27,56,.06)}
.model.pop{background:linear-gradient(160deg,var(--deep),#0B3768);border-color:transparent}
.model .tag{border-radius:999px}
.phead{background:linear-gradient(135deg,#F4F9FC,#fff);color:var(--ink)}
.phead h1{color:var(--deep);letter-spacing:-.02em}
.phead p{color:var(--mute)}
.phead .eyebrow{color:var(--navy)}
details{border-radius:12px}
.amber{border-radius:14px}
.tblwrap{border-radius:12px}

/* tick lists */
.list li:before,ul.tick li:before{content:"\2713";background:none;width:auto;height:auto;top:2px;
  color:#128063;font-weight:800;font-size:14px}
.list.no li:before{content:"\2013";color:#93A2B3}
.model.pop ul.tick li:before{color:#4FD1A5}

/* programme strip */
.progstrip{display:grid;grid-template-columns:repeat(6,1fr);gap:0;border:1px solid var(--rule);
  border-radius:14px;background:#fff;overflow:hidden;margin:26px 0 24px;box-shadow:0 8px 26px rgba(6,27,56,.05)}
.progstrip div{padding:15px 10px;text-align:center;border-right:1px solid var(--rule);font-size:12.5px;
  font-weight:700;color:var(--deep);line-height:1.3}
.progstrip div:last-child{border-right:0}
.progstrip em{display:block;font-style:normal;font-size:19px;margin-bottom:5px}
@media(max-width:860px){.progstrip{grid-template-columns:repeat(3,1fr)}
  .progstrip div:nth-child(3n){border-right:0}
  .progstrip div:nth-child(-n+3){border-bottom:1px solid var(--rule)}}

/* reassurance row */
.reassure{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:20px;font-size:14px;color:#3D5170}
.reassure span{display:flex;align-items:center;gap:7px;font-weight:600}
.reassure span:before{content:"\2713";color:#128063;font-weight:800}

/* ---------- image placeholder component ---------- */
.imgslot{margin:0;border-radius:14px;overflow:hidden;border:1px solid var(--rule);background:#fff;
  box-shadow:0 10px 30px rgba(6,27,56,.06)}
.imgslot img{display:block;width:100%;height:100%;object-fit:cover}
.imgslot.empty{position:relative;background:repeating-linear-gradient(45deg,#F2F7FC,#F2F7FC 12px,#E9F1F9 12px,#E9F1F9 24px)}
.imgslot.empty img{display:none}
.imgslot.empty:before{content:"Image slot \2014\00a0" attr(data-file) "\00a0\00a0\00b7\00a0\00a0" attr(data-size);
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;
  padding:20px;font-size:13px;font-weight:700;color:#6E88A5;letter-spacing:.01em}
.imgslot.wide{aspect-ratio:16/7}
.imgslot.tall{aspect-ratio:4/3}
.imgslot.thumb{aspect-ratio:16/10;margin:0 0 16px;border-radius:10px;box-shadow:none}
.imgcap{font-size:12.5px;color:var(--mute);margin:9px 0 0;font-style:italic}

/* ==================== forms (schedule a call) ==================== */
.formcard{background:#fff;border:1px solid var(--rule);border-radius:16px;padding:26px 28px;
  box-shadow:0 10px 30px rgba(6,27,56,.06)}
@media(max-width:640px){.formcard{padding:22px 18px}}
.fields{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px}
@media(max-width:640px){.fields{grid-template-columns:1fr}}
.field{display:flex;flex-direction:column;gap:6px}
.field.full{grid-column:1/-1}
.field label{font-size:14.5px;font-weight:700;color:var(--ink)}
.field .opt{font-weight:400;color:var(--mute);font-size:13px}
.field .hintx{font-size:13px;color:var(--mute);margin:-2px 0 2px}
.field input,.field select,.field textarea{width:100%;padding:11px 13px;font:inherit;font-size:15.5px;
  color:var(--ink);background:#fff;border:1.5px solid #C6D5E8;border-radius:6px}
.field textarea{min-height:92px;resize:vertical}
.field select{appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8'><path d='M1 1l5 5 5-5' stroke='%235B6B84' stroke-width='1.7' fill='none' stroke-linecap='round'/></svg>");
  background-repeat:no-repeat;background-position:right 13px center;padding-right:36px}
.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{
  outline:3px solid #9CC6EE;outline-offset:1px;border-color:var(--navy)}
.field .msg{color:#B3261E;font-size:13.5px;display:none}
.field.bad input,.field.bad select,.field.bad textarea{border-color:#B3261E}
.field.bad .msg{display:block}
.consentbox{display:flex;gap:11px;align-items:flex-start;font-size:14.5px;color:var(--mute);
  background:var(--surf);border:1px solid var(--rule);border-radius:8px;padding:14px 16px}
.consentbox input{margin:3px 0 0;accent-color:var(--navy);width:17px;height:17px;flex:none}
.field.bad .consentbox{border-color:#B3261E}
.slotbox{border:1px dashed #B9CADB;border-radius:14px;background:repeating-linear-gradient(45deg,#F6FAFD,#F6FAFD 12px,#EEF5FB 12px,#EEF5FB 24px);
  padding:30px 26px;text-align:center;color:#5B7391}
.slotbox b{display:block;color:var(--deep);font-size:16px;margin-bottom:7px}
.slotbox code{background:#fff;border:1px solid var(--rule);border-radius:4px;padding:2px 7px;font-size:13px}
.thanks{display:none;background:#fff;border:1px solid var(--rule);border-radius:16px;padding:30px}
.thanks h2{margin:0 0 10px;font-size:24px}
.thanks textarea{width:100%;min-height:190px;font:13.5px/1.5 ui-monospace,Menlo,Consolas,monospace;
  border:1px solid var(--rule);border-radius:6px;padding:13px;background:var(--surf);color:var(--ink)}

/* ==================== simplified layout ==================== */
section{padding:64px 0}
.sub{margin-bottom:26px}
.rows{border-top:1px solid var(--rule)}
.rows > div{display:grid;grid-template-columns:210px 1fr;gap:24px;
  padding:18px 0;border-bottom:1px solid var(--rule)}
.rows h3{margin:0;font-size:15.5px;color:var(--navy)}
.rows p{margin:0;color:var(--mute);font-size:15px}
@media(max-width:700px){.rows > div{grid-template-columns:1fr;gap:6px}}
.lede2{font-size:17.5px;line-height:1.55;color:var(--mute);max-width:62ch;margin:0 0 6px}
.two{columns:2;column-gap:40px}
.two li{break-inside:avoid}
@media(max-width:700px){.two{columns:1}}
.quiet{border:0;box-shadow:none;padding:0;background:none}
.quiet:hover{transform:none;box-shadow:none}

/* ==================== refinement pass ====================
   Editorial serif for display, sans for everything functional.
   Flat surfaces, hairlines instead of shadows, more air.        */
:root{--head:"Newsreader",Georgia,"Times New Roman",serif}

h1,h2,.price,.stats b{font-family:var(--head);font-weight:500;letter-spacing:-.005em}
h3,summary,.brandmark b,.rows h3,.model h3{font-family:Manrope,"Segoe UI",Roboto,Arial,sans-serif}
body{font-size:16px;line-height:1.65;color:#243449}

.hero{padding:84px 0 64px}
.hero h1{font-size:clamp(36px,5.8vw,58px);line-height:1.06;font-weight:500;max-width:14ch}
.hero p.lead{font-size:17.5px;line-height:1.6;color:#4E6178;max-width:52ch}
h2{font-size:clamp(25px,3.7vw,36px);line-height:1.14;margin-bottom:14px}
h3{font-size:16px;font-weight:700;letter-spacing:-.005em}
.sub,.lede2{font-size:16.5px;line-height:1.62}
section{padding:88px 0}
.phead{padding:64px 0 56px}
.phead h1{font-size:clamp(30px,4.8vw,44px);line-height:1.1;font-weight:500}

/* flat surfaces */
.card,.model,.imgslot,.photo,.progstrip,.formcard,.thanks,.hero .stats{box-shadow:none}
.card{transition:border-color .18s}
.card:hover{transform:none;box-shadow:none;border-color:#BDD2E8}
.btn{box-shadow:none;font-weight:700;letter-spacing:.005em}
.hero .stats{background:none;border:0;border-top:1px solid var(--rule);border-radius:0;
  padding-top:26px;margin-top:44px}
.hero .stats div{padding:0 20px 0 0}
.hero .stats b{font-size:clamp(22px,3.2vw,30px);font-weight:500;color:var(--deep)}
.hero .stats span{font-size:12px;letter-spacing:.03em}

/* lighter tables */
thead th{background:none;color:var(--mute);font-family:Manrope,sans-serif;font-size:11.5px;
  font-weight:700;letter-spacing:.09em;text-transform:uppercase;border-bottom:1.5px solid var(--deep);
  padding-top:6px}
thead th.hl{background:none;color:var(--navy)}
.tblwrap{border:0;border-radius:0}
table{min-width:600px}
td.hl{background:#F7FAFD}
tr.strong td{background:none;font-weight:700}
tr.strong td.hl{background:#F7FAFD}
tr.strong td:first-child{color:var(--deep)}

/* quieter chrome */
.progstrip{border-radius:8px}
.progstrip div{font-weight:600;font-size:12px;letter-spacing:.01em}
.model{border-radius:10px}
.model .price{font-size:36px;letter-spacing:-.02em}
.card{border-radius:10px}
.imgslot,.photo{border-radius:10px}
details{border-radius:8px}
.amber{border-radius:8px}
.num{border-radius:8px;font-family:Manrope,sans-serif}
.trust ul{font-size:12.5px;letter-spacing:.02em}
.eyebrow{font-size:11.5px;letter-spacing:.18em}

/* an unfilled image slot should disappear, not dominate the page */
.imgslot.empty{display:none}
.imgslot.empty + .imgcap{display:none}
.hero .stats div:last-child{border-right:0}

/* twelve-weeks infographic: image on wide screens, text steps on small ones */
.launchfig{display:none;margin:0}
.launchfig img{display:block;width:100%;height:auto;border-radius:10px;border:1px solid var(--rule)}
@media(min-width:880px){
  .launchfig{display:block}
  .steps{display:none}
  .wk-head{position:absolute;width:1px;height:1px;margin:-1px;padding:0;
    overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
}

/* mobile artwork for the launch plan; horizontal version from 880px up */
.launchfig{display:block}
.steps{display:none}
.wk-head{position:absolute;width:1px;height:1px;margin:-1px;padding:0;
  overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.launchfig a.zoomable{display:block;text-decoration:none}
.zoomhint{display:block;text-align:center;font-size:12.5px;color:var(--mute);margin-top:10px}
@media(min-width:880px){.zoomhint{display:none}}

/* global offices */
.offices{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--rule);margin-top:8px}
.offices > div{padding:22px 26px 22px 0;border-bottom:1px solid var(--rule)}
.offices > div + div{border-left:1px solid var(--rule);padding-left:26px}
.offices > div:nth-child(3n+1){border-left:0;padding-left:0}
.offices .city{font-size:11px;letter-spacing:.16em;font-weight:700;color:var(--navy);
  text-transform:uppercase;margin:0 0 8px}
.offices .ent{font-size:14.5px;font-weight:700;color:var(--ink);margin:0 0 6px;font-family:Manrope,sans-serif}
.offices p{margin:0;font-size:14px;color:var(--mute);line-height:1.55}
.offices a{color:var(--navy);text-decoration:none;display:inline-block;margin-top:7px;font-weight:600}
.offices a:hover{text-decoration:underline}
.offices .flag{display:block;margin-top:8px;font-size:11.5px;font-weight:700;color:var(--orange);
  letter-spacing:.04em}
@media(max-width:860px){
  .offices{grid-template-columns:1fr}
  .offices > div + div{border-left:0;padding-left:0}
  .offices > div{padding-right:0}
}

/* Added By Arshad */
.social-icons {
    display: flex;
    gap: 10px;
}

.social-icons a {
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #fff;
    text-decoration: none;
    font-size: 18px;
    transition: 0.3s ease;
}

.social-icons a:hover {
    transform: translateY(-3px);
    opacity: 0.85;
}

.facebook {
    background: #1877f2;
}

.twitter {
    background: #000;
}

.instagram {
    background: #e4405f;
}

.linkedin {
    background: #0a66c2;
}

.youtube {
    background: #ff0000;
}

.whatsapp {
    background: #25d366;
}
.mt-20{
  margin-top: 20px;
}

:root {
    --bnb-navy: #071a33;
    --bnb-navy-2: #0d2747;
    --bnb-blue: #3379a4;
    --bnb-blue-light: #eaf4fa;
    --bnb-text: #182333;
    --bnb-muted: #667085;
    --bnb-border: #dfe6ed;
    --bnb-white: #ffffff;
    --bnb-light: #f7f9fb;
    --bnb-radius: 18px;
}


/* =========================
   GLOBAL
========================= */

.bnb-section {
    padding: 110px 20px;
    background: var(--bnb-white);
    color: var(--bnb-text);
}

.bnb-container {
    width: min(1180px, 100%);
    margin: 0 auto;
}

.bnb-section-heading {
    max-width: 850px;
    margin-bottom: 55px;
}

.bnb-section-heading .bnb-eyebrow {
    margin-bottom: 18px;
}

.bnb-section-heading h2 {
    margin: 0 0 22px;
    color: var(--bnb-navy);
    font-size: clamp(36px, 4.3vw, 58px);
    line-height: 1.05;
    font-weight: 700;
    letter-spacing: -2px;
}

.bnb-section-heading h2 span {
    color: var(--bnb-blue);
}

.bnb-section-heading p {
    max-width: 760px;
    margin: 0;
    color: var(--bnb-muted);
    font-size: 17px;
    line-height: 1.75;
}

.bnb-eyebrow {
    display: inline-block;
    color: var(--bnb-blue);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.8px;
    text-transform: uppercase;
}


/* =========================
   5. CURRICULUM
========================= */

.bnb-curriculum {
    background: var(--bnb-light);
}

.bnb-track-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}

.bnb-track-card {
    display: flex;
    gap: 22px;
    min-height: 235px;
    padding: 32px;
    background: var(--bnb-white);
    border: 1px solid var(--bnb-border);
    border-radius: var(--bnb-radius);
    transition: all .25s ease;
}

.bnb-track-card:hover {
    transform: translateY(-5px);
    border-color: rgba(51, 121, 164, .35);
    box-shadow: 0 18px 45px rgba(7, 26, 51, .08);
}

.bnb-track-number {
    flex: 0 0 auto;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--bnb-blue-light);
    color: var(--bnb-blue);
    font-size: 12px;
    font-weight: 800;
}

.bnb-track-card h3 {
    margin: 3px 0 13px;
    color: var(--bnb-navy);
    font-size: 21px;
    line-height: 1.2;
}

.bnb-track-card p {
    margin: 0;
    color: var(--bnb-muted);
    font-size: 15px;
    line-height: 1.7;
}


/* =========================
   6. FIVE REASONS
========================= */

.bnb-dark-section {
    background: var(--bnb-navy);
    color: var(--bnb-white);
}

.bnb-heading-light h2 {
    color: var(--bnb-white);
}

.bnb-heading-light p {
    color: rgba(255, 255, 255, .7);
}

.bnb-heading-light .bnb-eyebrow {
    color: #7fc1e7;
}

.bnb-reasons {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0;
    border-top: 1px solid rgba(255,255,255,.15);
}

.bnb-reason {
    display: grid;
    grid-template-columns: 55px 1fr;
    gap: 25px;
    padding: 34px 25px 34px 0;
    border-bottom: 1px solid rgba(255,255,255,.15);
}

.bnb-reason:nth-child(even) {
    padding-left: 30px;
    border-left: 1px solid rgba(255,255,255,.15);
}

.bnb-reason-number {
    color: #6eb5dc;
    font-size: 13px;
    font-weight: 800;
}

.bnb-reason h3 {
    margin: 0 0 10px;
    color: #fff;
    font-size: 20px;
}

.bnb-reason p {
    margin: 0;
    color: rgba(255,255,255,.68);
    font-size: 15px;
    line-height: 1.7;
}

.bnb-photo-slot {
    margin-top: 55px;
}

.bnb-photo-placeholder {
    min-height: 380px;
    border: 1px dashed rgba(255,255,255,.3);
    border-radius: var(--bnb-radius);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    background: rgba(255,255,255,.04);
}

.bnb-photo-placeholder span {
    color: #7fc1e7;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.bnb-photo-placeholder p {
    margin: 8px 0 0;
    color: rgba(255,255,255,.5);
}


/* =========================
   7. REVENUE STREAMS
========================= */

.bnb-revenue-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

.bnb-revenue-card {
    padding: 30px;
    background: var(--bnb-light);
    border: 1px solid var(--bnb-border);
    border-radius: var(--bnb-radius);
}

.bnb-card-number {
    display: block;
    margin-bottom: 45px;
    color: var(--bnb-blue);
    font-size: 13px;
    font-weight: 800;
}

.bnb-revenue-card h3 {
    margin: 0 0 13px;
    color: var(--bnb-navy);
    font-size: 20px;
    line-height: 1.25;
}

.bnb-revenue-card p {
    margin: 0;
    color: var(--bnb-muted);
    font-size: 15px;
    line-height: 1.7;
}

.bnb-disclaimer {
    margin-top: 30px;
    padding: 20px 24px;
    border-left: 3px solid var(--bnb-blue);
    background: var(--bnb-blue-light);
    color: #506070;
    font-size: 13px;
    line-height: 1.7;
}


/* =========================
   10. ACCREDITATION
========================= */

.bnb-accreditation {
    background: var(--bnb-light);
}

.bnb-credentials {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
}

.bnb-credential {
    display: flex;
    gap: 24px;
    padding: 32px;
    background: #fff;
    border: 1px solid var(--bnb-border);
    border-radius: var(--bnb-radius);
}

.bnb-credential-icon {
    flex: 0 0 auto;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: var(--bnb-blue);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 800;
}

.bnb-credential h3 {
    margin: 3px 0 12px;
    color: var(--bnb-navy);
    font-size: 19px;
}

.bnb-credential p {
    margin: 0;
    color: var(--bnb-muted);
    font-size: 15px;
    line-height: 1.7;
}

.bnb-credential-note {
    margin-top: 30px;
    padding: 28px;
    border-radius: var(--bnb-radius);
    background: var(--bnb-navy);
    color: rgba(255,255,255,.75);
    font-size: 15px;
    line-height: 1.75;
}

.bnb-credential-note strong {
    color: #fff;
}


/* =========================
   11. BANGALORE & BEYOND
========================= */

.bnb-location-section {
    background: #fff;
}

.bnb-location-grid {
    display: grid;
    grid-template-columns: 1.35fr .65fr;
    gap: 80px;
    align-items: center;
}

.bnb-location-content h2 {
    margin: 16px 0 25px;
    color: var(--bnb-navy);
    font-size: clamp(36px, 4vw, 54px);
    line-height: 1.05;
    letter-spacing: -1.8px;
}

.bnb-location-content h2 span {
    color: var(--bnb-blue);
}

.bnb-location-content p {
    color: var(--bnb-muted);
    font-size: 16px;
    line-height: 1.8;
}

.bnb-location-card {
    padding: 35px;
    border-radius: var(--bnb-radius);
    background: var(--bnb-light);
    border: 1px solid var(--bnb-border);
}

.bnb-location-label {
    display: inline-block;
    margin-bottom: 20px;
    color: var(--bnb-blue);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.5px;
}

.bnb-location-card h3 {
    margin: 0 0 18px;
    color: var(--bnb-navy);
    font-size: 21px;
}

.bnb-location-card p {
    margin: 0 0 25px;
    color: var(--bnb-muted);
    font-size: 14px;
    line-height: 1.7;
}

.bnb-location-contact {
    padding-top: 20px;
    border-top: 1px solid var(--bnb-border);
    display: flex;
    flex-direction: column;
    gap: 7px;
    color: var(--bnb-blue);
    font-size: 14px;
}

.bnb-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 65px;
}

.bnb-badges span {
    padding: 11px 16px;
    border: 1px solid var(--bnb-border);
    border-radius: 50px;
    background: #fff;
    color: #526273;
    font-size: 12px;
    font-weight: 600;
}


/* =========================
   12. HOW IT WORKS
========================= */

.bnb-process {
    border-top: 1px solid rgba(255,255,255,.15);
}

.bnb-process-step {
    display: grid;
    grid-template-columns: 70px 280px 1fr;
    gap: 30px;
    align-items: start;
    padding: 30px 0;
    border-bottom: 1px solid rgba(255,255,255,.15);
}

.bnb-process-number {
    color: #70b7df;
    font-size: 13px;
    font-weight: 800;
}

.bnb-process-step h3 {
    margin: 0;
    color: #fff;
    font-size: 20px;
}

.bnb-process-step p {
    margin: 0;
    color: rgba(255,255,255,.65);
    font-size: 15px;
    line-height: 1.7;
}


.bnb-about-franchise { position: relative; background: #ffffff; overflow: hidden; } /* Subtle background detail */ .bnb-about-franchise::before { content: ""; position: absolute; top: -180px; right: -180px; width: 450px; height: 450px; border-radius: 50%; background: #eef6fb; opacity: .65; pointer-events: none; } /* Main two-column layout */ .bnb-about-grid { position: relative; z-index: 1; display: grid; grid-template-columns: 0.8fr 1.2fr; gap: 90px; align-items: start; } /* ========================= LEFT SIDE ========================= */ .bnb-about-heading { position: sticky; top: 100px; } .bnb-about-heading .bnb-eyebrow { margin-bottom: 20px; } .bnb-about-heading h2 { margin: 0; color: var(--bnb-navy, #071a33); font-size: clamp(38px, 4.2vw, 58px); line-height: 1.05; letter-spacing: -2px; font-weight: 700; } .bnb-about-heading h2 span { display: block; color: var(--bnb-blue, #3379a4); } /* Decorative accent */ .bnb-about-accent { display: flex; gap: 6px; margin-top: 32px; } .bnb-about-accent span { display: block; height: 4px; border-radius: 10px; background: var(--bnb-blue, #3379a4); } .bnb-about-accent span:nth-child(1) { width: 42px; } .bnb-about-accent span:nth-child(2) { width: 18px; opacity: .55; } .bnb-about-accent span:nth-child(3) { width: 8px; opacity: .3; } /* ========================= RIGHT CONTENT ========================= */ .bnb-about-content { max-width: 720px; } .bnb-about-content p { margin: 0 0 25px; color: var(--bnb-muted, #667085); font-size: 17px; line-height: 1.85; } .bnb-about-content .bnb-about-lead { color: #344255; font-size: 19px; line-height: 1.8; } .bnb-about-content strong { color: var(--bnb-navy, #071a33); font-weight: 700; } /* ========================= STATS ========================= */ .bnb-about-stats { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 48px; padding-top: 30px; border-top: 1px solid var(--bnb-border, #dfe6ed); } .bnb-about-stat { padding-right: 25px; } .bnb-about-stat + .bnb-about-stat { padding-left: 25px; border-left: 1px solid var(--bnb-border, #dfe6ed); } .bnb-about-stat strong { display: block; color: var(--bnb-blue, #3379a4); font-size: 38px; line-height: 1; letter-spacing: -1px; } .bnb-about-stat span { display: block; margin-top: 10px; color: var(--bnb-muted, #667085); font-size: 13px; line-height: 1.4; }

/* =========================
   RESPONSIVE
========================= */

@media (max-width: 1000px) {

    .bnb-section {
        padding: 85px 20px;
    }

    .bnb-track-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .bnb-revenue-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .bnb-location-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .bnb-process-step {
        grid-template-columns: 55px 1fr;
    }

    .bnb-process-step p {
        grid-column: 2;
    }
}


@media (max-width: 700px) {

    .bnb-section {
        padding: 70px 18px;
    }

    .bnb-section-heading {
        margin-bottom: 38px;
    }

    .bnb-section-heading h2,
    .bnb-location-content h2 {
        letter-spacing: -1px;
    }

    .bnb-track-grid,
    .bnb-revenue-grid,
    .bnb-credentials {
        grid-template-columns: 1fr;
    }

    .bnb-track-card {
        min-height: auto;
    }

    .bnb-reasons {
        grid-template-columns: 1fr;
    }

    .bnb-reason,
    .bnb-reason:nth-child(even) {
        padding: 27px 0;
        border-left: 0;
    }

    .bnb-photo-placeholder {
        min-height: 260px;
    }

    .bnb-location-grid {
        gap: 30px;
    }

    .bnb-badges {
        margin-top: 40px;
    }

    .bnb-process-step {
        grid-template-columns: 45px 1fr;
        gap: 15px;
    }

    .bnb-process-step p {
        grid-column: 2;
    }

    .bnb-faq summary {
        font-size: 15px;
    }

    .bnb-faq-answer {
        padding-right: 0;
    }
}

@media (max-width: 900px) { .bnb-about-grid { grid-template-columns: 1fr; gap: 45px; } .bnb-about-heading { position: static; } .bnb-about-heading h2 { max-width: 650px; } } @media (max-width: 600px) { .bnb-about-franchise { padding-top: 65px; padding-bottom: 65px; } .bnb-about-grid { gap: 35px; } .bnb-about-heading h2 { font-size: 38px; letter-spacing: -1px; } .bnb-about-content .bnb-about-lead { font-size: 17px; } .bnb-about-content p { font-size: 15px; line-height: 1.75; } .bnb-about-stats { grid-template-columns: 1fr; gap: 25px; } .bnb-about-stat, .bnb-about-stat + .bnb-about-stat { padding: 0 0 20px; border-left: 0; border-bottom: 1px solid var(--bnb-border, #dfe6ed); } .bnb-about-stat:last-child { border-bottom: 0; } .bnb-about-stat strong { font-size: 32px; } }