/* HomeIdea - production-friendly custom component styles, combined with local Tailwind build. */
:root{--primary:#08aeea;--accent:#971820;--bg:#070d13;--surface:#101923;--surface2:#14212e;--text:#eaf2f8;--muted:#91a0b0;--border:rgba(192,219,239,.15);--strong-border:rgba(188,222,241,.25);--light:#f2f7fb;--shadow:0 16px 55px rgba(0,0,0,.2);color-scheme:dark}
[data-theme=light]{--bg:#f3f7fa;--surface:#fff;--surface2:#edf4f9;--text:#132638;--muted:#617284;--border:rgba(37,71,98,.15);--strong-border:rgba(37,71,98,.28);--light:#071a29;--shadow:0 16px 44px rgba(10,35,57,.07);color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,"Segoe UI",system-ui,-apple-system,sans-serif;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}img{max-width:100%}svg{flex-shrink:0}h1,h2,h3,h4,p,blockquote{margin-top:0}h1,h2,h3,h4{line-height:1.15;letter-spacing:-.04em}h1{font-size:clamp(2.7rem,5.3vw,5.2rem);font-weight:800}h2{font-size:clamp(2rem,3.7vw,3.6rem);font-weight:750}h3{font-size:1.35rem}p{line-height:1.8}.container{width:min(1250px,calc(100% - 64px));margin-inline:auto}.small{font-size:.8rem}.muted{color:var(--muted)}.eyebrow{font-size:.72rem;letter-spacing:.18em;font-weight:800;color:var(--primary);line-height:1.4;text-transform:uppercase;margin:0 0 20px}.overline-sm{font-size:.73rem;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px}.lead{font-size:1.12rem;line-height:1.9;color:var(--text)}.section{padding:110px 0}.section-heading{max-width:740px;margin-bottom:45px}.section-heading h2{max-width:700px;margin:0 0 14px}.section-desc{max-width:660px;color:var(--muted);font-size:1.04rem;margin:0}.text-arrow{display:inline-flex;align-items:center;gap:8px;color:var(--primary);font-size:.91rem;font-weight:750}.text-arrow:hover{gap:13px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:15px 21px;border:1px solid transparent;border-radius:8px;font-size:.88rem;line-height:1.25;font-weight:750;white-space:nowrap;transition:background .2s,border .2s,transform .2s;color:var(--text)}.btn:hover{transform:translateY(-2px)}.btn.primary{background:var(--primary);color:#05131d;box-shadow:0 7px 28px rgba(8,174,234,.12)}.btn.primary:hover{background:#39c7ff}.btn.outline{border-color:var(--strong-border);background:transparent;color:var(--text)}.btn.outline:hover{border-color:var(--primary);background:rgba(8,174,234,.05)}.btn.light{background:#fff;color:#17202a}.btn.mini{padding:10px 14px;font-size:.78rem}.ribbon-inner{display:flex;justify-content:space-between;align-items:center;gap:18px}.top-ribbon{background:#080e14;border-bottom:1px solid rgba(255,255,255,.055);color:#a4b5c3;font-size:.73rem;letter-spacing:.025em;padding:9px 0}.top-ribbon span{display:inline-flex;align-items:center;gap:7px;min-width:0}.top-ribbon a:hover{color:var(--primary)}.site-header{position:sticky;top:0;z-index:50;background:rgba(7,13,19,.96);border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(16px)}[data-theme=light] .site-header{background:rgba(246,250,253,.97)}.head-wrap{height:104px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{width:170px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;flex-shrink:0;line-height:1}.brand-img{height:73px;width:170px;object-fit:contain;object-position:left center}.brand-caption{font-size:.48rem;letter-spacing:.13em;color:#8fa3b2;margin:-6px 0 0 7px}.desktop-nav{display:flex;gap:clamp(12px,1.35vw,24px);align-items:center}.desktop-nav a{font-size:.84rem;font-weight:650;color:var(--muted);transition:color .2s}.desktop-nav a.active,.desktop-nav a:hover{color:var(--primary)}.head-actions{display:flex;align-items:center;gap:12px}.theme-toggle{display:grid;place-items:center;border:1px solid var(--border);border-radius:8px;background:transparent;width:40px;height:40px;color:var(--text)}.theme-toggle:hover{border-color:var(--primary)}.mobile-menu-trigger{display:none;place-items:center;border:0;background:transparent;color:var(--text)}.mobile-nav{display:none}.hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 70% 48%,rgba(5,75,110,.27),transparent 43%),linear-gradient(130deg,#081019,#0c1620 58%,#071019);color:#e8f3fa}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;min-height:690px;gap:38px;padding-top:65px;padding-bottom:80px}.hero-content{position:relative;z-index:1}.hero-kicker{display:inline-flex;align-items:center;gap:10px;border:1px solid rgba(8,174,234,.27);border-radius:100px;padding:8px 15px;color:#a8d4e9;font-size:.7rem;letter-spacing:.12em;font-weight:780;margin-bottom:34px}.pulse-dot{width:7px;height:7px;background:#17bff2;border-radius:50%;box-shadow:0 0 0 5px rgba(23,191,242,.1)}.hero h1{max-width:720px;line-height:1.05;margin-bottom:26px}.hero-content>p{color:#a8b8c6;max-width:560px;font-size:1.06rem;line-height:1.92;margin-bottom:32px}.hero-buttons{display:flex;flex-wrap:wrap;gap:14px}.hero .btn.outline{border-color:#365165;color:#eaf2f8}.hero-trust{display:flex;align-items:center;gap:20px;margin-top:65px}.trust-icons{display:flex}.trust-icons span{display:grid;place-items:center;width:43px;height:43px;border:2px solid #0c1620;border-radius:50%;background:#243b4b;color:#1dc5fa;margin-left:-9px}.trust-icons span:first-child{margin-left:0}.hero-trust p{font-size:.8rem;color:#c2d0dc;margin:0}.hero-trust b{display:block}.hero-trust small{display:block;color:#849cac;font-size:.74rem}.hero-art{min-height:600px;position:relative;display:grid;place-items:center}.hero-art:before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(0,171,234,.14),transparent 67%);filter:blur(10px)}.hero-art svg{width:min(100%,680px);height:auto;position:relative;filter:drop-shadow(0 20px 55px rgba(0,0,0,.17))}.art-grid{position:absolute;inset:20px 0;background-image:linear-gradient(rgba(80,146,180,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(80,146,180,.07) 1px,transparent 1px);background-size:44px 44px;mask-image:radial-gradient(ellipse at center,#000,transparent 75%)}.art-index{position:absolute;bottom:40px;left:20px;right:20px;display:flex;justify-content:space-between;font:12px monospace;color:#6c9aaf;letter-spacing:.13em}.hero-custom-img{max-height:610px;width:100%;height:100%;object-fit:cover;clip-path:polygon(0 0,100% 0,100% 91%,91% 100%,0 100%);border:1px solid #275269}.hero-bottom-line{height:3px;background:linear-gradient(90deg,var(--primary) 0 32%,var(--accent) 32% 62%,transparent 62%)}.specialties-strip{border-bottom:1px solid var(--border);background:var(--surface)}.specialties-wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.specialties-wrap>div{display:grid;grid-template-columns:35px 1fr;align-content:center;column-gap:13px;padding:24px 14px;border-right:1px solid var(--border)}.specialties-wrap>div:first-child{padding-left:0}.specialties-wrap>div:last-child{border:0}.specialties-wrap svg{grid-row:span 2;color:var(--primary);align-self:center}.specialties-wrap b{font-size:.88rem}.specialties-wrap span{font-size:.75rem;color:var(--muted)}.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.service-card{min-height:340px;display:flex;flex-direction:column;position:relative;padding:30px;border:1px solid var(--border);background:var(--surface);transition:transform .2s,border .2s,box-shadow .2s}.service-card:hover{transform:translateY(-5px);border-color:rgba(8,174,234,.5);box-shadow:var(--shadow)}.service-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px}.service-icon{display:grid;place-items:center;width:57px;height:57px;color:var(--primary);border-radius:10px;border:1px solid rgba(8,174,234,.2);background:rgba(8,174,234,.07)}.service-count{font-size:.76rem;color:var(--muted);font-family:monospace}.service-card h3{margin:0 0 5px}.service-subtitle{color:var(--primary);font-size:.81rem;font-weight:650;line-height:1.5;margin:0 0 12px}.service-desc{color:var(--muted);font-size:.87rem;line-height:1.85;flex:1;margin:0 0 24px}.service-photo{width:100%;max-height:180px;object-fit:cover;margin-bottom:20px;border-radius:5px}.section-more{text-align:center;margin-top:38px}.about-teaser{background:var(--surface);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.about-graphic{min-height:535px;position:relative;background:repeating-linear-gradient(45deg,transparent 0 39px,rgba(22,162,223,.045) 39px 40px),linear-gradient(150deg,#0e2431,#08131c);border:1px solid #25465b;overflow:hidden;display:grid;place-items:center}.about-graphic:after{content:"";position:absolute;inset:7%;border:1px solid rgba(5,173,234,.1)}.about-accent-card{width:62%;aspect-ratio:1;background:linear-gradient(135deg,#0f5d82,#082c43 75%);box-shadow:28px 30px 0 rgba(151,24,32,.5),0 30px 90px #0006;display:grid;grid-template-columns:1fr 1fr;place-items:center;position:relative;transform:rotate(-9deg);border:1px solid #2a9cc5;z-index:1}.about-accent-card span{font-size:clamp(6rem,11vw,10rem);line-height:1;font-weight:900;color:#bceeff;letter-spacing:-.15em}.about-accent-card small{position:absolute;bottom:12%;grid-column:span 2;letter-spacing:.3em;font-weight:750;color:#c4eaf5}.about-badge{position:absolute;bottom:5%;left:5%;background:#eaf7fc;color:#183241;z-index:2;padding:18px 25px;font-size:.61rem;letter-spacing:.12em}.about-badge b{font-size:.71rem;letter-spacing:.09em}.about-text>p:not(.eyebrow){color:var(--muted)}.about-points{display:grid;grid-template-columns:repeat(2,1fr);gap:13px 20px;margin:27px 0 30px}.about-points span{display:flex;gap:7px;align-items:center;font-size:.8rem;font-weight:650}.about-points svg{color:var(--primary)}.numbers-section{padding:45px 0;background:var(--accent);color:#fff}.numbers-grid{display:grid;grid-template-columns:repeat(4,1fr);text-align:center}.numbers-grid>div{border-right:1px solid rgba(255,255,255,.2)}.numbers-grid>div:last-child{border:0}.numbers-grid b{font-size:2.5rem;display:block;line-height:1.2}.numbers-grid span{font-size:.82rem;opacity:.8}.process-section{background:var(--bg)}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--border)}.process-grid>div{padding:35px 26px;border-right:1px solid var(--border)}.process-grid>div:first-child{padding-left:0}.process-grid>div:last-child{border:0}.process-grid span{color:var(--primary);font-family:monospace;font-size:.88rem}.process-grid h3{margin:34px 0 13px}.process-grid p{font-size:.86rem;color:var(--muted);margin:0}.projects-section{background:var(--surface)}.projects-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.project-card{min-width:0}.project-cover{display:block;height:275px;position:relative;overflow:hidden;background:#132632}.project-cover img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.project-cover:hover img{transform:scale(1.06)}.project-tag{position:absolute;bottom:17px;left:17px;background:var(--primary);color:#06121b;padding:6px 11px;border-radius:3px;font-weight:750;font-size:.68rem;text-transform:uppercase;letter-spacing:.07em}.architectural-placeholder{height:100%;display:grid;place-items:center;background-image:linear-gradient(rgba(26,165,226,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(26,165,226,.12) 1px,transparent 1px);background-size:23px 23px;color:#4f9ab3;align-content:center}.placeholder-outline{font-size:8rem;line-height:1.1;font-weight:100}.architectural-placeholder>span:last-child{font-size:.69rem;letter-spacing:.22em}.project-info{padding:23px 2px;display:flex;justify-content:space-between;gap:8px;align-items:center}.project-info h3{margin:0;font-size:1.16rem}.round-arrow{width:44px;height:44px;border:1px solid var(--border);display:grid;place-items:center;border-radius:50%;flex-shrink:0}.round-arrow:hover{color:var(--primary);border-color:var(--primary)}.testimonials-section{background:var(--bg)}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.testimonial-card{border:1px solid var(--border);padding:29px;background:var(--surface)}.testimonial-card>p{font-size:.95rem;line-height:1.8;min-height:90px}.stars{color:#ffbe4f;letter-spacing:4px;margin-bottom:20px}.testimonial-card footer{display:flex;flex-direction:column;gap:1px;border-top:1px solid var(--border);padding-top:17px}.testimonial-card footer b{font-size:.91rem}.testimonial-card footer span{font-size:.78rem;color:var(--muted)}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.article-card{padding:25px;border:1px solid var(--border);background:var(--surface)}.article-card img{width:100%;height:195px;object-fit:cover;margin-bottom:22px}.article-card h3{font-size:1.2rem}.article-card>p:not(.overline-sm){color:var(--muted);font-size:.88rem}.cta-section{padding:74px 0;background:linear-gradient(116deg,#082e41,#075173 65%,#086f95);color:#fff;position:relative;overflow:hidden}.cta-section:after{content:"";position:absolute;width:330px;height:330px;border:75px solid rgba(255,255,255,.045);border-radius:50%;right:1%;top:-190px}.cta-flex{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;gap:25px}.cta-flex h2{max-width:800px;font-size:clamp(2rem,3.9vw,3.8rem);margin:0 0 12px}.cta-flex h2 em{font-family:Georgia,serif;font-weight:400}.cta-flex p:not(.eyebrow){color:#d2e8f3;margin:0}.cta-flex .eyebrow{color:#92e3ff}.footer{padding:76px 0 20px;background:#060d13;color:#abbccc}.footer-top{display:grid;grid-template-columns:2.15fr .7fr .7fr 1.45fr;gap:40px;padding-bottom:55px;border-bottom:1px solid rgba(255,255,255,.12)}.footer-brand img{width:310px;max-width:100%;height:132px;object-fit:contain;object-position:left center}.footer-brand p{max-width:330px;margin:10px 0 0;color:#8fa4b5;font-size:.86rem}.footer-heading{color:#eef7fc;font-size:.92rem;font-weight:750;margin:17px 0 19px}.footer-top>div:not(:first-child)>a{display:block;font-size:.87rem;line-height:2.3}.footer-top a:hover{color:var(--primary)}.footer-contact span{display:flex;gap:10px;align-items:flex-start;font-size:.86rem;margin-bottom:20px}.footer-contact svg{color:var(--primary)}.footer-bottom{display:flex;justify-content:space-between;gap:15px;color:#8097a8;font-size:.76rem;padding-top:22px}.footer-bottom b{color:var(--primary)}.floating-contact{position:fixed;z-index:31;bottom:24px;right:24px;background:var(--primary);width:55px;height:55px;border-radius:50%;display:grid;place-items:center;color:#07151e;box-shadow:0 12px 40px rgba(3,131,196,.32)}.page-banner{min-height:290px;padding:74px 0 63px;background:linear-gradient(115deg,#101a26,#0d3146),repeating-linear-gradient(20deg,transparent 0 15px,rgba(255,255,255,.03) 15px 17px);color:#eef6fc;position:relative;overflow:hidden}.page-banner .container{position:relative;z-index:1}.page-banner h1{font-size:clamp(2.5rem,5vw,4.6rem);max-width:850px;margin:0 0 20px}.page-banner p:not(.eyebrow){max-width:680px;color:#b6cad6;font-size:1.03rem;margin:0}.page-banner .eyebrow{color:#65d7ff}.banner-lines{position:absolute;right:2%;bottom:-30%;width:42vw;aspect-ratio:1;transform:rotate(30deg);border:1px solid rgba(11,187,235,.17)}.banner-lines:after{content:"";position:absolute;inset:11%;border:1px solid rgba(11,187,235,.17)}.empty-state{text-align:center;max-width:550px;margin:25px auto;padding:70px 25px;background:var(--surface);border:1px solid var(--border)}.empty-state h2{font-size:1.8rem}.empty-state p{color:var(--muted)}.detail-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(290px,.8fr);gap:55px}.detail-main h2{font-size:2.05rem;margin-top:30px}.detail-cover{width:100%;max-height:500px;object-fit:cover}.long-copy{line-height:2;font-size:1.01rem;white-space:normal;color:var(--muted)}.detail-aside,.about-aside{padding:30px;background:var(--surface);border:1px solid var(--border);height:max-content}.detail-aside h3{border-bottom:1px solid var(--border);padding-bottom:20px}.detail-aside p{display:flex;flex-direction:column;border-bottom:1px solid var(--border);padding:10px 0 17px}.detail-aside small{color:var(--muted)}.detail-aside .btn{width:100%;margin-top:12px;font-size:.82rem}.about-aside h3{font-size:2rem}.about-aside p:not(.eyebrow){color:var(--muted)}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.team-card{border:1px solid var(--border);background:var(--surface)}.team-photo{height:350px;display:grid;place-items:center;background:linear-gradient(140deg,#1d4a64,#101c28);overflow:hidden}.team-photo img{width:100%;height:100%;object-fit:cover}.team-photo span{font-size:8rem;color:#61c1e0;font-weight:850;opacity:.65}.team-info{padding:25px}.team-info h3{margin-bottom:9px}.team-info .eyebrow{font-size:.7rem;margin-bottom:12px}.team-info>p:not(.eyebrow){font-size:.85rem;color:var(--muted)}.social-links{display:flex;gap:14px;font-size:.8rem;color:var(--primary)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.gallery-item{margin:0;background:var(--surface);border:1px solid var(--border)}.gallery-item img{display:block;width:100%;height:270px;object-fit:cover}.gallery-item figcaption{padding:20px;display:flex;flex-direction:column;gap:4px}.gallery-item b{font-size:1rem}.gallery-item span{color:var(--primary);font-size:.77rem}.gallery-item small{color:var(--muted)}.article-detail{max-width:900px}.article-detail>img{width:100%;max-height:520px;object-fit:cover;margin-bottom:28px}.article-detail .long-copy{margin-bottom:32px}.contact-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:9%;align-items:start}.contact-details h2{font-size:clamp(2rem,3vw,3rem)}.contact-details>p:not(.eyebrow){color:var(--muted);margin-bottom:32px}.contact-method{display:flex;gap:18px;align-items:flex-start;margin:24px 0}.contact-method>svg{color:var(--primary);margin-top:5px}.contact-method div{display:flex;flex-direction:column;gap:2px}.contact-method b{font-size:.88rem}.contact-method a,.contact-method span{font-size:.89rem;color:var(--muted)}.contact-form-card{border:1px solid var(--border);padding:39px;background:var(--surface);box-shadow:var(--shadow)}.contact-form-card h2{font-size:1.85rem;margin-bottom:8px}.contact-form-card>p{font-size:.89rem;margin-bottom:25px}.form-stack{display:flex;flex-direction:column;gap:18px}.form-stack label{display:flex;flex-direction:column;gap:8px;font-weight:650;font-size:.82rem;color:var(--text)}.form-stack label input:not([type=checkbox]),.form-stack select,.form-stack textarea{width:100%;outline:none;border:1px solid var(--border);background:var(--bg);border-radius:6px;color:var(--text);padding:13px 14px;font-size:.9rem;min-height:47px;transition:border .15s}.form-stack input:focus,.form-stack textarea:focus,.form-stack select:focus{border-color:var(--primary)!important}.form-stack input[type=file]{padding:10px}.form-stack textarea{resize:vertical}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:17px}.form-stack .submit-btn{width:100%;padding:17px}.honeypot{position:absolute;left:-99999px;height:0;overflow:hidden}.alert{padding:13px 17px;margin:8px 0 20px;border:1px solid var(--border);border-radius:7px;font-size:.88rem}.alert.success{color:#80e1b0;background:rgba(38,146,95,.1);border-color:rgba(38,146,95,.4)}.alert.danger{color:#ff9a9a;background:rgba(207,59,54,.09);border-color:rgba(207,59,54,.45)}.installer-body{background:radial-gradient(ellipse at 50% 0,rgba(7,165,231,.16),transparent 49%),#071019;min-height:100vh;display:grid;place-items:center;padding:35px 16px;color:#eaf2f8}.install-card{width:min(100%,560px);border:1px solid #253b4d;background:#101c27;padding:38px;box-shadow:0 30px 100px #0005}.install-logo{height:125px;width:270px;object-fit:contain;object-position:left center;display:block;margin-bottom:10px}.install-card h1{font-size:2.3rem;margin:0 0 10px}.install-card .muted{color:#9bafbf}.install-card .form-stack label{color:#eaf2f8}.install-card .form-stack input{background:#08121c;color:#eaf2f8;border-color:#2b3d4c}.install-card hr{width:100%;border:0;border-top:1px solid #263c4d}.install-card .btn{margin-top:6px}.install-card>p.small{margin:25px 0 0}.login-card{max-width:450px}.admin-back-link{font-size:.83rem;color:#80cbe7;display:inline-block;margin-top:25px}.admin-body{background:var(--bg);color:var(--text)}.admin-layout{display:flex;min-height:100vh}.admin-sidebar{position:sticky;top:0;align-self:flex-start;height:100vh;width:258px;flex-shrink:0;padding:18px 14px 30px;overflow-y:auto;background:#0c1620;color:#aebfcc;border-right:1px solid rgba(255,255,255,.08)}.admin-logo{display:flex;align-items:center;flex-direction:column;border-bottom:1px solid #223340;margin-bottom:18px;padding-bottom:18px}.admin-logo img{width:183px;height:85px;object-fit:contain}.admin-logo span{font-size:.53rem;font-weight:750;letter-spacing:.2em;color:#778e9f}.sidebar-group{font-size:.61rem;font-weight:800;letter-spacing:.16em;color:#6b8396;margin:25px 12px 9px}.sidebar-link{display:flex;align-items:center;gap:10px;border-radius:7px;padding:11px 12px;color:#a6b6c2;font-size:.83rem;line-height:1.3;transition:background .17s}.sidebar-link>span{flex:1}.sidebar-link.current,.sidebar-link:hover{color:#e8f7ff;background:#15384b}.sidebar-link.current{border-left:3px solid var(--primary)}.lead-badge{color:#fff;background:#a42632;border-radius:30px;font-size:.65rem;padding:2px 7px}.sidebar-end{font-size:.62rem;color:#607889;line-height:1.7;padding:25px 14px;letter-spacing:.06em}.admin-main{min-width:0;flex:1}.admin-topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:104px;padding:21px 32px;border-bottom:1px solid var(--border);background:var(--surface)}.admin-topbar .eyebrow{margin:0 0 4px;font-size:.64rem}.admin-topbar h1{font-size:1.7rem;margin:0}.admin-top-left,.admin-top-right{display:flex;align-items:center;gap:16px}.admin-avatar{background:#164963;color:#8be1ff;border-radius:50%;width:40px;height:40px;display:grid;place-items:center;font-weight:800}.admin-menu-trigger{display:none;background:none;color:var(--text);border:0;font-size:1.5rem}.admin-content{padding:32px;max-width:1560px;margin:0 auto}.admin-welcome{border:1px solid rgba(8,174,234,.25);background:linear-gradient(110deg,#0c2938,#0b1b29);padding:30px 35px;color:#e5f5fa;display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.admin-welcome .eyebrow{margin:0 0 8px}.admin-welcome h2{font-size:1.65rem;margin:0 0 7px}.admin-welcome p:not(.eyebrow){font-size:.83rem;color:#9bb7c5;margin:0}.admin-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:25px}.admin-stats a{border:1px solid var(--border);padding:25px;background:var(--surface);transition:border .2s}.admin-stats a:hover{border-color:var(--primary)}.admin-stats span,.admin-stats small{display:block;font-size:.79rem;color:var(--muted)}.admin-stats b{font-size:2.3rem;display:block;margin:8px 0;line-height:1}.admin-grid-two{display:grid;grid-template-columns:1.2fr .8fr;gap:22px}.admin-panel{background:var(--surface);border:1px solid var(--border);padding:25px;margin-bottom:24px}.admin-panel h2{font-size:1.25rem;margin:0 0 20px}.panel-top{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px}.panel-top h2{font-size:1.4rem;margin:0 0 6px}.panel-top p{font-size:.84rem;margin:0}.admin-grid-two .panel-top{margin-bottom:10px}.inquiry-list{display:flex;flex-direction:column}.inquiry-list>a{display:flex;align-items:center;gap:13px;border-bottom:1px solid var(--border);padding:15px 4px;min-width:0}.inquiry-list>a:last-child{border-bottom:0}.inquiry-list>a:hover,.inquiry-list .selected-lead{background:rgba(5,166,226,.06)}.list-avatar{height:42px;width:42px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;background:rgba(7,174,231,.12);color:var(--primary);font-weight:800}.inquiry-list>a>span:nth-child(2){min-width:0;flex:1}.inquiry-list b,.inquiry-list small{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.inquiry-list b{font-size:.83rem}.inquiry-list small{font-size:.72rem;color:var(--muted)}.status-pill{padding:4px 9px;font-size:.69rem;font-weight:750;white-space:nowrap;background:rgba(119,133,143,.13);color:var(--muted);border-radius:50px}.status-pill.published,.status-pill.contacted{background:rgba(44,182,114,.14);color:#53dba1}.status-pill.draft,.status-pill.closed{background:rgba(144,154,161,.12);color:var(--muted)}.status-pill.new{background:rgba(241,164,46,.13);color:#e4ad58}.quick-actions{display:grid;gap:11px}.quick-actions a{border:1px solid var(--border);padding:17px;display:flex;justify-content:space-between;gap:10px;font-size:.84rem}.quick-actions a:hover{border-color:var(--primary)}.quick-actions span{color:var(--primary)}.module-heading{margin-bottom:23px}.table-panel{padding:0}.table-scroll{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;text-align:left;min-width:620px}.admin-table th{color:var(--muted);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800;background:var(--surface2);padding:17px 20px}.admin-table td{padding:19px 20px;border-top:1px solid var(--border);font-size:.83rem}.admin-table .table-main{display:flex;gap:14px;align-items:center}.table-main img,.table-symbol{height:52px;width:64px;flex-shrink:0;object-fit:cover;background:#123348;display:grid;place-items:center;color:var(--primary);font-size:1.6rem}.table-main b,.table-main small{display:block}.table-main small{font-size:.71rem;color:var(--muted)}.table-actions{display:flex;gap:16px;white-space:nowrap}.table-actions a{font-weight:700;color:var(--primary)}.delete-link{border:0;padding:0;color:#e27676;font-size:.84rem;background:transparent;font-weight:680}.delete-link:hover{text-decoration:underline}.empty-table{text-align:center;color:var(--muted);padding:45px!important}.editor-form{max-width:1080px}.form-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-fields .field-full{grid-column:1/-1}.form-fields .field-checkbox{justify-content:center}.field-checkbox span{display:flex;align-items:center;gap:8px}.admin-uploads{border-top:1px solid var(--border);padding-top:25px;margin-top:14px}.admin-uploads h3{font-size:1.1rem;margin-bottom:4px}.admin-uploads>p{margin:0 0 17px}.existing-media{font-size:.75rem;color:var(--muted)}.existing-media a,.current-file a{color:var(--primary)}.form-actions{display:flex;align-items:center;gap:12px;border-top:1px solid var(--border);padding-top:22px}.settings-group{max-width:1080px}.settings-group h2{padding-bottom:20px;border-bottom:1px solid var(--border)}.current-file{padding:8px 0;font-size:.81rem}.leads-layout{display:grid;grid-template-columns:1fr 1.12fr;gap:22px}.lead-detail dl{display:grid;grid-template-columns:100px 1fr;gap:8px 10px;font-size:.85rem;margin:0 0 28px}.lead-detail dt{color:var(--muted)}.lead-detail dd{margin:0;overflow-wrap:anywhere}.lead-detail dd a{color:var(--primary)}.lead-detail h2{margin-bottom:0}.compact-panel{max-width:660px}.compact-panel>p{font-size:.84rem}.admin-body .form-stack label{color:var(--text)}.admin-body .form-stack input,.admin-body .form-stack textarea,.admin-body .form-stack select{color:var(--text)}
@media(max-width:1200px){.desktop-nav{gap:12px}.head-wrap{gap:14px}.brand,.brand-img{width:145px}.desktop-nav a{font-size:.77rem}.nav-cta{padding:12px;font-size:.76rem}.container{width:min(1120px,calc(100% - 48px))}.services-grid{gap:13px}.service-card{padding:24px}.admin-sidebar{width:220px}.admin-content{padding:23px}}
@media(max-width:1000px){.desktop-nav,.nav-cta{display:none}.mobile-menu-trigger{display:grid}.head-wrap{height:87px}.mobile-nav:not([hidden]){display:flex;flex-direction:column;border-top:1px solid var(--border);padding:12px 24px 20px}.mobile-nav a{padding:9px;font-size:.88rem;color:var(--muted)}.mobile-nav a:hover{color:var(--primary)}.hero-grid{min-height:unset;grid-template-columns:1fr 1fr;gap:10px}.hero h1{font-size:clamp(2.4rem,5vw,3.9rem)}.hero-art{min-height:420px}.services-grid{grid-template-columns:repeat(2,1fr)}.about-grid{gap:5%}.about-graphic{min-height:420px}.projects-grid,.team-grid,.testimonial-grid,.gallery-grid,.article-grid{grid-template-columns:repeat(2,1fr)}.process-grid{grid-template-columns:repeat(2,1fr)}.process-grid>div:nth-child(2){border-right:0}.process-grid>div{border-bottom:1px solid var(--border)}.footer-top{grid-template-columns:1.4fr 1fr 1fr;gap:22px}.footer-contact{grid-column:1/-1}.footer-brand img{width:260px}.contact-layout{gap:5%}.admin-sidebar{position:fixed;z-index:80;left:0;top:0;transform:translateX(-100%);transition:transform .2s;width:258px;box-shadow:20px 0 50px #0004}.admin-sidebar.open{transform:translateX(0)}.admin-menu-trigger{display:block}.admin-stats{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.container{width:calc(100% - 36px)}.section{padding:65px 0}.section-heading{margin-bottom:28px}.top-ribbon{font-size:.66rem}.ribbon-inner>span:first-child{overflow:hidden;max-width:55%;text-overflow:ellipsis;white-space:nowrap}.head-wrap{height:77px}.brand,.brand-img{width:125px}.brand-img{height:57px}.brand-caption{font-size:.41rem}.hero-grid{padding:56px 0 22px;grid-template-columns:1fr}.hero-content>p{font-size:.93rem}.hero h1{font-size:clamp(2.7rem,9.5vw,4rem)}.hero-trust{margin-top:42px}.hero-art{min-height:320px;margin-top:12px}.hero-art svg{max-width:460px}.art-index{bottom:10px}.specialties-wrap{grid-template-columns:1fr}.specialties-wrap>div,.specialties-wrap>div:first-child{padding:17px 0;border-right:0;border-bottom:1px solid var(--border)}.specialties-wrap>div:last-child{border-bottom:0}.services-grid,.projects-grid,.testimonial-grid,.team-grid,.gallery-grid,.article-grid,.about-grid,.contact-layout,.detail-grid,.admin-grid-two,.leads-layout{grid-template-columns:1fr}.service-card{min-height:unset}.service-top{margin-bottom:22px}.about-graphic{min-height:345px}.about-accent-card{width:57%}.about-accent-card span{font-size:6.3rem}.about-points{gap:12px}.process-grid{grid-template-columns:1fr}.process-grid>div{padding:24px 0;border:0;border-bottom:1px solid var(--border)}.process-grid h3{margin:12px 0}.numbers-grid{grid-template-columns:repeat(2,1fr);gap:20px}.numbers-grid>div:nth-child(2){border:0}.numbers-grid b{font-size:2rem}.project-cover{height:275px}.team-photo{height:380px}.cta-flex{flex-direction:column;align-items:flex-start}.cta-section{padding:58px 0}.footer{padding:55px 0 20px}.footer-top{grid-template-columns:1fr 1fr;column-gap:15px}.footer-brand{grid-column:1/-1}.footer-contact{grid-column:1/-1}.footer-bottom{flex-direction:column}.page-banner{min-height:240px;padding:55px 0}.contact-form-card{padding:22px}.two-fields,.form-fields{grid-template-columns:1fr}.form-fields .field-full{grid-column:auto}.hero-buttons .btn{width:100%}.installer-body{padding:16px}.install-card{padding:25px}.admin-topbar{min-height:90px;padding:15px}.admin-topbar h1{font-size:1.25rem}.admin-topbar .eyebrow{font-size:.56rem}.admin-top-right{gap:8px}.admin-top-right .btn{display:none}.admin-content{padding:17px}.admin-welcome{flex-direction:column;align-items:flex-start;padding:23px}.admin-stats{grid-template-columns:repeat(2,1fr);gap:10px}.admin-stats a{padding:16px}.admin-stats b{font-size:1.8rem}.admin-panel{padding:18px}.table-panel{padding:0}.panel-top{align-items:flex-start;flex-direction:column}.admin-menu-trigger{font-size:1.25rem}.module-heading .btn{align-self:stretch}.floating-contact{width:49px;height:49px;bottom:17px;right:17px}.lead-detail dl{grid-template-columns:80px 1fr}.form-actions{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
.footer-social{display:flex;gap:15px;flex-wrap:wrap;margin-top:14px}.footer-social a{font-size:.77rem;color:#70d4f7;border-bottom:1px solid #26536a}
@media(min-width:1201px){.brand,.brand-img{width:196px}.brand-img{height:87px}.head-wrap{height:111px}}


/* v1.1 — Light footer across both the dark and light page themes. */
.site-body .footer{background:#f5f9fc;color:#344a5b;border-top:4px solid #08aeea;box-shadow:inset 0 1px #fff}
.site-body .footer-top{border-bottom:1px solid #d5e3ee}
.site-body .footer-heading{color:#13283a}
.site-body .footer-brand p{color:#4e6475}
.site-body .footer-top a{color:#30485a;transition:color .2s}
.site-body .footer-top a:hover{color:#087ba7}
.site-body .footer-contact span{color:#344a5b;overflow-wrap:anywhere}
.site-body .footer-contact svg{color:var(--primary)}
.site-body .footer-bottom{color:#5e7382}
.site-body .footer-bottom b{color:var(--accent)}
.site-body .footer-social a{color:#075e81;border-bottom:1px solid #8fc6d8}
.site-body .footer-social a:hover{color:var(--accent)}
.site-body .footer-brand img{display:block}
/* v1.1 — Responsive Google Maps block on Contact page. */
.contact-location-section{padding:0 0 100px;background:var(--bg)}
.contact-location-heading{display:flex;gap:24px;justify-content:space-between;align-items:end;margin-bottom:26px}
.contact-location-heading .eyebrow{margin-bottom:12px}
.contact-location-heading h2{margin:0 0 10px;font-size:clamp(1.85rem,3.5vw,3rem)}
.contact-location-heading p:not(.eyebrow){color:var(--muted);margin:0;font-size:.92rem}
.contact-map-shell{border:1px solid var(--border);border-radius:14px;overflow:hidden;background:#eaf3f9;box-shadow:var(--shadow)}
.contact-map-shell iframe{display:block;border:0;width:100%;height:435px}
.contact-map-placeholder{border:1px dashed var(--strong-border);border-radius:14px;min-height:220px;display:flex;align-items:center;justify-content:center;gap:18px;padding:30px;background:var(--surface)}
.contact-map-placeholder svg{color:var(--primary)}
.contact-map-placeholder b{display:block;font-size:1.1rem;margin-bottom:8px}
.contact-map-placeholder p{color:var(--muted);margin:0;font-size:.85rem}
@media(max-width:700px){.contact-location-section{padding-bottom:65px}.contact-location-heading{align-items:flex-start;flex-direction:column;gap:18px}.contact-location-heading .btn{width:100%}.contact-map-shell iframe{height:320px}.contact-map-placeholder{align-items:flex-start;flex-direction:column}}

/* v1.2 - Separate Team leadership and employee/staff sections. */
.team-page .team-group+.team-group{margin-top:90px;padding-top:76px;border-top:1px solid var(--border)}
.team-group-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:35px}
.team-group-heading h2{font-size:clamp(1.85rem,3vw,2.8rem);line-height:1.2;margin:7px 0 13px;letter-spacing:-.035em}
.team-group-heading p:not(.eyebrow){color:var(--muted);font-size:.94rem;margin:0;max-width:580px;line-height:1.7}
.team-group-count{font-size:.7rem;white-space:nowrap;letter-spacing:.11em;font-weight:800;color:var(--muted);border:1px solid var(--border);border-radius:100px;padding:10px 15px}
.team-group-leadership .team-group-heading .eyebrow{color:var(--accent)}
.team-group-members .team-group-heading .eyebrow{color:var(--primary)}
.team-page .team-card{overflow:hidden;transition:transform .2s ease,border-color .2s ease}
.team-page .team-card:hover{transform:translateY(-3px);border-color:var(--strong-border)}
.team-member-type{display:inline-flex;font-size:.65rem;letter-spacing:.11em;text-transform:uppercase;font-weight:800;color:var(--primary);background:rgba(8,174,234,.1);border:1px solid rgba(8,174,234,.23);border-radius:20px;padding:6px 11px;margin-bottom:14px}
.team-group-leadership .team-member-type{color:#d8757e;background:rgba(151,24,32,.09);border-color:rgba(151,24,32,.24)}
.team-admin-category{color:var(--primary)!important;font-weight:700;margin-top:4px}
@media(max-width:700px){.team-page .team-group+.team-group{margin-top:62px;padding-top:54px}.team-group-heading{align-items:flex-start;flex-direction:column;gap:13px;margin-bottom:25px}.team-group-count{font-size:.63rem}.team-group-heading h2{font-size:2rem}}


/* v1.3 - Premium team cards and icon-only social links */
.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}
.team-page .team-group-heading{margin-bottom:32px}
.team-page .team-card{position:relative;background:linear-gradient(180deg,var(--surface) 0%,var(--surface2) 100%);border:1px solid rgba(8,174,234,.16);border-radius:24px;overflow:hidden;box-shadow:0 20px 48px rgba(4,16,24,.08),0 6px 18px rgba(4,16,24,.05)}
.team-page .team-card:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--primary),var(--accent));opacity:.95}
.team-page .team-card:hover{transform:translateY(-7px);border-color:rgba(8,174,234,.34);box-shadow:0 28px 58px rgba(4,16,24,.14),0 10px 24px rgba(4,16,24,.08)}
.team-page .team-photo{height:350px;background:linear-gradient(180deg,rgba(8,174,234,.08),rgba(151,24,32,.05));overflow:hidden}
.team-page .team-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease}
.team-page .team-card:hover .team-photo img{transform:scale(1.035)}
.team-page .team-photo span{display:grid;place-items:center;height:100%;font-size:5rem;font-weight:800;color:var(--primary);background:linear-gradient(180deg,rgba(8,174,234,.08),rgba(151,24,32,.08))}
.team-page .team-info{padding:24px 24px 22px}
.team-page .team-info h3{font-size:1.72rem;line-height:1.15;margin:0 0 8px;color:var(--text)}
.team-page .team-info .eyebrow{margin:0 0 14px;font-size:.76rem;letter-spacing:.22em}
.team-page .team-info>p:last-of-type{margin-bottom:0;color:var(--muted);font-size:.95rem;line-height:1.85}
.team-page .social-links{display:flex;align-items:center;gap:12px;margin-top:22px;padding-top:18px;border-top:1px solid var(--border)}
.team-page .social-links a{position:relative;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;border:1px solid var(--border);background:rgba(8,174,234,.06);color:var(--text);transition:transform .2s ease,background .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease}
.team-page .social-links a:hover{transform:translateY(-3px);background:rgba(8,174,234,.12);border-color:rgba(8,174,234,.35);color:var(--primary);box-shadow:0 10px 22px rgba(8,174,234,.12)}
.team-page .social-links a svg{width:18px;height:18px}
.team-page .team-grid{gap:24px}
@media(max-width:700px){.team-page .team-photo{height:320px}.team-page .team-info{padding:21px 18px 18px}.team-page .team-info h3{font-size:1.42rem}.team-page .social-links{margin-top:18px;padding-top:15px}}


/* v1.4 - Premium role-specific team badges. Two badges allowed (e.g. Founder + Managing Director). */
.team-page .team-badges{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 17px}
.team-page .team-member-type{margin:0;padding:7px 12px;display:inline-flex;align-items:center;min-height:30px;line-height:1.15;border-radius:100px;font-size:.65rem;font-weight:800;letter-spacing:.085em;box-shadow:inset 0 1px 0 rgba(255,255,255,.07)}
.team-page .team-member-type.team-badge-md{color:#6ed7fa;background:rgba(8,174,234,.12);border-color:rgba(8,174,234,.42)}
.team-page .team-member-type.team-badge-founder{color:#f4a4ad;background:rgba(151,24,32,.2);border-color:rgba(233,89,107,.4)}
.team-page .team-member-type.team-badge-owner{color:#f1c77b;background:rgba(208,155,51,.16);border-color:rgba(208,155,51,.43)}
.team-page .team-member-type.team-badge-employee{color:#b5c7d8;background:rgba(132,153,175,.13);border-color:rgba(132,153,175,.29)}
.team-page .team-member-type.team-badge-staff{color:#9ce6d1;background:rgba(48,170,132,.13);border-color:rgba(48,170,132,.32)}
[data-theme=light] .team-page .team-member-type.team-badge-md{color:#036f9a;background:#e5f7fe;border-color:#b3e9f8}
[data-theme=light] .team-page .team-member-type.team-badge-founder{color:#a52b3b;background:#fbeef0;border-color:#f0c2c9}
[data-theme=light] .team-page .team-member-type.team-badge-owner{color:#956515;background:#fff6e5;border-color:#edd3a2}
[data-theme=light] .team-page .team-member-type.team-badge-employee{color:#526478;background:#edf3f7;border-color:#dce4ec}
[data-theme=light] .team-page .team-member-type.team-badge-staff{color:#126c52;background:#eaf9f2;border-color:#bde8d4}
.team-group-leadership .team-card:before{background:linear-gradient(90deg,#08aeea,#971820 62%,#d9a853)}
@media(max-width:700px){.team-page .team-badges{gap:7px;margin-bottom:14px}}
