:root{
  --navy:#0E3988; --navy-deep:#0C2A63; --navy-ink:#081d47; --navy-2:#15489C;
  --yellow:#FCCF08; --yellow-deep:#E0B400;
  --ice:#EAF3FB; --ice-2:#F4F9FD; --ink:#0C1830; --muted:#5B6B82; --line:#DCE7F1; --white:#FBFCFC;
  --d:'Poppins',sans-serif; --b:'Poppins',sans-serif;
  --maxw:1200px; --r:16px; --r-lg:24px;
  --sh:0 24px 60px -34px rgba(14,57,136,.55);
  --sh-y:0 16px 34px -14px rgba(252,207,8,.6);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--b);color:var(--ink);background:var(--white);line-height:1.7;font-size:17px;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3,h4{font-family:var(--d);font-weight:800;line-height:1.12;letter-spacing:-.02em;text-transform:capitalize}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.eyebrow{display:inline-flex;align-items:center;gap:9px;font-family:var(--d);font-weight:700;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--navy-2)}
.eyebrow::before{content:"";width:26px;height:3px;background:var(--yellow);border-radius:2px}
.eyebrow.on-dark{color:var(--yellow)}
.section{padding:60px 0}
.section h2{font-size:clamp(29px,3.8vw,46px);color:var(--navy-deep)}
.section .sub{color:var(--muted);font-size:18px;max-width:62ch;margin-top:14px}
.center{text-align:center}.center .sub{margin-left:auto;margin-right:auto}
/* image slots */
.imgph{position:relative;overflow:hidden;background:linear-gradient(150deg,#e9f1fb,#d3e2f4);display:flex;align-items:center;justify-content:center}
.imgph>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;z-index:2}
.imgph .phl{position:relative;z-index:0;display:flex;flex-direction:column;align-items:center;gap:7px;color:#7e96b6;font-family:var(--d);font-weight:600;font-size:12px;letter-spacing:.01em;text-align:center;padding:14px}
.imgph .phl svg{width:30px;height:30px;opacity:.55}
/* gallery */
.gal-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:198px;gap:16px;margin-top:46px}
.gal{position:relative;border-radius:18px;overflow:hidden;border:1px solid var(--line)}
.gal.tall{grid-row:span 2}
.gal.wide{grid-column:span 2}
.gal>.imgph{width:100%;height:100%}
.gal .cap{position:absolute;left:0;right:0;bottom:0;z-index:3;padding:16px 16px 15px;background:linear-gradient(0deg,rgba(8,29,71,.85),rgba(8,29,71,0));color:#fff;font-family:var(--d);font-weight:600;font-size:14px;opacity:0;transform:translateY(8px);transition:.28s}
.gal:hover .cap{opacity:1;transform:none}
.gal .tagp{position:absolute;top:12px;left:12px;z-index:3;background:var(--yellow);color:var(--navy-ink);font-family:var(--d);font-weight:700;font-size:11px;padding:4px 11px;border-radius:999px}
.rcard .av{position:relative;overflow:hidden}
.rcard .av>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:2}
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:var(--d);font-weight:700;font-size:15px;letter-spacing:.01em;padding:15px 28px;border-radius:14px;border:1.5px solid transparent;cursor:pointer;overflow:hidden;isolation:isolate;-webkit-tap-highlight-color:transparent;transition:transform .32s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease,color .22s,border-color .22s}
.btn span.btn-txt{position:relative;z-index:2}
.btn svg{width:19px;height:19px;position:relative;z-index:2;transition:transform .35s cubic-bezier(.34,1.56,.64,1)}

.btn::after{content:"";position:absolute;top:0;left:0;width:0;height:100%;z-index:0;transition:width .4s cubic-bezier(.25,.46,.45,.94);pointer-events:none}

.btn:hover::after{width:100%}
.btn:hover{transform:translateY(-3px) scale(1.02)}
.btn:hover svg{transform:translateX(3px) rotate(-8deg)}
.btn:active{transform:translateY(0) scale(.97);transition-duration:.1s}
.btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--white),0 0 0 5px var(--navy-2)}

.btn-y{background:linear-gradient(135deg,#FFE066 0%,var(--yellow) 50%,#F4C400 100%);color:var(--navy-ink);box-shadow:0 4px 15px -4px rgba(252,207,8,.6),0 1px 3px rgba(12,24,48,.15);border-radius:14px}
.btn-y::after{background:linear-gradient(135deg,#FFF3B0,#FFDA3D);border-radius:14px}

.btn-y:hover{color:var(--navy-deep);box-shadow:0 8px 28px -6px rgba(252,207,8,.85),0 2px 6px rgba(12,24,48,.2)}
.btn-y:active{box-shadow:inset 0 2px 8px rgba(176,140,0,.35)}

.btn-navy{background:linear-gradient(135deg,var(--navy-2) 0%,var(--navy) 60%,var(--navy-deep) 100%);color:#fff;box-shadow:0 4px 18px -5px rgba(14,57,136,.7),0 1px 4px rgba(8,29,71,.25);border-radius:14px}
.btn-navy::after{background:linear-gradient(135deg,#2563b8,var(--navy-2));border-radius:14px}

.btn-navy:hover{color:#fff;box-shadow:0 10px 32px -8px rgba(14,57,136,.9),0 2px 8px rgba(8,29,71,.3)}
.btn-navy:active{box-shadow:inset 0 2px 10px rgba(6,20,52,.5)}

.btn-wa{background:linear-gradient(135deg,#FFE066 0%,var(--yellow) 50%,#F4C400 100%);color:var(--navy-ink);box-shadow:0 4px 15px -4px rgba(252,207,8,.6),0 1px 3px rgba(12,24,48,.15);border-radius:14px}
.btn-wa::after{background:linear-gradient(135deg,#FFF3B0,#FFDA3D);border-radius:14px}

.btn-wa:hover{color:var(--navy-deep);box-shadow:0 8px 28px -6px rgba(252,207,8,.85),0 2px 6px rgba(12,24,48,.2)}
.btn-wa:active{box-shadow:inset 0 2px 8px rgba(176,140,0,.35)}

.btn-ghost{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.45);backdrop-filter:blur(4px);border-radius:14px}
.btn-ghost::after{background:rgba(255,255,255,.95);border-radius:14px}

.btn-ghost:hover{color:var(--navy);border-color:rgba(255,255,255,.9);box-shadow:0 10px 28px -10px rgba(0,0,0,.45)}
.btn-ghost:active{background:rgba(255,255,255,.85)}

.btn-line{background:#fff;color:var(--navy);border-color:var(--line);box-shadow:0 2px 10px -5px rgba(14,57,136,.3);border-radius:14px}
.btn-line::after{background:linear-gradient(135deg,var(--ice),#dbe9f8);border-radius:14px}

.btn-line:hover{border-color:var(--navy-2);color:var(--navy-deep);box-shadow:0 8px 24px -8px rgba(14,57,136,.4)}
.btn-line:active{box-shadow:inset 0 2px 8px rgba(14,57,136,.1)}
.ribbon{display:inline-block;background:var(--yellow);color:var(--navy-ink);font-family:var(--d);font-weight:800;font-size:13px;letter-spacing:.04em;padding:7px 18px;transform:skewX(-10deg);text-transform:uppercase}
.ribbon span{display:inline-block;transform:skewX(10deg)}

.tbar{background:var(--navy-ink);color:#cfe0f5;font-size:13px}
.tbar .wrap{display:flex;flex-wrap:wrap;gap:8px 26px;align-items:center;justify-content:center;min-height:42px;padding:7px 22px}
.tbar b{color:#fff;font-weight:600}
.tbar i{color:var(--yellow);font-style:normal;font-weight:800}
.tbar .dot{width:5px;height:5px;border-radius:50%;background:var(--navy-2)}

.hd{position:sticky;top:0;z-index:90;background:rgba(251,252,252,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);transition:box-shadow .25s}
.hd.scrolled{box-shadow:0 10px 34px -18px rgba(14,57,136,.45)}
.nav{display:flex;align-items:center;justify-content:space-between;height:80px;gap:16px}
.brand{display:flex;align-items:center;gap:11px}
.brand .bmk{position:relative;width:46px;height:46px;flex:0 0 auto;border-radius:13px;background:linear-gradient(140deg,var(--navy),var(--navy-2));display:flex;align-items:center;justify-content:center;box-shadow:0 8px 16px -8px rgba(14,57,136,.8)}
.brand .bmk .ar{position:absolute;inset:-3px;border:2.5px solid var(--yellow);border-right-color:transparent;border-radius:50%;animation:spin 6s linear infinite}
.brand .bmk b{font-family:var(--d);font-weight:800;font-size:18px;color:#fff}
.brand .wm{display:flex;flex-direction:column;line-height:1}
.brand .wm .t1{font-family:var(--d);font-weight:800;font-size:20px;color:var(--navy-deep);letter-spacing:-.02em}
.brand .wm .t1 em{font-style:normal;color:var(--yellow-deep)}
.brand .wm .t2{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:600;margin-top:3px}
.brand-logo{height:52px;width:auto;display:block;object-fit:contain}
.brand-logo-footer{height:60px;filter:brightness(1.1)}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes coolBreeze{0%{transform:translateX(-8px) translateY(0) scale(.8);opacity:0}30%{opacity:.6}60%{transform:translateX(12px) translateY(-6px) scale(1);opacity:.4}100%{transform:translateX(22px) translateY(-10px) scale(.5);opacity:0}}
@keyframes btnPulse{0%,100%{box-shadow:0 4px 15px -4px rgba(252,207,8,.6)}50%{box-shadow:0 6px 22px -4px rgba(252,207,8,.9)}}
.btn-wa:not(:hover){animation:btnPulse 2.5s ease-in-out infinite}
.menu{display:flex;align-items:center;gap:26px}
.menu>a,.mdd>span{font-family:var(--d);font-weight:600;font-size:15.5px;color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;gap:5px;padding:8px 0;transition:color .15s}
.menu>a:hover,.mdd:hover>span{color:var(--navy)}
.mdd{position:relative}
.mdd>span svg{width:14px;height:14px;transition:transform .2s}
.mdd:hover>span svg{transform:rotate(180deg)}
.mega{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(12px);margin-top:6px;width:620px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--sh);padding:22px;display:grid;grid-template-columns:1fr 1fr;gap:8px 26px;opacity:0;visibility:hidden;transition:.22s;z-index:95}
.mega::before{content:"";position:absolute;top:-14px;left:0;right:0;height:14px}
.mdd:hover .mega{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.mega h5{grid-column:1/-1;font-family:var(--d);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--navy-2);margin:6px 0 2px}
.mega a{display:flex;align-items:center;gap:10px;padding:9px 11px;border-radius:10px;font-size:14px;font-weight:500;color:var(--ink);transition:.15s}
.mega a:hover{background:var(--ice);color:var(--navy)}
.mega a .mi{width:30px;height:30px;border-radius:8px;background:var(--ice);display:flex;align-items:center;justify-content:center;color:var(--navy);flex:0 0 auto}
.mega a .mi svg{width:17px;height:17px}
.mega .promo{grid-column:1/-1;margin-top:8px;background:linear-gradient(120deg,var(--navy),var(--navy-2));color:#fff;border-radius:12px;padding:14px 16px;font-size:13px;display:flex;align-items:center;gap:10px}
.mega .promo b{color:var(--yellow)}
.nav-end{display:flex;align-items:center;gap:13px}
.nav-book{padding:12px 22px;font-size:14.5px}
.menu-head,.menu-cta,.menu-close{display:none}
.burger{display:none;background:none;border:none;cursor:pointer;color:var(--navy-deep)}
.burger svg{width:30px;height:30px}

.hero{position:relative;background:var(--navy-ink);color:#fff;overflow:hidden;padding:74px 0 110px}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.hero::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(118deg,rgba(7,24,63,.96) 0%,rgba(11,38,90,.9) 42%,rgba(14,57,136,.74) 100%)}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:64px;z-index:3;background:var(--white);clip-path:polygon(0 100%,100% 100%,100% 38%,0 100%)}
.hero .glow{position:absolute;inset:0;z-index:1;background:radial-gradient(800px 420px at 88% -10%,rgba(252,207,8,.18),transparent 60%),radial-gradient(620px 420px at 6% 108%,rgba(21,72,156,.5),transparent 60%);pointer-events:none}
.hero .wrap{position:relative;z-index:2;display:grid;grid-template-columns:1.08fr .92fr;gap:50px;align-items:center}
.hero h1{font-size:clamp(35px,5.1vw,60px);margin:0;letter-spacing:-.03em;text-shadow:0 2px 22px rgba(4,14,40,.45)}
.hero h1 .y{color:var(--yellow);position:relative;white-space:nowrap}
.hero p.s{margin-top:20px;font-size:19.5px;color:#dbe8f6;max-width:48ch;text-shadow:0 1px 14px rgba(4,14,40,.4)}
.chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}
.chips span{display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);padding:9px 14px;border-radius:10px;font-size:14px;color:#dceaf8}
.chips svg{width:15px;height:15px;color:var(--yellow)}
.hero-cta{display:flex;flex-wrap:wrap;gap:13px;margin-top:30px}
.bookcard{position:relative;background:#fff;border-radius:22px;box-shadow:0 50px 90px -45px rgba(3,16,45,.78);width:100%;max-width:432px;margin-left:auto;overflow:hidden}
.bookcard::after{content:"";position:absolute;top:-34px;right:-34px;width:120px;height:120px;background:var(--yellow);opacity:.16;transform:skewX(-16deg);pointer-events:none}
.bc-top{position:relative;background:linear-gradient(140deg,var(--navy),var(--navy-2));color:#fff;padding:22px 24px}
.bc-top h3{font-size:21px;color:#fff;letter-spacing:-.01em}
.bc-top p{font-size:12.5px;color:#c6d8ef;margin-top:5px;max-width:28ch}
.bc-top .pulse{position:absolute;top:22px;right:22px;display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.22);padding:5px 10px;border-radius:999px;font-size:11px;font-weight:600}
.bc-top .pulse i{width:7px;height:7px;border-radius:50%;background:#36d978;animation:pp 1.8s infinite}
@keyframes pp{0%{box-shadow:0 0 0 0 rgba(54,217,120,.7)}70%{box-shadow:0 0 0 7px rgba(54,217,120,0)}100%{box-shadow:0 0 0 0 rgba(54,217,120,0)}}
.bc-body{padding:20px 24px 22px;display:grid;gap:12px}
.bc-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.bc-field{display:flex;flex-direction:column;gap:6px}
.bc-field label{font-family:var(--d);font-size:12px;font-weight:600;color:var(--navy-deep)}
.bc-field input,.bc-field select,.bc-field textarea{font-family:var(--b);font-size:14px;color:var(--ink);background:#f5f8fc;border:1.5px solid var(--line);border-radius:11px;padding:12px 13px;width:100%;resize:none;transition:border-color .18s,box-shadow .18s,background .18s}
.bc-field input::placeholder,.bc-field textarea::placeholder{color:#9fb0c4}
.bc-field input:focus,.bc-field select:focus,.bc-field textarea:focus{outline:none;border-color:var(--navy-2);background:#fff;box-shadow:0 0 0 3px rgba(21,72,156,.13)}
.bc-submit{width:100%;justify-content:center;margin-top:2px}
.bc-note{font-size:11.5px;color:var(--muted);text-align:center}

.about-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:54px;align-items:center}
.about-visual{position:relative;z-index:2}
.av-frame{position:relative;border-radius:24px;overflow:hidden;background:linear-gradient(155deg,#eef4fb,#dbe7f6);border:1px solid var(--line);aspect-ratio:4/3.3;display:flex;align-items:center;justify-content:center;box-shadow:0 40px 70px -45px rgba(14,57,136,.6)}
.av-frame svg{width:80%;height:auto}
.av-badge{position:absolute;z-index:5;left:-14px;bottom:26px;background:#fff;border-radius:16px;padding:14px 18px;box-shadow:0 24px 44px -22px rgba(14,57,136,.55);display:flex;align-items:center;gap:11px}
.av-badge b{font-family:var(--d);font-weight:800;font-size:30px;color:var(--navy)}
.av-badge span{font-size:11.5px;line-height:1.25;color:var(--muted);font-weight:600}
.av-badge2{position:absolute;z-index:5;right:-12px;top:24px;background:var(--navy);color:#fff;border-radius:14px;padding:11px 15px;box-shadow:0 24px 44px -22px rgba(8,29,71,.7);text-align:center}
.av-badge2 .st{color:var(--yellow);letter-spacing:1px;font-size:13px}
.av-badge2 span{font-size:11px;color:#cfe0f5;font-weight:600}
.about-content .eyebrow{margin-bottom:14px}
.about-content h2{font-size:clamp(28px,3.6vw,42px);color:var(--navy-deep)}
.about-content>p{color:var(--muted);font-size:17.5px;margin-top:14px;max-width:54ch}
.about-points{list-style:none;margin:22px 0 0;display:grid;gap:12px}
.about-points li{display:flex;align-items:flex-start;gap:12px;font-size:16px;color:var(--ink);font-weight:500}
.about-points .ck{flex:0 0 auto;width:24px;height:24px;border-radius:7px;background:var(--navy);color:var(--yellow);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;margin-top:1px}
.about-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:26px 0;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.about-stats b{font-family:var(--d);font-weight:800;font-size:26px;color:var(--navy);display:block;line-height:1}
.about-stats span{font-size:12.5px;color:var(--muted);margin-top:5px;display:block}

.usp{background:#fff}
.usp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:46px}
.usp-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:30px 26px;transition:transform .2s,box-shadow .2s}
.usp-card:hover{transform:translateY(-5px);box-shadow:var(--sh)}
.usp-card .ic{width:56px;height:56px;border-radius:15px;background:linear-gradient(140deg,var(--navy),var(--navy-2));color:var(--yellow);display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.usp-card .ic svg{width:28px;height:28px}
.usp-card h3{font-size:19px;color:var(--navy-deep)}
.usp-card p{font-size:15px;color:var(--muted);margin-top:9px}

.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:46px}
.svc{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;transition:transform .2s,box-shadow .2s,border-color .2s}
.svc:hover{transform:translateY(-6px);box-shadow:var(--sh);border-color:transparent}
.svc-img{position:relative;aspect-ratio:16/10;width:100%}
.svc-img::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(8,29,71,0) 55%,rgba(8,29,71,.16));pointer-events:none}
.svc-body{padding:26px}
.svc-more{margin-top:4px}

.svc h3{font-size:20px;color:var(--navy-deep)}
.svc p{font-size:15.5px;color:var(--muted);margin:8px 0 14px}
.svc .row{display:flex;align-items:center;justify-content:space-between}
.svc .from{font-family:var(--d);font-weight:700;font-size:13px;color:var(--navy)}
.svc .go{font-family:var(--d);font-weight:700;font-size:13.5px;color:var(--navy);display:inline-flex;align-items:center;gap:6px}
.svc .go svg{width:16px;height:16px;transition:transform .2s}
.svc:hover .go svg{transform:translateX(4px)}

.brands{background:linear-gradient(180deg,#fff 0%,#f7fafd 100%);border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden}
.brands .head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;margin-bottom:10px}
.brands-sub{color:#5b6b7e;font-size:15.5px;margin-top:10px;max-width:52ch}
.marquee{margin-top:30px;display:flex;gap:14px;width:max-content;animation:scroll 26s linear infinite}
.marquee:hover{animation-play-state:paused}
.bchip{background:#fff;border:1px solid var(--line);border-radius:999px;padding:13px 28px;font-family:var(--d);font-weight:800;font-size:17px;color:var(--navy-deep);white-space:nowrap}
.mq-mask{overflow:hidden;-webkit-mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
@keyframes scroll{to{transform:translateX(-50%)}}

/* Elegant brand logo marquee */
.brand-marquee{margin-top:34px;display:flex;gap:22px;width:max-content;animation:scroll 32s linear infinite;padding:8px 0}
.brand-marquee:hover{animation-play-state:paused}
.blogo{flex:0 0 auto;width:170px;height:110px;background:#fff;border:1px solid #e6edf5;border-radius:18px;display:flex;align-items:center;justify-content:center;padding:18px 22px;box-shadow:0 2px 10px rgba(20,40,80,.04);transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}
.blogo img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;filter:grayscale(100%) contrast(.95);opacity:.72;transition:filter .35s ease,opacity .35s ease,transform .35s ease}
.blogo:hover{transform:translateY(-6px);box-shadow:0 14px 32px rgba(20,40,80,.10);border-color:#cfdcec}
.blogo:hover img{filter:grayscale(0) contrast(1);opacity:1;transform:scale(1.04)}
@media (max-width:640px){
  .blogo{width:140px;height:92px;padding:14px 18px;border-radius:14px}
  .brand-marquee{gap:16px;margin-top:26px}
  .brands-sub{font-size:14.5px}
}

.why{background:linear-gradient(150deg,var(--navy) 0%,var(--navy-deep) 58%,var(--navy-ink) 100%);color:#fff;position:relative;overflow:hidden;padding:66px 0}
.why::before{content:"";position:absolute;right:-130px;top:-130px;width:420px;height:420px;border:70px solid rgba(255,255,255,.05);border-radius:50%}
.why::after{content:"";position:absolute;left:-90px;bottom:-90px;width:260px;height:260px;background:radial-gradient(circle,rgba(252,207,8,.14),transparent 70%);border-radius:50%}
.why-wrap{position:relative;z-index:1;display:grid;grid-template-columns:.92fr 1.08fr;gap:54px;align-items:center}
.why-left h2{color:#fff;font-size:clamp(28px,3.6vw,42px)}
.why-left p{color:#c2d6ef;font-size:16.5px;margin:18px 0 28px;max-width:42ch}
.why-right{display:grid;gap:15px}
.why-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.13);border-radius:18px;padding:22px 24px;display:flex;gap:18px;align-items:flex-start;transition:transform .2s,background .2s}
.why-card:hover{transform:translateX(6px);background:rgba(255,255,255,.1)}
.why-card .ic{width:50px;height:50px;border-radius:13px;background:var(--yellow);color:var(--navy-ink);display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.why-card .ic svg{width:25px;height:25px}
.why-card h4{font-size:18px;color:#fff;margin-bottom:5px}
.why-card p{font-size:14.5px;color:#c2d6ef}

.stats{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.stats .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;padding:52px 22px}
.stat{display:flex;flex-direction:column;align-items:center;text-align:center}
.stat .ring{position:relative;width:180px;height:180px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 36% 24%,var(--navy-2),var(--navy) 58%,var(--navy-deep));box-shadow:0 28px 52px -24px rgba(14,57,136,.75),inset 0 2px 0 rgba(255,255,255,.12);transition:transform .3s cubic-bezier(.2,.75,.3,1)}
.stat:hover .ring{transform:translateY(-7px) scale(1.02)}
.stat .ring::before{content:"";position:absolute;inset:-9px;border-radius:50%;border:3px dashed rgba(252,207,8,.55);animation:spin 18s linear infinite}
.stat .ic{width:44px;height:44px;border-radius:13px;background:var(--yellow);color:var(--navy-ink);display:flex;align-items:center;justify-content:center;margin-bottom:9px;box-shadow:0 10px 18px -9px rgba(252,207,8,.95)}
.stat .ic svg{width:24px;height:24px}
.stat .num{font-family:var(--d);font-weight:800;font-size:40px;color:#fff;line-height:1}
.stat .num .y{color:var(--yellow)}
.stat .lbl{margin-top:18px;font-family:var(--d);font-weight:600;font-size:15.5px;color:var(--navy-deep);max-width:15ch}

.proc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:48px;position:relative}
.step{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:30px 24px}
.step .n{position:absolute;top:-18px;left:24px;width:42px;height:42px;border-radius:12px;background:var(--yellow);color:var(--navy-ink);font-family:var(--d);font-weight:800;font-size:18px;display:flex;align-items:center;justify-content:center;box-shadow:var(--sh-y);transform:skewX(-8deg)}
.step .n span{transform:skewX(8deg)}
.step h4{font-size:18px;color:var(--navy-deep);margin:14px 0 7px}
.step p{font-size:15px;color:var(--muted)}


.amc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px;align-items:start}
.amc{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:30px;position:relative}
.amc.pop{border-color:var(--navy);box-shadow:var(--sh);transform:translateY(-8px)}
.amc .tag{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--yellow);color:var(--navy-ink);font-family:var(--d);font-weight:800;font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:6px 16px;border-radius:999px}
.amc .tier{font-family:var(--d);font-weight:800;font-size:15px;letter-spacing:.1em;text-transform:uppercase;color:var(--navy-2)}
.amc .amt{font-family:var(--d);font-weight:800;font-size:38px;color:var(--navy-deep);margin:8px 0 2px}
.amc .amt em{font-style:normal;font-size:14px;color:var(--muted);font-weight:500}
.amc .desc{font-size:14px;color:var(--muted);margin:8px 0 18px;min-height:42px}
.amc .btn{width:100%;justify-content:center}

.areas .chips2{display:flex;flex-wrap:wrap;gap:11px;margin-top:26px}
.areas .chips2 a{display:inline-flex;align-items:center;gap:9px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:13px 18px;font-weight:600;font-size:14.5px;color:var(--navy-deep);transition:.18s}
.areas .chips2 a:hover{background:var(--navy);color:#fff;border-color:transparent}
.areas .chips2 a svg{width:16px;height:16px;color:var(--yellow-deep)}
.areas .chips2 a:hover svg{color:var(--yellow)}

.rev{background:var(--ice-2)}
.g-logo{flex:0 0 auto}
.stars{display:inline-flex;gap:1px;color:#FBBC05;line-height:0}
.stars svg{width:16px;height:16px;fill:currentColor}
.rev-badge{display:inline-flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:11px 20px;margin-top:22px;box-shadow:0 12px 28px -20px rgba(14,57,136,.45)}
.rev-badge .g-logo{width:26px;height:26px}
.rev-badge .rb-txt{display:flex;flex-direction:column;text-align:left;line-height:1.2}
.rb-name{font-family:var(--d);font-weight:700;font-size:14px;color:var(--navy-deep)}
.rb-meta{font-size:12.5px;color:var(--muted);display:flex;align-items:center;gap:6px;margin-top:3px}
.rb-meta b{color:var(--navy-deep)}
.rev-slider{margin-top:44px}
.rev-viewport{overflow:hidden}
.rev-track{display:flex;gap:22px;transition:transform .55s cubic-bezier(.4,0,.2,1);will-change:transform}
.rcard{flex:0 0 calc((100% - 44px)/3);box-sizing:border-box;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:28px;display:flex;flex-direction:column}
.rc-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}
.rc-top .stars svg{width:19px;height:19px}
.rc-g{width:24px;height:24px}
.rcard p{font-size:15.5px;line-height:1.65;margin:0 0 20px;color:var(--ink);flex:1}
.rcard .who{display:flex;align-items:center;gap:12px}
.rcard .av{width:46px;height:46px;border-radius:50%;background:linear-gradient(140deg,var(--navy),var(--navy-2));color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--d);font-weight:800}
.rcard .who b{font-family:var(--d);font-size:15px;color:var(--navy-deep)}
.rcard .who span{font-size:12.5px;color:var(--muted);display:block}
.rev-ctrl{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:30px}
.rev-nav{width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--navy);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .18s,color .18s,border-color .18s}
.rev-nav:hover{background:var(--navy);color:#fff;border-color:transparent}
.rev-nav svg{width:20px;height:20px}
.rev-dots{display:flex;gap:8px}
.rev-dots button{width:9px;height:9px;border-radius:50%;border:none;background:#c4d4e6;cursor:pointer;padding:0;transition:.25s}
.rev-dots button.on{background:var(--navy);width:26px;border-radius:5px}

.faq-wrap{max-width:820px;margin:42px auto 0}
.faq{background:#fff;border:1px solid var(--line);border-radius:14px;margin-bottom:13px;overflow:hidden}
.faq summary{list-style:none;cursor:pointer;padding:20px 22px;font-family:var(--d);font-weight:700;font-size:17.5px;color:var(--navy-deep);display:flex;justify-content:space-between;align-items:center;gap:14px}
.faq summary::-webkit-details-marker{display:none}
.faq summary .pl{flex:0 0 auto;width:26px;height:26px;border-radius:8px;background:var(--ice);color:var(--navy);display:flex;align-items:center;justify-content:center;font-size:20px;transition:.2s}
.faq[open] summary .pl{background:var(--navy);color:#fff;transform:rotate(45deg)}
.faq .ans{padding:0 22px 20px;font-size:15.5px;color:var(--muted)}

.cta{position:relative;background:linear-gradient(120deg,var(--navy-deep),var(--navy-2));color:#fff;overflow:hidden}
.cta::before{content:"";position:absolute;left:-10%;top:0;bottom:0;width:48%;background:var(--yellow);opacity:.07;transform:skewX(-14deg)}
.cta .wrap{position:relative;display:flex;align-items:center;justify-content:space-between;gap:26px;flex-wrap:wrap;padding:62px 22px}
.cta h2{color:#fff;max-width:20ch}
.cta .ctab{display:flex;gap:13px;flex-wrap:wrap}

footer{background:var(--navy-ink);color:#a9c2e0;padding:66px 0 28px;font-size:14.5px}
.fgrid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:40px}
.fb .brand{margin-bottom:14px}
.fb .brand .wm .t1{color:#fff}.fb .brand .wm .t2{color:#90aacb}
.fb p{max-width:34ch;color:#9fbad6;margin-bottom:14px}
.fb .fcontact div{display:flex;gap:9px;align-items:flex-start;margin-bottom:9px}
.fb .fcontact svg{width:16px;height:16px;color:var(--yellow);flex:0 0 auto;margin-top:4px}
.fcol h4{font-family:var(--d);color:#fff;font-size:14px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:16px}
.fcol a{display:block;color:#a9c2e0;margin-bottom:10px;transition:.15s}
.fcol a:hover{color:var(--yellow)}
.fbot{border-top:1px solid rgba(255,255,255,.1);margin-top:46px;padding-top:22px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:13px;color:#86a2c2}
.fbot .soc{display:flex;gap:10px}
.fbot .soc a{width:36px;height:36px;border-radius:10px;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;color:#cfe1f3}
.fbot .soc a:hover{background:var(--yellow);color:var(--navy-ink)}
.fbot .soc svg{width:17px;height:17px}

.wafab{position:fixed;right:20px;bottom:84px;z-index:80;width:56px;height:56px;border-radius:50%;background:var(--yellow);color:var(--navy-ink);display:flex;align-items:center;justify-content:center;box-shadow:0 14px 30px -10px rgba(252,207,8,.85)}
.wafab svg{width:30px;height:30px}
.mbar{display:none}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .6s,transform .6s}
.reveal.in{opacity:1;transform:none}

@media(max-width:1000px){
  .hd{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--white)}
  .hero .wrap{grid-template-columns:1fr;gap:38px}
  .hero{padding-bottom:96px}
  .bookcard{margin:0 auto;max-width:480px}
  .about-grid{grid-template-columns:1fr;gap:40px}
  .av-frame{aspect-ratio:16/10}
  .gal-grid{grid-template-columns:1fr 1fr}
  .gal.tall{grid-row:auto}
  .usp-grid{grid-template-columns:1fr 1fr}
  .svc-grid{grid-template-columns:1fr 1fr}
  .why-wrap{grid-template-columns:1fr;gap:34px}
  .stats .wrap{grid-template-columns:1fr 1fr;gap:30px}
  .proc-grid{grid-template-columns:1fr 1fr;gap:30px}
  .amc-grid,.rev-grid{grid-template-columns:1fr}
  .fgrid{grid-template-columns:1fr 1fr}
  .menu{position:fixed;inset:0 0 0 auto;width:min(340px,90vw);background:#fff;flex-direction:column;align-items:stretch;gap:0;padding:0 0 24px;box-shadow:-24px 0 70px -24px rgba(8,29,71,.55);transform:translateX(105%);transition:transform .32s cubic-bezier(.4,0,.2,1);overflow-y:auto;z-index:95;-webkit-overflow-scrolling:touch}
  .menu.open{transform:none}
  .menu-head{display:flex;align-items:center;justify-content:space-between;padding:19px 22px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff;z-index:2}
  .menu-title{font-family:var(--d);font-weight:700;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--navy-2)}
  .menu-close{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--navy-deep);cursor:pointer}
  .menu-close svg{width:20px;height:20px}
  .menu>a{padding:15px 22px;width:100%;border-bottom:1px solid var(--line);font-size:16px}
  .mdd{width:100%;border-bottom:1px solid var(--line)}
  .mdd>span{padding:15px 22px;justify-content:space-between;width:100%;font-size:16px}
  .mega{position:static;opacity:1;visibility:visible;transform:none;left:auto;width:100%;box-shadow:none;border:none;border-radius:0;grid-template-columns:1fr;padding:0;background:var(--ice-2);max-height:0;overflow:hidden;transition:max-height .32s ease}
  .mdd:hover>.mega,.mdd.open .mega{transform:none;left:auto}
  .mdd.open .mega{max-height:1400px;padding:8px 0 12px}
  .mega::before{display:none}
  .mega h5{padding:10px 22px 2px}
  .mega a{padding:11px 22px;border-radius:0}
  .mega .promo{margin:8px 18px 4px;border-radius:12px}
  .menu-cta{display:flex;flex-direction:column;gap:10px;padding:22px 22px 4px}
  .menu-cta .btn{width:100%;justify-content:center}
  .nav-book{padding:10px 16px;font-size:13.5px}
  .burger{display:block}
  .ov{position:fixed;inset:0;background:rgba(8,29,71,.5);opacity:0;visibility:hidden;transition:.3s;z-index:87}
  .ov.open{opacity:1;visibility:visible}
  .mbar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:81;background:#fff;border-top:1px solid var(--line);box-shadow:0 -8px 24px -12px rgba(0,0,0,.3)}
  .mbar a{flex:1;text-align:center;padding:11px 4px;font-family:var(--d);font-weight:700;font-size:11.5px;color:var(--navy-deep);display:flex;flex-direction:column;align-items:center;gap:4px}
  .mbar a svg{width:21px;height:21px}
  .mbar a.wa{background:var(--yellow);color:var(--navy-ink)}
  .mbar a.cl{background:var(--navy);color:#fff}
  .wafab{bottom:78px}
  body{padding-bottom:60px}
}
@media(max-width:600px){
  .section{padding:62px 0}
  .nav{height:70px}
  .brand .wm{display:none}
  .brand-logo{height:40px}
  .brand-logo-footer{height:50px}
  .nav-book{padding:9px 15px;font-size:13px}
  .about-stats{grid-template-columns:1fr 1fr}
  .gal-grid{grid-template-columns:1fr;grid-auto-rows:210px}
  .gal.wide,.gal.tall{grid-column:auto;grid-row:auto}
  .usp-grid,.svc-grid,.stats .wrap,.proc-grid{grid-template-columns:1fr}
  .pricecard ul{grid-template-columns:1fr}
  .fgrid{grid-template-columns:1fr}
  .cta .wrap{flex-direction:column;align-items:flex-start}
  .temp{right:4px}.h24{left:2px}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}


/* ===== multi-page additions ===== */
.menu>a.active,.mdd.active>span{color:var(--navy)}
.menu>a.active{position:relative}
@media(min-width:1001px){.menu>a.active::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--yellow);border-radius:2px}}

/* page hero (inner pages) */
.phero{position:relative;background:linear-gradient(120deg,var(--navy-ink),var(--navy) 60%,var(--navy-2));color:#fff;overflow:hidden;padding:62px 0 70px}
.phero::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:54px;z-index:2;background:var(--white);clip-path:polygon(0 100%,100% 100%,100% 42%,0 100%)}
.phero .glow{position:absolute;inset:0;background:radial-gradient(700px 360px at 85% -20%,rgba(252,207,8,.16),transparent 60%);pointer-events:none}
.phero .wrap{position:relative;z-index:1}
.phero h1{font-size:clamp(30px,4.4vw,48px);color:#fff;text-transform:capitalize}
.phero p{color:#c6d8ef;font-size:17px;margin-top:12px;max-width:60ch}
.crumb{display:flex;flex-wrap:wrap;gap:7px;align-items:center;font-size:13.5px;color:#a9c2e0;margin-bottom:16px}
.crumb a{color:#dceaf8}.crumb a:hover{color:var(--yellow)}
.crumb span{color:#7e9bc0}

/* service detail two-column */
.sd-grid{display:grid;grid-template-columns:1fr 360px;gap:40px;align-items:start}
.sd-body h2{color:var(--navy-deep);font-size:clamp(23px,2.6vw,30px);margin:34px 0 12px}
.sd-body h2:first-child{margin-top:0}
.sd-body p{color:var(--muted);font-size:16.5px;margin-bottom:14px}
.sd-list{list-style:none;display:grid;gap:11px;margin:6px 0 18px}
.sd-list li{display:flex;gap:11px;align-items:flex-start;font-size:16px;color:var(--ink)}
.sd-list .ck{flex:0 0 auto;width:24px;height:24px;border-radius:7px;background:var(--navy);color:var(--yellow);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;margin-top:1px}
.sd-aside{position:sticky;top:104px;display:grid;gap:16px}
.sd-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh);overflow:hidden}
.sd-card .top{background:linear-gradient(140deg,var(--navy),var(--navy-2));color:#fff;padding:20px 22px}
.sd-card .top h3{color:#fff;font-size:19px}
.sd-card .top p{color:#c6d8ef;font-size:12.5px;margin-top:4px}
.sd-card .bd{padding:18px 22px 22px;display:grid;gap:10px}
.sd-card .bd .btn{width:100%;justify-content:center}
.sd-rel{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}
.sd-rel a{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 18px;font-family:var(--d);font-weight:600;color:var(--navy-deep);transition:.18s}
.sd-rel a:hover{background:var(--navy);color:#fff;border-color:transparent}
.sd-rel a svg{width:17px;height:17px}

/* generic prose (legal/about) */
.prose{max-width:820px}
.prose h2{color:var(--navy-deep);font-size:24px;margin:30px 0 10px}
.prose h3{color:var(--navy-deep);font-size:18px;margin:22px 0 8px}
.prose p,.prose li{color:var(--muted);font-size:16.5px;margin-bottom:12px}
.prose ul{padding-left:20px;margin-bottom:14px}
.prose a{color:var(--navy);text-decoration:underline}

/* contact */
.contact-grid{display:grid;grid-template-columns:1fr 420px;gap:40px;align-items:start}
.cinfo .ci{display:flex;gap:14px;align-items:flex-start;margin-bottom:22px}
.cinfo .ci .ic{width:48px;height:48px;border-radius:13px;background:var(--ice);color:var(--navy);display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.cinfo .ci .ic svg{width:23px;height:23px}
.cinfo .ci h4{font-size:16px;color:var(--navy-deep)}
.cinfo .ci p,.cinfo .ci a{font-size:15px;color:var(--muted)}
.cinfo .ci a:hover{color:var(--navy)}
.notice{padding:13px 16px;border-radius:12px;font-size:14.5px;margin-bottom:16px}
.notice.ok{background:#e7f7ee;border:1px solid #b6e4c8;color:#1c7a45}
.notice.err{background:#fdeaea;border:1px solid #f3c2c2;color:#b23b3b}

/* 404 */
.e404{text-align:center;padding:90px 0}
.e404 .big{font-family:var(--d);font-weight:800;font-size:clamp(90px,18vw,180px);line-height:.9;color:var(--navy);letter-spacing:-.04em}
.e404 .big span{color:var(--yellow)}
.e404 h1{font-size:clamp(24px,3vw,34px);color:var(--navy-deep);margin:10px 0 12px}
.e404 p{color:var(--muted);font-size:17px;max-width:46ch;margin:0 auto 24px}
.e404 .btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}

@media(max-width:900px){
  .sd-grid{grid-template-columns:1fr}
  .sd-aside{position:static}
  .contact-grid{grid-template-columns:1fr}
  .sd-rel{grid-template-columns:1fr}
}


/* ============================================================
   HOMEPAGE REDESIGN SECTIONS (navy/yellow theme)
   ============================================================ */

/* Hero trust row */
.hero-trust{display:flex;flex-wrap:wrap;gap:8px 12px;margin-bottom:22px}
.hero-trust span{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);padding:7px 13px;border-radius:999px;font-family:var(--d);font-weight:600;font-size:13px;color:#eaf2fb}
.hero-trust svg{width:16px;height:16px;color:var(--yellow)}
/* Hero mini-stats */
.hero-stats{display:flex;flex-wrap:wrap;gap:20px 34px;margin-top:32px;padding-top:26px;border-top:1px solid rgba(255,255,255,.14)}
.hero-stats div{display:flex;flex-direction:column}
.hero-stats b{font-family:var(--d);font-weight:800;font-size:28px;color:var(--yellow);line-height:1}
.hero-stats span{font-size:12.5px;color:#c6d8ef;margin-top:5px}
/* Hero form header tag + highlight */
.hf-tag{display:inline-block;background:var(--yellow);color:var(--navy-ink);font-family:var(--d);font-weight:800;font-size:11px;letter-spacing:.05em;text-transform:uppercase;padding:5px 12px;border-radius:999px;margin-bottom:11px}
.bc-top h3 em{font-style:normal;color:var(--yellow)}

/* Core services (elegant svc cards) */
.core .eyebrow{justify-content:center}
.core .svc{display:block;color:inherit}
.core .svc-img{aspect-ratio:16/11}
.core .svc .go{display:inline-flex;align-items:center;gap:7px;margin-top:4px;font-family:var(--d);font-weight:700;font-size:13.5px;color:var(--navy)}
.core .svc .go svg{width:16px;height:16px;transition:transform .2s}
.core .svc:hover .go svg{transform:translateX(4px)}

/* Comfort in 3 steps */
.comfort-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:54px;align-items:center}
.comfort-left .eyebrow{margin-bottom:14px}
.comfort-left h2{font-size:clamp(28px,3.6vw,42px);color:var(--navy-deep)}
.comfort-left .lead{color:var(--muted);font-size:17.5px;margin:14px 0 24px;max-width:50ch}
.cstep{display:flex;gap:16px;align-items:flex-start;padding:16px 0;border-top:1px solid var(--line)}
.cstep .cs-n{flex:0 0 auto;width:42px;height:42px;border-radius:13px;background:linear-gradient(140deg,var(--navy),var(--navy-2));color:var(--yellow);font-family:var(--d);font-weight:800;font-size:18px;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 20px -10px rgba(14,57,136,.7)}
.cstep h4{font-size:18px;color:var(--navy-deep);margin-bottom:4px}
.cstep p{font-size:15px;color:var(--muted)}
.cfeats{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.cfeats span{display:inline-flex;align-items:center;gap:8px;background:var(--ice);border:1px solid var(--line);border-radius:999px;padding:9px 15px;font-family:var(--d);font-weight:600;font-size:13.5px;color:var(--navy-deep)}
.cfeats svg{width:17px;height:17px;color:var(--navy)}
.cr-frame{position:relative;border-radius:24px;overflow:hidden;aspect-ratio:4/3.6;border:1px solid var(--line);box-shadow:0 40px 70px -45px rgba(14,57,136,.6)}

/* Why choose — colourful stat cards */
.whychoose .eyebrow{justify-content:center}
.ws-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:46px}
.wsc{border-radius:var(--r-lg);padding:30px 26px;border:1px solid var(--line);transition:transform .25s,box-shadow .25s}
.wsc:hover{transform:translateY(-6px);box-shadow:0 26px 50px -30px rgba(14,57,136,.5)}
.wsc .ws-num{font-family:var(--d);font-weight:800;font-size:46px;line-height:1;color:var(--navy-deep);display:block}
.wsc .ws-num .y{color:var(--navy-2)}
.wsc .ws-lbl{display:block;margin-top:14px;font-size:14.5px;color:#48566c;font-weight:500}
.wsc.t-lav{background:#eef0fc}.wsc.t-lav .ws-num .y{color:#6b6ce0}
.wsc.t-yel{background:#fff6e0}.wsc.t-yel .ws-num{color:#9a7b00}.wsc.t-yel .ws-num .y{color:var(--yellow-deep)}
.wsc.t-pnk{background:#fdeef2}.wsc.t-pnk .ws-num .y{color:#d8628a}
.wsc.t-grn{background:#e8f7ee}.wsc.t-grn .ws-num .y{color:#2faa5e}

/* Showcase CTA band */
.showcase{position:relative;min-height:clamp(360px,46vw,500px);overflow:hidden;display:flex;align-items:center}
.showcase .sc-img{position:absolute;inset:0;width:100%;height:100%}
.showcase .sc-img::after{content:"";position:absolute;inset:0;z-index:3;background:linear-gradient(100deg,rgba(7,24,63,.94) 0%,rgba(11,38,90,.82) 46%,rgba(8,29,71,.4) 100%)}
.showcase .sc-inner{position:relative;z-index:4;width:100%;max-width:var(--maxw);margin:0 auto;padding:64px 22px}
.sc-content{max-width:600px;color:#fff}
.sc-content .eyebrow{margin-bottom:16px}
.sc-content h2{font-size:clamp(28px,3.8vw,46px);color:#fff;text-shadow:0 2px 22px rgba(4,14,40,.45)}
.sc-content>p{font-size:18px;color:#dbe8f6;margin:16px 0 28px;max-width:52ch}
.sc-cta{display:flex;flex-wrap:wrap;gap:13px}
.sc-trust{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:24px}
.sc-trust span{display:inline-flex;align-items:center;gap:8px;font-family:var(--d);font-weight:600;font-size:14px;color:#dceaf8}
.sc-trust svg{width:16px;height:16px;color:var(--yellow)}

/* Premium units */
.units{background:var(--ice-2)}
.units .eyebrow{justify-content:center}
.units-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:46px}
.unit{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;transition:transform .25s,box-shadow .25s}
.unit:hover{transform:translateY(-6px);box-shadow:var(--sh)}
.unit .u-img{position:relative;aspect-ratio:16/10;width:100%;background:linear-gradient(160deg,#fff,#eef4fb)}
.unit .u-body{padding:24px;position:relative}
.unit .u-brand{position:absolute;top:-26px;left:24px;width:60px;height:42px;background:#fff;border:1px solid var(--line);border-radius:12px;display:flex;align-items:center;justify-content:center;padding:7px;box-shadow:0 12px 24px -14px rgba(14,57,136,.5)}
.unit .u-brand img{max-width:100%;max-height:100%;object-fit:contain}
.unit h3{font-size:19px;color:var(--navy-deep);margin-top:10px}
.unit p{font-size:15px;color:var(--muted);margin:8px 0 16px}
.unit .btn{width:100%;justify-content:center}

/* Current offers */
.offers .eyebrow{justify-content:center}
.offers-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:46px}
.offer{position:relative;display:block;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line);aspect-ratio:4/3.5;transition:transform .25s,box-shadow .25s}
.offer:hover{transform:translateY(-6px);box-shadow:var(--sh)}
.offer .of-img{position:absolute;inset:0;width:100%;height:100%}
.offer .of-img::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(8,29,71,.05) 30%,rgba(8,29,71,.9) 100%)}
.offer .of-cap{position:absolute;left:0;right:0;bottom:0;z-index:3;padding:24px;color:#fff}
.offer .of-tag{display:inline-block;background:var(--yellow);color:var(--navy-ink);font-family:var(--d);font-weight:800;font-size:11px;letter-spacing:.05em;text-transform:uppercase;padding:5px 12px;border-radius:999px;margin-bottom:10px}
.offer .of-cap h3{font-size:20px;color:#fff;letter-spacing:-.01em}
.offer .go{display:inline-flex;align-items:center;gap:7px;margin-top:9px;font-family:var(--d);font-weight:700;font-size:13.5px;color:var(--yellow)}
.offer .go svg{width:16px;height:16px;transition:transform .2s}
.offer:hover .go svg{transform:translateX(4px)}

/* FAQ heading eyebrow centred */
.faqsec .eyebrow{justify-content:center}

/* Insights / blog */
.insights{background:var(--ice-2)}
.insights .eyebrow{justify-content:center}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px}
.bpost{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;color:inherit;box-shadow:0 16px 40px -28px rgba(14,57,136,.4);transition:transform .25s,box-shadow .25s}
.bpost:hover{transform:translateY(-6px);box-shadow:var(--sh)}
.bpost .bp-img{position:relative;aspect-ratio:16/10;width:100%}
.bpost .bp-cat{position:absolute;top:14px;left:14px;z-index:3;background:var(--yellow);color:var(--navy-ink);font-family:var(--d);font-weight:700;font-size:11px;letter-spacing:.04em;text-transform:uppercase;padding:5px 12px;border-radius:999px}
.bpost .bp-body{padding:22px 24px 24px;display:flex;flex-direction:column;flex:1}
.bp-meta{font-family:var(--d);font-size:12.5px;font-weight:600;color:var(--muted);letter-spacing:.02em}
.bpost h3{font-size:18.5px;color:var(--navy-deep);margin:9px 0 10px;line-height:1.3}
.bp-excerpt{font-size:14.5px;color:var(--muted);margin-bottom:16px;flex:1}
.bpost .bp-more{display:inline-flex;align-items:center;gap:7px;font-family:var(--d);font-weight:700;font-size:13.5px;color:var(--navy);margin-top:auto}
.bpost .bp-more svg{width:16px;height:16px;transition:transform .2s}
.bpost:hover .bp-more svg{transform:translateX(4px)}
.blog-more{text-align:center;margin-top:34px}
/* blog single post */
.post-wrap{max-width:820px;margin:0 auto}
.post-hero-img{border-radius:var(--r-lg);aspect-ratio:16/8;border:1px solid var(--line);margin-bottom:30px;overflow:hidden}
.post-cta{margin-top:34px;background:linear-gradient(135deg,var(--navy),var(--navy-2));color:#fff;border-radius:var(--r-lg);padding:26px 30px;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.post-cta h3{color:#fff;font-size:20px}
.post-cta p{color:#cfe0f5;font-size:14.5px;margin-top:4px}

/* Get in touch (FAQ) */
.getintouch-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:48px;align-items:start}
.git-info{position:sticky;top:104px}
.git-info .eyebrow{margin-bottom:14px}
.git-info h2{font-size:clamp(28px,3.4vw,40px);color:var(--navy-deep)}
.git-info .lead{color:var(--muted);font-size:17px;margin:14px 0 24px;max-width:42ch}
.git-cta{display:flex;flex-wrap:wrap;gap:12px}
.git-faq .faq{margin-bottom:13px}

/* Serving areas — dark band */
.serving{background:linear-gradient(150deg,var(--navy) 0%,var(--navy-deep) 58%,var(--navy-ink) 100%);color:#fff;padding:62px 0;position:relative;overflow:hidden}
.serving::before{content:"";position:absolute;right:-120px;top:-120px;width:380px;height:380px;border:64px solid rgba(255,255,255,.05);border-radius:50%}
.serving .wrap{position:relative;z-index:1}
.serving h2{color:#fff;font-size:clamp(26px,3.4vw,40px);margin-top:10px}
.serving-sub{color:#c2d6ef;font-size:16.5px;margin:14px auto 0;max-width:56ch}
.serving-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:44px;max-width:780px;margin-left:auto;margin-right:auto}
.serving-grid a{display:flex;align-items:center;justify-content:center;gap:9px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:16px 18px;font-family:var(--d);font-weight:600;font-size:15px;color:#eaf2fb;transition:.2s}
.serving-grid a::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--yellow);flex:0 0 auto}
.serving-grid a:hover{background:var(--yellow);color:var(--navy-ink);border-color:transparent}
.serving-grid a:hover::before{background:var(--navy-ink)}

@media(max-width:1000px){
  .core-grid,.units-grid,.offers-grid,.blog-grid{grid-template-columns:1fr 1fr}
  .comfort-grid{grid-template-columns:1fr;gap:36px}
  .ws-grid{grid-template-columns:1fr 1fr}
  .getintouch-grid{grid-template-columns:1fr;gap:30px}
  .git-info{position:static}
  .serving-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .core-grid,.units-grid,.offers-grid,.blog-grid,.ws-grid,.serving-grid{grid-template-columns:1fr}
  .git-form{padding:22px}
}


/* ============================================================
   HERO v2 — CoolFix-style (photo right, blue angled panel left)
   ============================================================ */
.hero2{position:relative;overflow:hidden;background:var(--navy-deep);min-height:clamp(560px,64vw,660px)}
.hero2-photo{position:absolute;inset:0;z-index:0;overflow:hidden;background:linear-gradient(150deg,#dbe7f6,#c2d6ee);display:flex;align-items:center;justify-content:center}
.hero2-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:72% 28%;z-index:1}
.hero2-photo .phl{position:relative;z-index:0;display:flex;flex-direction:column;align-items:center;gap:7px;color:#7e96b6;font-family:var(--d);font-weight:600;font-size:12px;text-align:center;padding:14px}
.hero2-photo .phl svg{width:30px;height:30px;opacity:.55}
.hero2-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(140deg,var(--navy) 0%,var(--navy-deep) 60%,var(--navy-ink) 100%);clip-path:polygon(0 0,52% 0,72% 100%,0 100%)}
.hero2-overlay::after{content:"";position:absolute;inset:0;background:var(--navy-2);opacity:.85;clip-path:polygon(52% 0,66% 0,86% 100%,72% 100%)}
.hero2-band{position:absolute;left:0;right:0;bottom:0;z-index:1;height:clamp(122px,18vw,168px);background:linear-gradient(90deg,var(--navy-ink),var(--navy-deep))}
.hero2-deco{position:absolute;right:6%;bottom:21%;z-index:1;width:clamp(150px,20vw,250px);height:auto;color:#fff;opacity:.08;pointer-events:none}
.hero2-wrap{position:relative;z-index:2;display:flex;align-items:center;min-height:clamp(560px,64vw,660px);padding-top:46px;padding-bottom:clamp(150px,20vw,200px)}
.hero2-copy{max-width:520px;color:#fff}
.hero2-eyebrow{display:inline-flex;align-items:center;gap:9px;font-family:var(--d);font-weight:700;font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:#bcd6f0;margin-bottom:16px}
.hero2-eyebrow svg{width:16px;height:16px;color:var(--yellow)}
.hero2-copy h1{font-size:clamp(34px,5vw,56px);line-height:1.04;color:#fff;letter-spacing:-.02em;text-shadow:0 2px 20px rgba(4,14,40,.4)}
.hero2-copy p{font-size:17px;color:#dbe8f6;margin:18px 0 30px;max-width:42ch}
.hero2-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap}
.hero2-cta{border-radius:999px;padding:16px 32px}
.hero2-rating{display:flex;flex-direction:column;gap:6px}
.hero2-rating .stars{display:inline-flex;gap:2px;color:var(--yellow)}
.hero2-rating .stars svg{width:21px;height:21px;fill:currentColor}
.hero2-rating .rate-txt{font-size:14px;color:#dbe8f6}
.hero2-rating .rate-txt b{font-family:var(--d);font-weight:800;color:#fff}
.hero2-stats{position:absolute;left:0;right:0;bottom:0;z-index:2;height:clamp(122px,18vw,168px);display:flex;align-items:center}
.hero2-stats .wrap{display:flex;justify-content:space-between;align-items:center;gap:24px;width:100%}
.h2s-group{display:flex;align-items:center;gap:clamp(22px,4vw,60px);text-align:center;margin-left:auto}
.h2s+.h2s{border-left:1px solid rgba(255,255,255,.18);padding-left:clamp(22px,4vw,60px)}
/* Malaysia trust badge (left of stats band) */
.hero2-trustbadge{display:flex;align-items:center;gap:13px;color:#fff;flex:0 0 auto;max-width:300px}
.tb-ring{width:54px;height:54px;border-radius:50%;background:rgba(252,207,8,.14);border:1.5px solid rgba(252,207,8,.55);display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.tb-ring svg{width:27px;height:27px;color:var(--yellow)}
.tb-txt b{font-family:var(--d);font-weight:800;font-size:15px;color:#fff;display:block;line-height:1.2}
.tb-txt span{font-size:12.5px;color:#cfe0f5;display:block;margin-top:3px;max-width:24ch}
.h2s b{font-family:var(--d);font-weight:800;font-size:clamp(26px,3.4vw,40px);color:#fff;display:block;line-height:1}
.h2s span{font-size:13.5px;color:#cfe0f5;margin-top:7px;display:block}

@media(max-width:900px){
  .hero2{min-height:auto}
  .hero2-overlay{clip-path:none;background:linear-gradient(165deg,rgba(14,57,136,.92),rgba(8,29,71,.97))}
  .hero2-band{display:none}
  .hero2-deco{display:none}
  .hero2-wrap{min-height:auto;display:block;padding-top:48px;padding-bottom:40px}
  .hero2-copy{max-width:none}
  .hero2-photo img{object-position:center}
  .hero2-stats{position:static;height:auto;background:linear-gradient(90deg,var(--navy-ink),var(--navy-deep));padding:24px 0}
  .hero2-stats .wrap{flex-direction:column;align-items:flex-start;gap:20px}
  .hero2-trustbadge{max-width:none}
  .h2s-group{margin-left:0;flex-wrap:wrap;gap:18px 26px}
}
@media(max-width:560px){
  .hero2-stats .wrap{gap:18px}
  .h2s{flex:1 1 40%}
  .hero2-actions{gap:18px}
}


/* ============================================================
   SERVICES — bento grid (all services)
   ============================================================ */
.services2{background:linear-gradient(180deg,#fff,var(--ice-2))}
.services2 .eyebrow{justify-content:center}
.bento-panel{margin-top:32px;background:none;border:none;padding:0}
.bento-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(14px,1.6vw,20px);align-items:start}
.bento{grid-column:span 6;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;color:inherit;box-shadow:0 16px 40px -26px rgba(14,57,136,.4);transition:transform .25s,box-shadow .25s}
.bento:hover{transform:translateY(-5px);box-shadow:var(--sh)}
.bento.b-wide{grid-column:span 7}
.bento.b-narrow{grid-column:span 5}
.bento-head{padding:24px 24px 18px}
.bento-head h3{font-size:20px;color:var(--navy-deep)}
.bento-head p{font-size:14.5px;color:var(--muted);margin-top:8px;max-width:46ch}
.bento-link{display:inline-flex;align-items:center;gap:7px;margin-top:15px;font-family:var(--d);font-weight:700;font-size:13.5px;color:var(--navy);background:none}
.bento-link svg{width:16px;height:16px;transition:transform .2s}
.bento:hover .bento-link svg{transform:translateX(4px)}
.bento-img{position:relative;aspect-ratio:16/10;flex:none}
.bento-badge{position:absolute;left:14px;bottom:14px;z-index:3;display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:999px;padding:6px 14px 6px 6px;box-shadow:0 10px 24px -12px rgba(14,57,136,.55)}
.bento-badge .avs{display:flex}
.bento-badge .av{width:27px;height:27px;border-radius:50%;border:2px solid #fff;margin-left:-9px;background:linear-gradient(140deg,var(--navy),var(--navy-2));display:flex;align-items:center;justify-content:center;color:#fff;overflow:hidden}
.bento-badge .av:first-child{margin-left:0}
.bento-badge .av svg{width:15px;height:15px}
.bento-badge b{font-family:var(--d);font-weight:700;font-size:12.5px;color:var(--navy-deep)}

@media(max-width:900px){
  .bento,.bento.b-wide,.bento.b-narrow{grid-column:span 6}
}
@media(max-width:600px){
  .bento,.bento.b-wide,.bento.b-narrow{grid-column:span 12}
}
