:root{
  --navy:#01244E;
  --orange:#F87B1C;
  --white:#FFFFFF;
  --soft-grey:#F5F7FA;
  --grey-text:#6B7686;
  --line:#E5E8EE;
  --green:#1FA463;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{background:var(--white);color:var(--navy);font-family:'Inter',sans-serif;-webkit-font-smoothing:antialiased;}
.wrap{max-width:1200px;margin:0 auto;padding:0 32px;}
a{color:inherit;text-decoration:none;}
.big-type{font-weight:900;letter-spacing:-0.025em;}
input,select{font-family:'Inter',sans-serif;}

.logo-mark{position:relative;width:34px;height:34px;flex-shrink:0;}
.logo-mark .sq-navy{position:absolute;top:0;left:10px;width:24px;height:24px;border:3px solid var(--navy);}
.logo-mark .sq-orange{position:absolute;bottom:0;left:0;width:24px;height:24px;border:3px solid var(--orange);}
.logo-mark .sq-fill{position:absolute;top:8px;left:14px;width:12px;height:12px;background:var(--orange);}
.logo-lockup{display:flex;align-items:center;gap:10px;}
.logo-text{font-weight:800;font-size:22px;}
.logo-text .co{color:var(--orange);}
.logo-sub{display:block;font-size:9px;letter-spacing:0.18em;color:var(--navy);font-weight:700;margin-top:1px;}

nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,0.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);}
nav .wrap{display:flex;align-items:center;justify-content:space-between;height:80px;}
.navlinks{display:flex;gap:30px;font-size:14px;font-weight:600;color:var(--grey-text);}
.navlinks a:hover,.navlinks a.active{color:var(--navy);}
.navlinks a.active{color:var(--orange);}
.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border-radius:8px;font-size:14.5px;font-weight:700;cursor:pointer;transition:all .2s;border:none;font-family:'Inter',sans-serif;}
.btn-primary{background:var(--orange);color:#fff;box-shadow:0 8px 20px rgba(248,123,28,0.25);}
.btn-primary:hover{background:#E06D0F;transform:translateY(-1px);}
.btn-outline{border:1.5px solid var(--navy);color:var(--navy);background:transparent;}
.btn-outline:hover{background:var(--navy);color:#fff;}
@media (max-width:900px){.navlinks{display:none;}}

.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.2,.7,.3,1),transform .7s cubic-bezier(.2,.7,.3,1);}
.reveal.is-visible{opacity:1;transform:translateY(0);}

/* PAGE HEADER (used on inner pages instead of full hero) */
.page-header{padding:60px 0 50px;background:linear-gradient(180deg,#fff 0%,var(--soft-grey) 100%);}
.page-header .kicker{margin-bottom:16px;}
.page-header h1{font-size:clamp(32px,4.4vw,50px);line-height:1.08;max-width:760px;}
.page-header p{font-size:16.5px;color:var(--grey-text);margin-top:16px;max-width:600px;font-weight:500;line-height:1.6;}
.breadcrumb{font-size:13px;color:var(--grey-text);font-weight:600;margin-bottom:20px;}
.breadcrumb a:hover{color:var(--orange);}

section{padding:80px 0;}
.section-soft{background:var(--soft-grey);}
.kicker{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:800;letter-spacing:0.06em;text-transform:uppercase;color:var(--orange);margin-bottom:16px;}
.kicker::before{content:"";width:14px;height:14px;border:2px solid var(--orange);}
.section-head h2{font-size:clamp(28px,3.6vw,42px);line-height:1.1;max-width:680px;}
.section-head p{color:var(--grey-text);font-size:16px;margin-top:14px;max-width:540px;font-weight:500;}

.stat-band{background:var(--navy);border-radius:16px;padding:46px 40px;display:grid;grid-template-columns:repeat(4,1fr);gap:24px;position:relative;overflow:hidden;}
.stat-band::before{content:"";position:absolute;top:-40px;right:-40px;width:200px;height:200px;border:3px solid rgba(248,123,28,0.15);border-radius:50%;}
.stat-item b{display:block;font-size:36px;font-weight:900;color:var(--orange);}
.stat-item b .count-num{color:inherit;font-size:inherit;font-weight:inherit;}
.stat-item .stat-label{display:block;font-size:12px;color:rgba(255,255,255,0.6);font-weight:700;text-transform:uppercase;letter-spacing:0.04em;}
@media (max-width:800px){.stat-band{grid-template-columns:1fr 1fr;}}

.feature-blocks{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:56px;}
.feature-block{border-radius:16px;padding:40px;}
.feature-block.light{background:var(--soft-grey);}
.feature-block.dark{background:var(--navy);color:#fff;}
.fb-icon{width:52px;height:52px;border-radius:12px;background:rgba(248,123,28,0.12);display:flex;align-items:center;justify-content:center;margin-bottom:24px;font-size:22px;}
.feature-block.dark .fb-icon{background:rgba(248,123,28,0.2);}
.feature-block h3{font-size:23px;font-weight:800;margin-bottom:14px;}
.feature-block p{font-size:14.5px;color:var(--grey-text);margin-bottom:22px;line-height:1.65;font-weight:500;}
.feature-block.dark p{color:rgba(255,255,255,0.65);}
.feature-block ul{list-style:none;}
.feature-block li{display:flex;align-items:center;gap:10px;padding:9px 0;font-size:13.5px;font-weight:700;}
.feature-block li .check{width:16px;height:16px;border-radius:50%;background:rgba(31,164,99,0.15);color:var(--green);display:flex;align-items:center;justify-content:center;font-size:9px;flex-shrink:0;}
@media (max-width:820px){.feature-blocks{grid-template-columns:1fr;}}

.gallery-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;grid-template-rows:200px 200px;gap:16px;margin-top:56px;}
.g-item{border-radius:12px;overflow:hidden;cursor:pointer;position:relative;}
.g-item.g-tall{grid-row:span 2;}
.g-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s;}
.g-item:hover img{transform:scale(1.06);}
@media (max-width:820px){.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:160px 160px 160px;}.g-item.g-tall{grid-row:span 1;}}

.lightbox{position:fixed;inset:0;background:rgba(1,10,20,0.94);z-index:100;display:none;align-items:center;justify-content:center;padding:40px;}
.lightbox.active{display:flex;}
.lightbox img{max-width:90vw;max-height:85vh;border-radius:8px;}
.lightbox-close{position:absolute;top:24px;right:32px;color:#fff;font-size:32px;cursor:pointer;background:none;border:none;}

.loc-tabs{display:flex;gap:12px;margin-top:48px;margin-bottom:40px;flex-wrap:wrap;}
.loc-tab{padding:14px 24px;border-radius:100px;font-size:14px;font-weight:700;cursor:pointer;border:1.5px solid var(--line);background:#fff;display:flex;align-items:center;gap:8px;transition:all .2s;}
.loc-tab.active{background:var(--navy);color:#fff;border-color:var(--navy);}
.loc-tab .dot{width:7px;height:7px;border-radius:50%;background:var(--green);}
.loc-tab .badge-soon{font-size:10px;background:rgba(248,123,28,0.12);color:var(--orange);padding:3px 8px;border-radius:100px;font-weight:800;text-transform:uppercase;}
.loc-panel{display:none;}
.loc-panel.active{display:grid;grid-template-columns:1.1fr 0.9fr;gap:0;border-radius:16px;overflow:hidden;box-shadow:0 20px 50px rgba(1,36,78,0.08);border:1px solid var(--line);}
.loc-panel-photo{min-height:440px;background-size:cover;background-position:center;position:relative;}
.loc-panel-photo-ph{min-height:440px;background:#EEF0F4;display:flex;align-items:center;justify-content:center;}
.loc-panel-photo-ph span{font-size:12px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;color:rgba(1,36,78,0.35);border:1px dashed rgba(1,36,78,0.25);padding:10px 18px;border-radius:6px;}
.loc-panel-badge{position:absolute;top:20px;left:20px;background:var(--navy);color:#fff;font-size:11px;font-weight:800;padding:8px 16px;border-radius:100px;text-transform:uppercase;letter-spacing:0.04em;}
.loc-panel-info{padding:40px;background:#fff;}
.loc-panel-info h3{font-size:26px;font-weight:900;margin-bottom:10px;}
.loc-panel-info .addr{font-size:14px;color:var(--grey-text);margin-bottom:24px;line-height:1.6;display:flex;gap:10px;}
.loc-feature-list{list-style:none;margin-bottom:28px;}
.loc-feature-list li{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--line);font-size:14px;font-weight:600;}
.loc-feature-list li:first-child{border-top:none;}
.loc-feature-list li .check{width:18px;height:18px;border-radius:50%;background:rgba(31,164,99,0.12);color:var(--green);display:flex;align-items:center;justify-content:center;font-size:11px;flex-shrink:0;}
.price-lock{background:var(--soft-grey);border-radius:10px;padding:18px 20px;display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;}
.price-lock .pl-label{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:0.04em;color:var(--grey-text);}
.price-lock .pl-value{font-size:20px;font-weight:900;color:var(--navy);}
@media (max-width:900px){.loc-panel.active{grid-template-columns:1fr;}}

.book-band{display:grid;grid-template-columns:1fr 1fr;border-radius:16px;overflow:hidden;margin-top:56px;box-shadow:0 24px 60px rgba(1,36,78,0.1);}
.book-info{background:var(--navy);color:#fff;padding:48px;display:flex;flex-direction:column;justify-content:center;}
.book-info .kicker{color:var(--orange);}
.book-info h3{font-size:28px;font-weight:900;margin-bottom:16px;line-height:1.2;}
.book-info p{font-size:14.5px;color:rgba(255,255,255,0.65);margin-bottom:26px;line-height:1.6;}
.book-info .check-line{display:flex;align-items:center;gap:10px;padding:8px 0;font-size:13.5px;font-weight:700;}
.book-info .check{width:18px;height:18px;border-radius:50%;background:rgba(31,164,99,0.2);color:#5EEAA5;display:flex;align-items:center;justify-content:center;font-size:10px;flex-shrink:0;}
.book-form{background:#fff;padding:48px;}
.form-field{margin-bottom:18px;}
.form-field label{display:block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:0.04em;color:var(--navy);margin-bottom:7px;}
.form-field input,.form-field select{width:100%;padding:13px 14px;border:1.5px solid var(--line);border-radius:8px;font-size:14px;}
.form-field input:focus,.form-field select:focus{outline:none;border-color:var(--orange);}
@media (max-width:900px){.book-band{grid-template-columns:1fr;}}

/* STEP LIST (for Workspace Planner / KYC) */
.step-list{margin-top:56px;}
.step-item{display:grid;grid-template-columns:60px 1fr;gap:24px;padding:28px 0;border-top:1px solid var(--line);}
.step-item:first-child{border-top:none;}
.step-num{width:44px;height:44px;border-radius:50%;background:var(--navy);color:var(--orange);font-weight:900;font-size:16px;display:flex;align-items:center;justify-content:center;}
.step-item h4{font-size:18px;font-weight:800;margin-bottom:8px;}
.step-item p{font-size:14.5px;color:var(--grey-text);line-height:1.6;font-weight:500;}
.doc-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;}
.doc-tag{font-size:12px;font-weight:700;background:var(--soft-grey);padding:6px 12px;border-radius:100px;color:var(--navy);}

.cta-band{text-align:center;padding:100px 0;position:relative;overflow:hidden;}
.cta-geo{position:absolute;bottom:-60px;left:-60px;width:200px;height:200px;border:3px solid var(--orange);opacity:0.08;}
.cta-band h2{font-size:clamp(28px,3.8vw,42px);margin-bottom:16px;max-width:560px;margin-left:auto;margin-right:auto;font-weight:900;}
.cta-band p{color:var(--grey-text);font-size:16px;margin-bottom:32px;font-weight:500;}

footer{background:var(--navy);color:rgba(255,255,255,0.55);padding:44px 0;}
.foot-grid{display:flex;justify-content:space-between;flex-wrap:wrap;gap:20px;font-size:13px;font-weight:500;}
.foot-links{display:flex;gap:24px;flex-wrap:wrap;}
.ph-note{font-size:11px;color:var(--grey-text);margin-top:8px;font-weight:600;text-align:center;}

/* PURCHASE FLOW (Virtual Office) */
.purchase-band{display:grid;grid-template-columns:1.1fr 0.9fr;border-radius:16px;overflow:hidden;margin-top:48px;box-shadow:0 24px 60px rgba(1,36,78,0.1);border:1px solid var(--line);}
.purchase-left{background:#fff;padding:44px;}
.order-summary{background:var(--soft-grey);border-radius:10px;padding:20px;margin:20px 0;}
.os-row{display:flex;justify-content:space-between;padding:8px 0;font-size:13.5px;font-weight:600;color:var(--grey-text);}
.os-row.total{border-top:1px solid var(--line);margin-top:6px;padding-top:14px;font-size:15px;font-weight:800;color:var(--navy);}
.purchase-right{min-height:100%;}
@media (max-width:900px){.purchase-band{grid-template-columns:1fr;}.purchase-right{min-height:280px;}}

/* WHY LIVANCE PILLARS */
.why-pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:48px;}
.pillar{padding:0;}
.pillar h4{font-size:16px;font-weight:800;color:var(--navy);margin-bottom:8px;position:relative;padding-top:16px;}
.pillar h4::before{content:"";position:absolute;top:0;left:0;width:32px;height:3px;background:var(--orange);}
.pillar p{font-size:13.5px;color:var(--grey-text);font-weight:500;line-height:1.5;}
@media (max-width:820px){.why-pillars{grid-template-columns:1fr 1fr;}}

/* LOCATION DETAIL GALLERY SWAP */
.loc-detail-gallery{display:none;}
.loc-detail-gallery.active{display:block;}

/* PRICING TABLE */
.pricing-table{margin-top:40px;background:#fff;border-radius:14px;border:1px solid var(--line);overflow:hidden;max-width:560px;}
.price-row{display:flex;justify-content:space-between;align-items:center;padding:20px 28px;border-top:1px solid var(--line);font-size:15px;font-weight:700;color:var(--navy);}
.price-row:first-child{border-top:none;}
.price-val{color:var(--orange);font-weight:900;font-size:17px;}

/* TESTIMONIALS */
.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:48px;}
.t-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:28px;}
.t-text{font-size:14px;color:var(--navy);line-height:1.65;font-weight:500;margin-bottom:20px;}
.t-author{display:flex;flex-direction:column;border-top:1px solid var(--line);padding-top:14px;}
.t-author b{font-size:14px;color:var(--navy);}
.t-author span{font-size:11.5px;color:var(--grey-text);font-weight:600;margin-top:2px;}
@media (max-width:900px){.testimonial-grid{grid-template-columns:1fr;}}

/* MAPS GRID */
.maps-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px;}
.map-block{border-radius:16px;overflow:hidden;border:1px solid var(--line);background:#fff;}
.map-label{padding:14px 20px;font-size:13px;font-weight:800;color:var(--navy);border-bottom:1px solid var(--line);}
@media (max-width:820px){.maps-grid{grid-template-columns:1fr;}}

/* TESTIMONIAL MARQUEE — auto-scrolling horizontal line */
.t-marquee-wrap{margin-top:48px;overflow:hidden;position:relative;padding:4px 0;}
.t-marquee-wrap::before,.t-marquee-wrap::after{content:"";position:absolute;top:0;bottom:0;width:80px;z-index:2;pointer-events:none;}
.t-marquee-wrap::before{left:0;background:linear-gradient(90deg,var(--soft-grey),transparent);}
.t-marquee-wrap::after{right:0;background:linear-gradient(270deg,var(--soft-grey),transparent);}
.t-marquee-wrap.on-white::before{background:linear-gradient(90deg,#fff,transparent);}
.t-marquee-wrap.on-white::after{background:linear-gradient(270deg,#fff,transparent);}
.t-marquee-row{display:flex;gap:20px;width:max-content;animation:tScroll 38s linear infinite;padding-left:32px;}
.t-marquee-wrap:hover .t-marquee-row{animation-play-state:paused;}
@keyframes tScroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}
.t-card-m{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px;width:340px;flex-shrink:0;}
.t-card-m .t-text{font-size:13.5px;color:var(--navy);line-height:1.6;font-weight:500;margin-bottom:18px;}
.t-card-m .t-author{display:flex;flex-direction:column;border-top:1px solid var(--line);padding-top:12px;}
.t-card-m .t-author b{font-size:13.5px;color:var(--navy);}
.t-card-m .t-author span{font-size:11px;color:var(--grey-text);font-weight:600;margin-top:2px;}

/* PARALLAX TWO-COLUMN (Virtual Office feature blocks) */
.parallax-col-left{transition:transform .1s linear;}
.parallax-col-right{transition:transform .1s linear;}

/* VIDEO GRID (two locations side by side) */
.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px;}
.video-block{border-radius:16px;overflow:hidden;border:1px solid var(--line);box-shadow:0 20px 50px rgba(1,36,78,0.08);background:#fff;}
@media (max-width:820px){.video-grid{grid-template-columns:1fr;}}

/* FULL SCREEN HOME HERO */
.hero-full{position:relative;height:calc(100vh - 80px);min-height:560px;overflow:hidden;display:flex;align-items:center;}
.hero-full-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;}
.hero-full-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(1,20,42,0.55) 0%,rgba(1,20,42,0.75) 60%,rgba(1,20,42,0.92) 100%);}
.hero-full-content{position:relative;z-index:2;width:100%;color:#fff;}
.hf-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.25);backdrop-filter:blur(6px);font-size:13px;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;padding:9px 18px;border-radius:100px;margin-bottom:26px;}
.hf-title{font-size:clamp(34px,5.6vw,64px);line-height:1.06;margin-bottom:22px;max-width:760px;color:#fff;}
.hf-title .accent-orange{color:var(--orange);}
.hf-lead{font-size:18px;color:rgba(255,255,255,0.8);max-width:520px;margin-bottom:34px;font-weight:500;line-height:1.6;}
.hf-ctas{display:flex;gap:14px;flex-wrap:wrap;}
.hf-outline-light{border-color:rgba(255,255,255,0.5);color:#fff;}
.hf-outline-light:hover{background:#fff;color:var(--navy);}

.hf-anim{opacity:0;transform:translateY(22px);animation:hfFadeUp .8s cubic-bezier(.2,.7,.3,1) forwards;}
@keyframes hfFadeUp{to{opacity:1;transform:translateY(0);}}

.hf-scroll-cue{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:8px;color:rgba(255,255,255,0.75);}
.hf-scroll-cue span{font-size:11px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;}
.hf-arrow{width:18px;height:18px;border-right:2px solid rgba(255,255,255,0.75);border-bottom:2px solid rgba(255,255,255,0.75);transform:rotate(45deg);animation:hfBounce 1.8s ease-in-out infinite;}
@keyframes hfBounce{0%,100%{transform:rotate(45deg) translate(0,0);}50%{transform:rotate(45deg) translate(6px,6px);}}
@media (max-width:820px){.hero-full{height:auto;min-height:640px;padding:120px 0 70px;}}

/* FAQ ACCORDION */
.faq-list{max-width:820px;margin-top:40px;}
.faq-item{border-bottom:1px solid var(--line);}
.faq-item:first-child{border-top:1px solid var(--line);}
.faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:20px;background:none;border:none;padding:22px 4px;cursor:pointer;text-align:left;font-family:'Inter',sans-serif;font-size:16px;font-weight:700;color:var(--navy);}
.faq-icon{font-size:22px;font-weight:400;color:var(--orange);flex-shrink:0;transition:transform .25s;}
.faq-item.open .faq-icon{transform:rotate(45deg);}
.faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease;}
.faq-item.open .faq-a{max-height:200px;}
.faq-a p{padding:0 4px 22px;font-size:14.5px;color:var(--grey-text);line-height:1.65;font-weight:500;max-width:680px;}

/* AS SEEN ON badges */
.seen-on{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:20px;}
.seen-on-label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:0.05em;color:var(--grey-text);}
.seen-badge{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border:1.5px solid var(--line);border-radius:100px;font-size:13px;font-weight:700;color:var(--navy);background:#fff;transition:all .2s;}
.seen-badge:hover{border-color:var(--orange);color:var(--orange);}
