.skip-link{position:fixed;left:12px;top:-80px;z-index:999;background:#fff;color:#06234a;padding:12px 16px;border:3px solid #c89a38}.skip-link:focus{top:12px}.noscript-note{background:#fff4d7;color:#332500;padding:14px 5vw;border-bottom:2px solid #c89a38}.lead-form>label:not(.consent){font-size:12px;font-weight:700;color:#435263;margin-bottom:-8px}.lead-form #phoneHelp{font-size:11px;color:#66717b;margin-top:-8px}.consent a,.privacy-note a{color:#06234a;text-decoration:underline}.privacy-note{background:#eef3f7}.privacy-note h2{font-size:25px}.privacy-note p{max-width:850px}.topbar a,.full-footer a{color:inherit;text-decoration:none}.topbar a:hover,.full-footer a:hover{text-decoration:underline}.mesh-visual{display:block}

/* Always-visible compact language switch */
.floating-language{
 position:fixed;right:10px;top:46%;z-index:850;
 display:flex;flex-direction:column;align-items:center;gap:3px;
 padding:6px 5px;border:1px solid rgba(6,35,74,.18);border-radius:18px;
 background:rgba(255,255,255,.96);box-shadow:0 6px 22px rgba(6,35,74,.18);
 backdrop-filter:blur(8px)
}
.floating-language span{font-size:14px;line-height:1}
.floating-language button{
 min-width:38px;min-height:34px;padding:5px 6px;border:0;border-radius:12px;
 background:transparent;color:#06234a;font:700 11px/1.15 system-ui,sans-serif;cursor:pointer
}
.floating-language button:hover,.floating-language button:focus-visible{background:#eef3f7;outline:2px solid #c89a38;outline-offset:1px}
.floating-language button.active{background:#06234a;color:#fff}
@media(max-width:640px){
 .floating-language{right:6px;top:42%;padding:5px 4px}
 .floating-language button{min-width:36px;min-height:32px;font-size:10px}
}
@media(prefers-reduced-motion:reduce){.floating-language{backdrop-filter:none}}
.ai-helper-note{margin:10px 0 0;font-size:11px;line-height:1.45;color:#65717d}.human-moments{background:#fff}.moment-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.moment-grid article{padding:24px;border-top:3px solid #c89a38;background:#f4f1e9}.moment-grid h3{color:#06234a;margin:0 0 12px}.moment-grid strong{display:block;line-height:1.45}.moment-grid p{font-size:14px;line-height:1.6}.checklist-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 32px;max-width:900px;margin:0 0 24px;padding-left:24px}.checklist-grid li{padding:8px 0}@media(max-width:800px){.moment-grid{grid-template-columns:1fr 1fr}}@media(max-width:520px){.moment-grid,.checklist-grid{grid-template-columns:1fr}}
.featured-concept-story{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);max-width:1180px;margin:0 auto 34px;background:#06234a;color:#fff;overflow:hidden;border-radius:4px;box-shadow:0 22px 50px rgba(6,35,74,.18)}
.concept-story-image{position:relative;min-height:430px;overflow:hidden}.concept-story-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}.featured-concept-story:hover .concept-story-image img{transform:scale(1.025)}
.concept-badge{position:absolute;left:14px;bottom:14px;padding:8px 11px;background:rgba(6,35,74,.92);border-left:3px solid #c89a38;font-size:11px;font-weight:800}
.concept-story-copy{padding:34px;align-self:center}.concept-story-copy>div>small{color:#e6bd67;font-weight:800}.concept-story-copy h3{font-size:28px;margin:10px 0}.concept-story-copy blockquote{margin:18px 0;padding-left:16px;border-left:3px solid #c89a38;font:600 20px/1.45 Georgia,serif}.concept-story-copy dl div{margin:12px 0}.concept-story-copy dt{font-size:11px;color:#e6bd67;text-transform:uppercase;font-weight:800}.concept-story-copy dd{margin:3px 0}.concept-story-copy p{font-size:12px;line-height:1.55;color:#dce5ef}.lang-ta{display:none}html[lang="ta"] .lang-en{display:none}html[lang="ta"] .lang-ta{display:block}
@media(max-width:800px){.featured-concept-story{grid-template-columns:1fr}.concept-story-image{min-height:300px}.concept-story-copy{padding:26px}}
@media(prefers-reduced-motion:reduce){.concept-story-image img{transition:none}.featured-concept-story:hover .concept-story-image img{transform:none}}
.two-step-form fieldset{border:0;padding:0;margin:0}.form-step{display:none}.form-step.active{display:block}.form-step legend{font-size:22px;font-weight:800;color:#06234a;margin-bottom:16px}.form-progress{display:flex;align-items:center;justify-content:center;margin-bottom:20px}.form-progress span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#dbe2e8;color:#52606d;font-weight:800}.form-progress span.active{background:#06234a;color:#fff}.form-progress i{width:70px;height:2px;background:#dbe2e8}.requirement-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.requirement-choices label{display:flex;align-items:center;gap:8px;padding:13px;border:1px solid #cbd4dc;border-radius:4px;cursor:pointer}.requirement-choices label:has(input:checked){border-color:#c89a38;background:#fff8e9}.inline-error{color:#a51d1d;font-size:12px;min-height:18px}.form-step-actions{display:flex;gap:10px}.form-step-actions .btn-accent{flex:1}@media(max-width:480px){.requirement-choices{grid-template-columns:1fr}}
.lead-modal[hidden]{display:none}.lead-modal{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:18px}.lead-modal-backdrop{position:absolute;inset:0;background:rgba(3,20,42,.72);backdrop-filter:blur(4px)}.lead-modal-panel{position:relative;z-index:1;width:min(520px,100%);max-height:92vh;overflow:auto;background:#fff;padding:32px;border-top:5px solid #c89a38;box-shadow:0 24px 80px rgba(0,0,0,.32)}.lead-modal-close{position:absolute;right:10px;top:8px;width:40px;height:40px;border:0;background:transparent;color:#06234a;font-size:28px;cursor:pointer}.lead-modal-panel h3{margin:0 42px 8px 0;color:#06234a;font-size:26px}.modal-open{overflow:hidden}@media(max-width:600px){.lead-modal{align-items:end;padding:0}.lead-modal-panel{width:100%;max-height:94vh;padding:26px 20px;border-radius:18px 18px 0 0}}

/* Cross-device hardening: 320px phones through large TV displays */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{width:100%;max-width:100%;overflow-x:clip}main,.hero,.section,.cta-band,.contact,.full-footer{min-width:0}img,video,svg,canvas{max-width:100%;height:auto}button,a,input,select,textarea{max-width:100%}h1,h2,h3,p,a,button,small,strong,dd{overflow-wrap:anywhere}.hero-actions,.contact-actions,.recommend-actions,.form-step-actions{flex-wrap:wrap}.lead-modal-panel{max-height:calc(100vh - 36px);max-height:calc(100dvh - 36px);overscroll-behavior:contain}.assistant-card.consultant{max-height:calc(100vh - 115px);max-height:calc(100dvh - 115px)}
@media(pointer:coarse){button,.btn,a.lang-btn,.floating-language button{min-height:44px}.header nav a{padding-block:10px}}
@media(max-width:359px){:root{--page-pad:12px}.brand-sub{display:none}.logo-mark{width:44px;height:40px;flex-basis:44px}.hero h1{font-size:34px}.hero-content{padding-top:34px}.section{padding-top:44px;padding-bottom:44px}.section-head h2,.section h2,.cta-band h2{font-size:25px}.service-card{grid-template-columns:92px minmax(0,1fr) 24px}.service-card img,.service-card .mesh-visual{height:88px!important}.lead-modal-panel{padding:24px 14px}.floating-language{right:4px}.concept-story-copy{padding:20px}}
@media(min-width:480px) and (max-width:767px){.hero-actions{grid-template-columns:1fr 1fr}.hero-actions .btn:first-child{grid-column:1/-1}.moment-grid{grid-template-columns:1fr 1fr}}
@media(min-width:768px) and (max-width:1023px){.hero-content{width:calc(100% - 360px)}.hero h1{font-size:clamp(42px,5.5vw,60px)}.moment-grid{grid-template-columns:1fr 1fr}.featured-concept-story{grid-template-columns:1.1fr .9fr}}
@media(max-height:560px) and (orientation:landscape){.lead-modal{padding:8px}.lead-modal-panel{max-height:calc(100dvh - 16px);padding:20px}.assistant-card.consultant{top:8px;bottom:8px;max-height:calc(100dvh - 16px)}.ai-invite{bottom:10px;max-height:calc(100dvh - 20px);overflow:auto}}
@media(min-width:1536px){:root{--content-max:1280px}.section-head h2,.section h2{font-size:clamp(34px,2.2vw,44px)}.hero h1{font-size:72px}}
@media(min-width:1920px){body{font-size:17px}.hero{max-width:1760px}.hero-content{padding-top:110px;padding-bottom:90px}.section{padding-top:88px;padding-bottom:88px}}
@media(min-width:2560px){body{background:#eef2f5}.topbar,.header,main,.full-footer{max-width:1920px;margin-inline:auto}.header{left:auto;right:auto}.hero{max-width:1760px}.full-footer{background:#06234a}}

/* Premium mobile composition */
.logo-mark img{object-fit:contain;background:#fff}.mobile-header-actions{display:none}.mobile-menu[hidden]{display:none}.mobile-menu{position:fixed;inset:0;z-index:1100}.mobile-menu-backdrop{position:absolute;inset:0;border:0;background:rgba(3,20,42,.62)}.mobile-menu nav{position:absolute;right:0;top:0;height:100%;height:100dvh;width:min(88vw,390px);padding:20px;background:#fff;display:flex;flex-direction:column;gap:5px;overflow:auto;box-shadow:-18px 0 50px rgba(0,0,0,.2)}.mobile-menu-head{display:flex;justify-content:space-between;align-items:center;padding:6px 0 18px;border-bottom:1px solid #dce3e8}.mobile-menu-head strong{color:#06234a;letter-spacing:.08em}.mobile-menu-head button{width:44px;height:44px;border:0;background:#eef3f7;font-size:25px}.mobile-menu nav>a:not(.btn){padding:14px 4px;border-bottom:1px solid #edf1f4;color:#06234a;font-weight:700}.mobile-menu .btn{margin-top:8px;width:100%}.mobile-menu-langs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.mobile-menu-langs button{min-height:46px;border:1px solid #b9c6d0;background:#fff;color:#06234a;font-weight:800}.mobile-menu-langs button.active{background:#06234a;color:#fff}.menu-open{overflow:hidden}
@media(max-width:767px){
 .topbar{display:none}.header{top:0;min-height:64px;padding-top:8px;padding-bottom:8px}.header .brand-name{font-size:16px}.header .brand-sub{font-size:7px}.mobile-header-actions{display:flex;align-items:center;gap:5px}.mobile-header-actions button,.mobile-header-actions a{display:grid;place-items:center;width:42px;height:42px;border:1px solid #cbd5dd;background:#fff;color:#06234a;border-radius:50%;font-size:11px;font-weight:900}.mobile-header-actions #menuToggle{font-size:20px}.mobile-header-actions #mobileAI{padding:2px;border-color:#c89a38;overflow:hidden}.mobile-header-actions #mobileAI img{width:100%;height:100%;border-radius:50%;object-fit:cover;object-position:center 18%}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.hero{min-height:auto}.hero-content{padding-top:46px;padding-bottom:42px}.hero .eyebrow{font-size:10px;margin-bottom:14px}.hero h1{font-size:clamp(36px,11vw,50px)}.hero p{font-size:15px;line-height:1.55}.hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.hero-actions .btn{padding:13px 10px}.hero-actions .btn:first-child{grid-column:1/-1}.hero-actions a[href^="tel:"]{display:none}.trust-row{margin-top:12px}.floating{grid-template-columns:1fr 1fr 1.15fr;padding-bottom:env(safe-area-inset-bottom);height:calc(var(--mobile-bar-h) + env(safe-area-inset-bottom))}.floating button,.floating a{font-size:11px;padding:6px}.floating #floatPlan{background:#06234a;color:#fff;border:0}.floating #floatAI{font-size:11px}.human-moments{overflow:hidden}.moment-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin-right:calc(var(--page-pad) * -1);padding-right:var(--page-pad);scrollbar-width:none}.moment-grid::-webkit-scrollbar{display:none}.moment-grid article{flex:0 0:min(84vw,340px);scroll-snap-align:start}.project-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin-right:calc(var(--page-pad) * -1);padding-right:var(--page-pad);scrollbar-width:none}.project-grid::-webkit-scrollbar{display:none}.project-grid article{flex:0 0:min(84vw,340px);scroll-snap-align:start}.service-card{min-height:104px}.lead-modal-panel input,.lead-modal-panel select{font-size:16px;min-height:48px}.lead-modal-panel .btn{min-height:48px}.assistant-card.consultant{padding-bottom:env(safe-area-inset-bottom)}
}
@media(min-width:768px){.mobile-menu{display:none!important}}
.mobile-form-step{display:none;border:0;padding:0;margin:0}.mobile-form-step.active{display:grid;gap:12px}.mobile-form-step legend{font-size:20px;font-weight:800;color:#06234a;margin-bottom:10px}.form-progress-text{display:inline-block;margin:8px 0 16px;padding:6px 10px;background:#edf3f8;color:#06234a;font-size:12px;font-weight:800}
