@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
:root{--ink:#111e35;--muted:#526078;--blue:#0968ee;--pale:#eff7ff;--line:#dce8f7}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:white}a{color:inherit;text-decoration:none}p{line-height:1.55;color:var(--muted)}h1,h2,h3{letter-spacing:-.045em;margin:.35em 0}h1{font-size:clamp(2.6rem,5vw,4.4rem);line-height:1.05}h2{font-size:clamp(1.8rem,3vw,2.65rem);line-height:1.13}h3{font-size:1.08rem}.container{width:min(1200px,calc(100% - 64px));margin:auto}.site-header{background:white;position:sticky;top:0;z-index:30;border-bottom:1px solid #edf3fa}.nav{height:78px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:9px;font-size:1.35rem;white-space:nowrap}.brand span:not(.mark){font-weight:500}.mark{font-size:2.1rem;font-weight:800;letter-spacing:-.15em;color:#0787f6;border-radius:50%;line-height:1}.nav nav{display:flex;gap:28px;font-size:.85rem;font-weight:600}.nav nav a{padding:28px 0}.nav nav a:hover,.nav nav a.active{color:var(--blue);box-shadow:inset 0 -2px var(--blue)}.btn{display:inline-block;border:1px solid var(--blue);background:var(--blue);color:#fff;border-radius:8px;padding:14px 21px;font:600 .85rem Inter,Arial;cursor:pointer;box-shadow:0 7px 16px #0968ee18}.btn:hover{background:#034fb9;color:#fff}.btn.small{padding:11px 18px}.btn.outline{background:white;color:var(--blue)}.btn.outline:hover{background:#eef6ff}.btn:disabled{opacity:.6;cursor:wait}.hero{background:linear-gradient(110deg,#fff 0%,#f5faff 53%,#e8f5ff 100%);overflow:hidden}.hero-inner{display:grid;grid-template-columns:48% 52%;min-height:440px;align-items:center}.hero-copy{padding:44px 0 20px;z-index:1}.hero h1 em{font-style:normal;color:#09a4ee}.hero-copy>p{max-width:510px;font-size:1.05rem}.eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.18em;color:#0765c7}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0}.hero-features{display:flex;gap:24px;margin-top:34px;font-size:.77rem;font-weight:600;color:#31415b}.hero-photo{height:440px;position:relative;background:linear-gradient(90deg,#f5faff00,#ffffff10),url('/images/approved-design-reference.png') center 9% / 1200px auto no-repeat;mask-image:linear-gradient(to right,transparent 0%,black 18%)}.hero-photo div{position:absolute;right:5%;top:14%;font-size:.95rem;letter-spacing:.22em;line-height:1.5;color:#253d65}.section{padding-top:52px;padding-bottom:52px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.section-head p{margin:8px 0 0}.industry-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.industry-card{border:1px solid #e4edf8;border-radius:10px;overflow:hidden;transition:.2s;box-shadow:0 5px 15px #12345605}.industry-card:hover{transform:translateY(-4px);box-shadow:0 10px 25px #12345615}.industry-image{height:145px;display:flex;align-items:end;padding:12px;background-size:cover;background-position:center}.industry-image span{background:white;color:var(--blue);border-radius:50%;width:38px;height:38px;display:grid;place-items:center;font-size:1.4rem;box-shadow:0 3px 12px #0002}.industry-content{padding:13px}.industry-content h3{font-size:.92rem;letter-spacing:-.03em}.industry-content p{font-size:.78rem;min-height:92px;margin:8px 0}.learn{color:var(--blue);font-size:.8rem;font-weight:700}.partner{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.globe span{font-size:1.2rem;letter-spacing:.23em;line-height:1.7}.globe p{max-width:220px;color:#e0e9f7;font-size:.8rem}.benefits{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:20px}.benefits b{color:#15243e}.benefits p{font-size:.85rem;margin:5px 0}.process{background:#f7fbff;padding:45px 0}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:30px}.steps>div{display:grid;grid-template-columns:44px 1fr;gap:4px 10px}.steps i{grid-row:span 2;border:1.5px solid #1385f8;border-radius:50%;width:42px;height:42px;display:grid;place-items:center;font-style:normal;font-weight:700}.steps b{font-size:.85rem}.steps p{font-size:.76rem;margin:0}.demo-panel{display:grid;grid-template-columns:70% 30%;background:linear-gradient(110deg,#f5faff,#e4f2ff);border-radius:13px;overflow:hidden;min-height:350px}.demo-copy{padding:30px 36px}.demo-copy h2{font-size:2rem}.demo-copy>p{margin:4px 0 15px;font-size:.9rem}.demo-art{background:linear-gradient(90deg,#e8f4ff44,#0c3a6b55),url('https://images.unsplash.com/photo-1497366754035-f200968a6e72?w=850') center/cover;display:flex;align-items:end;padding:25px}.demo-art-label{color:white;font-size:1.3rem;line-height:1.4;text-shadow:0 2px 8px #0009}.form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:12px 0}.form-grid.secondary{grid-template-columns:1fr 2fr}.form-grid label{font-size:.74rem;font-weight:700}.form-grid input,.form-grid select{display:block;width:100%;margin-top:5px;padding:11px;border:1px solid #cbdcf0;border-radius:6px;background:white;font:inherit;font-weight:400;font-size:.83rem}.consent{display:flex;align-items:flex-start;gap:8px;font-size:.72rem;line-height:1.5;margin:15px 0}.consent input{margin-top:3px;accent-color:var(--blue)}.consent a,.legal a{color:var(--blue);text-decoration:underline}.validation-message,.validation-summary-errors,.error{color:#af2836;font-size:.78rem}.success{padding:20px;background:#e3f8ed;border:1px solid #87d7a8;border-radius:8px}.footer{padding:35px 0 15px;background:#f9fcff;border-top:1px solid #e8f0fa}.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.4fr;gap:35px}.foot-grid>div{display:flex;flex-direction:column;gap:8px}.foot-grid a:not(.btn):hover{color:var(--blue)}.foot-grid p,.foot-grid a{font-size:.82rem;margin:0}.foot-grid .brand{font-size:1.2rem}.foot-grid .brand .mark{font-size:1.9rem}.foot-grid b{margin-bottom:4px}.foot-bottom{border-top:1px solid #d9e5f1;margin-top:30px;padding-top:14px;display:flex;justify-content:space-between;font-size:.73rem;color:var(--muted)}.page-hero{padding-top:75px;padding-bottom:60px;min-height:310px}.page-hero p{font-size:1.1rem;max-width:700px}.page-hero .btn{margin-top:12px}.feature-box{padding:30px;border:1px solid var(--line);border-radius:12px;background:#f7fbff}.legal{max-width:850px}.legal h2{font-size:1.5rem;margin-top:30px}
@media(max-width:1000px){.industry-grid{grid-template-columns:repeat(3,1fr)}.nav nav{gap:12px}.hero-photo{background-size:1000px auto}.demo-panel{grid-template-columns:1fr}.demo-art{min-height:150px}.partner{gap:20px}}@media(max-width:700px){.container{width:min(100% - 32px,1200px)}.nav{height:auto;flex-wrap:wrap;padding:15px 0}.nav nav{order:3;width:100%;overflow-x:auto;white-space:nowrap;gap:20px}.nav nav a{padding:12px 0}.nav>.btn{display:none}.hero-inner{grid-template-columns:1fr}.hero-photo{height:220px;grid-row:1;background-size:850px auto;background-position:center 6%}.hero-photo div{display:none}.hero-copy{padding:20px 0 30px}.hero-features{flex-wrap:wrap;gap:15px}.section-head{align-items:start;flex-direction:column}.industry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.partner{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}.form-grid,.form-grid.secondary{grid-template-columns:1fr 1fr}.foot-grid{grid-template-columns:1fr 1fr}.foot-bottom{gap:10px;flex-wrap:wrap}}@media(max-width:420px){.industry-grid,.benefits,.form-grid,.form-grid.secondary,.steps{grid-template-columns:1fr}.industry-content p{min-height:auto}.demo-copy{padding:22px}.foot-grid{grid-template-columns:1fr 1fr}}

/* v3: full-width enterprise layout and clean photo-only hero */
.container{width:min(1560px,calc(100% - 88px))}
.hero{width:100%;background:linear-gradient(90deg,#fff 0%,#f7fbff 45%,#e6f4ff 100%)}
.hero-inner{width:min(1660px,calc(100% - 88px));grid-template-columns:minmax(520px,44%) minmax(0,56%);min-height:560px;gap:18px}
.hero-copy{padding:58px 0 48px}
.hero-copy h1{font-size:clamp(3rem,4.5vw,5rem);max-width:700px}
.hero-copy>p{max-width:640px}
.hero-photo{height:510px;width:100%;background-image:linear-gradient(90deg,#f7fbff 0%,#f7fbff00 18%),url('/images/doha-skyline-crop.png');background-size:cover;background-position:center center;mask-image:none;border-radius:0 0 0 80px}
.hero-photo div{right:4%;top:8%;padding:12px;background:#ffffffc9;border-radius:6px;font-size:.77rem}
.partner{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:60px}
.globe{min-height:410px;padding:55px}
.section{padding-top:65px;padding-bottom:65px}
.industry-grid{gap:18px}
.industry-image{height:175px}
@media(max-width:1000px){.container,.hero-inner{width:min(100% - 44px,1560px)}.hero-inner{grid-template-columns:1fr 1fr;gap:0;min-height:470px}.hero-photo{height:420px}.hero-copy h1{font-size:clamp(2.6rem,4.6vw,4rem)}.partner{gap:28px}}
@media(max-width:700px){.container,.hero-inner{width:min(100% - 32px,1560px)}.hero-inner{grid-template-columns:1fr}.hero-photo{grid-row:1;height:245px;background-position:center 42%;border-radius:0 0 20px 20px}.hero-copy{padding:22px 0 30px}.hero-copy h1{font-size:clamp(2.5rem,10vw,4rem)}.partner{grid-template-columns:1fr}}

/* Expanded content pages */
.page-banner{background:linear-gradient(110deg,#fff,#eaf5ff)}.banner-grid{display:grid;grid-template-columns:51% 49%;gap:25px;align-items:center;min-height:480px;padding:48px 0}.banner-grid h1{font-size:clamp(2.7rem,4.2vw,4.8rem)}.banner-grid p{font-size:1.07rem}.banner-visual{height:365px;border-radius:18px;background-size:cover;background-position:center;position:relative;box-shadow:0 20px 50px #12345622}.banner-visual span{position:absolute;bottom:22px;left:24px;background:#082445d9;color:white;padding:12px;border-radius:6px;letter-spacing:.14em;font-size:.75rem;font-weight:700}.ai-visual{background-image:url('https://images.unsplash.com/photo-1677442136019-21780ecad995?w=1200')}.about-visual{background-image:url('https://images.unsplash.com/photo-1497366811353-6870744d04b2?w=1200')}.globe-photo{background-image:url('https://images.unsplash.com/photo-1451187580459-43490279c0fa?w=1200')}.center-intro{text-align:center;max-width:760px;margin:0 auto 36px}.solution-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.solution-tile{border:1px solid #dce8f7;background:white;border-radius:13px;padding:28px;box-shadow:0 8px 25px #08244808;display:flex;flex-direction:column;min-height:245px}.solution-tile h3{font-size:1.3rem;margin-top:18px}.solution-tile p{font-size:.9rem;flex:1}.solution-tile a{font-size:.84rem;color:var(--blue);font-weight:700}.tile-icon{width:48px;height:48px;border-radius:13px;background:#e8f3ff;color:#0968ee;font-size:1.6rem;display:grid;place-items:center}.tinted{background:#f5faff}.split-feature{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.feature-photo{height:390px;border-radius:16px;background-size:cover;background-position:center}.check-list{padding-left:22px;line-height:2.1;color:#344861;margin-bottom:25px}.check-list li::marker{color:#0968ee}.industry-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.industry-mini a{padding:25px;border:1px solid #dce8f7;border-radius:10px;font-weight:700;color:#0968ee;background:#f8fbff}.approach-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.approach-grid>div{padding:22px;background:#f4f9ff;border:1px solid #dce8f7;border-radius:10px}.approach-grid strong{font-size:1.8rem;color:#0968ee}.approach-grid p{font-size:.85rem}.callout{text-align:center;padding:55px;background:linear-gradient(120deg,#e8f5ff,#f8fbff);border-radius:15px}.callout p{margin-bottom:25px}@media(max-width:900px){.banner-grid,.split-feature{grid-template-columns:1fr}.banner-visual{height:310px}.solution-grid{grid-template-columns:repeat(2,1fr)}.approach-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:600px){.solution-grid,.industry-mini,.approach-grid{grid-template-columns:1fr}.banner-visual{height:235px}.feature-photo{height:260px}}

/* AI hero and prominent homepage demo form */
.hero-photo.ai-hero{background:#081c43 url('/images/ai-hero.svg') center/cover no-repeat!important;mask-image:none!important;border-radius:24px;height:475px;box-shadow:0 28px 65px #0b3c8133}.homepage-demo{padding-top:44px;padding-bottom:25px;scroll-margin-top:110px}.demo-panel{scroll-margin-top:110px}.homepage-demo .demo-panel{box-shadow:0 15px 45px #0c438014;border:1px solid #d7e9fc}.demo-copy .form-grid textarea{display:block;width:100%;margin-top:5px;padding:11px;border:1px solid #cbdcf0;border-radius:6px;background:white;font:inherit;font-weight:400;font-size:.83rem;min-height:70px;resize:vertical}.demo-panel .demo-art{background:linear-gradient(180deg,#0a215866,#091a45bb),url('/images/ai-hero.svg') center/cover no-repeat}.consent{padding:12px;background:#fff;border:1px solid #d5e5f7;border-radius:7px}.consent input{min-width:16px;min-height:16px}.demo-copy{padding:34px 40px}@media(max-width:1000px){.hero-photo.ai-hero{height:400px}}@media(max-width:700px){.hero-photo.ai-hero{height:260px;border-radius:14px}.homepage-demo{padding-top:28px}.demo-copy{padding:24px}}

/* Premium hero and bottom consultation */
.brand-mark{width:43px;height:43px;display:block;flex:none}.brand{gap:8px;letter-spacing:-.04em}.hero{background:linear-gradient(110deg,#fff,#f3f9ff 52%,#e7f4ff)}.hero-inner{grid-template-columns:minmax(0,44%) minmax(0,56%);min-height:590px;gap:26px;align-items:center}.hero-copy{padding:60px 0}.hero-copy h1{font-size:clamp(3rem,4.1vw,4.8rem);line-height:1.07;border:0!important;outline:0!important;box-shadow:none!important}.hero-photo.ai-hero{background:url('/images/qlink-ai-industries.svg') center/contain no-repeat!important;mask-image:none!important;height:510px;border-radius:24px;box-shadow:none}.hero-photo.ai-hero::before,.hero-photo.ai-hero::after{display:none!important}.consultation-wrap{scroll-margin-top:110px;background:linear-gradient(130deg,#f1f8ff,#fff);padding:75px 0 90px;border-top:1px solid #dce9fa}.consultation-intro{text-align:center;max-width:740px;margin:0 auto 30px}.consultation-intro h2{font-size:clamp(2rem,3.4vw,3rem)}.consultation-wrap .demo-panel{background:white;border:1px solid #d7e7f7;box-shadow:0 24px 65px #0a397217;grid-template-columns:72% 28%}.consultation-wrap .demo-copy{padding:38px 44px}.consultation-wrap .demo-art{background:linear-gradient(180deg,#0a244a66,#0a244aaa),url('/images/qlink-ai-industries.svg') center/cover}.consultation-wrap .form-grid input,.consultation-wrap .form-grid select,.consultation-wrap .form-grid textarea{min-height:46px;font-size:.9rem}.consultation-wrap .consent{font-size:.79rem;line-height:1.6;background:#f3f8ff;border:1px solid #dce9f7;border-radius:8px;padding:15px}.consultation-wrap .consent input{width:19px;height:19px;flex:none}.consultation-wrap button[type=submit]{padding:16px 28px;font-size:.94rem}@media(max-width:1000px){.hero-inner{grid-template-columns:1fr 1fr;min-height:480px;gap:16px}.hero-photo.ai-hero{height:400px}.consultation-wrap .demo-panel{grid-template-columns:1fr}.consultation-wrap .demo-art{min-height:180px}}@media(max-width:700px){.hero-inner{grid-template-columns:1fr}.hero-photo.ai-hero{grid-row:1;height:260px;margin-top:22px}.hero-copy{padding:15px 0 45px}.consultation-wrap{padding:50px 0}.consultation-wrap .demo-copy{padding:24px}}

/* Approved full-page reference implementation, deliberately overrides legacy styles */
:root{--ink:#101f3b;--blue:#0968ec}
.site-header{position:sticky;background:#fff;box-shadow:0 2px 16px #102d5810}
.container{width:min(1460px,calc(100% - 84px))}
.nav{height:76px}
.brand{font-size:1.3rem}.brand-mark{width:42px;height:42px}
.new-hero{background:linear-gradient(100deg,#fff 0%,#f7fbff 48%,#e4f2ff 100%);overflow:hidden}
.new-hero-grid{min-height:610px;display:grid;grid-template-columns:44% 56%;align-items:center}
.new-hero-copy{padding:65px 0;position:relative;z-index:2}
.new-hero h1{font-size:clamp(3rem,4.7vw,5.4rem);line-height:1.08;letter-spacing:-.06em;margin:20px 0}
.new-hero h1 em{font-style:normal;color:#1269e7}
.new-hero-copy>p{max-width:550px;font-size:1.12rem}
.new-hero-image{height:610px;width:calc(100% + 42px);background:url('/images/approved-hero-scene.png') center/cover no-repeat;mask-image:linear-gradient(to right,transparent 0%,black 8%);border:0}
.hero-points{display:flex;gap:24px;align-items:center;margin-top:36px;font-size:.78rem;font-weight:700;line-height:1.5;color:#173455}
.hero-points span{flex:1}
.section{padding-top:66px;padding-bottom:66px}
.industry-grid.five{grid-template-columns:repeat(5,minmax(0,1fr));gap:19px}
.industry-image{height:190px}
.industry-content{padding:18px}
.industry-content h3{font-size:1.07rem}
.industry-content p{min-height:105px;font-size:.83rem}
.strategic{background:#081d3d;color:#fff;overflow:hidden}
.strategic-grid{min-height:410px;display:grid;grid-template-columns:53% 47%;align-items:center;gap:12px}
.strategic-grid>div:first-child{padding:55px 0;z-index:1}
.strategic .eyebrow{color:#a8d7ff}
.strategic h2{font-size:clamp(2rem,3.1vw,3.2rem);line-height:1.15}
.strategic p{color:#c5d8ed}
.strategic-benefits{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:25px 0}
.strategic-benefits b{font-size:.93rem}
.strategic-benefits p{font-size:.8rem;margin:7px 0}
.strategic-image{height:410px;width:calc(100% + 42px);background:url('/images/global-network.png') center/cover no-repeat;mask-image:linear-gradient(to right,transparent 0%,black 24%)}
.process-five{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;margin-top:34px}
.process-five>div{display:grid;grid-template-columns:36px 1fr;gap:4px 10px;align-content:start}
.process-five strong{background:#116beb;color:white;border-radius:50%;width:35px;height:35px;display:grid;place-items:center;grid-row:span 2}
.process-five b{font-size:.95rem}
.process-five p{margin:0;font-size:.8rem}
.featured{background:#eff8ff}
.final-consult{background:linear-gradient(110deg,#0b284d,#1d6099);color:white;scroll-margin-top:76px;padding:60px 0}
.consult-grid{display:grid;grid-template-columns:44% 56%;align-items:center;gap:35px}
.consult-copy .eyebrow{color:#a7d5ff}
.consult-copy h2{font-size:clamp(2.1rem,3vw,3.2rem)}
.consult-copy p{color:#e4f1ff;max-width:520px}
.final-consult .demo-panel{display:block;background:#fff;border-radius:12px;color:#152642;box-shadow:0 16px 36px #041b3644;min-height:0}
.final-consult .demo-copy{padding:28px}
.final-consult .form-grid{grid-template-columns:1fr 1fr}
.final-consult .form-grid.secondary{grid-template-columns:1fr}
.final-consult .form-grid input,.final-consult .form-grid select,.final-consult textarea{min-height:42px}
.final-consult .consent{font-size:.73rem;line-height:1.45;display:flex;align-items:start}
.final-consult .consent input{flex:none;width:17px;height:17px}
.final-consult button[type=submit]{width:100%}
.footer{background:#081c39;color:white;border:0}
.footer p,.footer a,.foot-bottom{color:#c8d8ea}
.footer a:hover{color:white!important}
.foot-grid{grid-template-columns:1.7fr 1fr 1fr 1fr 1.25fr}
.foot-bottom{border-top:1px solid #2c4361}
@media(max-width:1000px){.new-hero-grid{grid-template-columns:48% 52%}.new-hero-image{height:520px}.industry-grid.five{grid-template-columns:repeat(3,1fr)}.consult-grid{grid-template-columns:1fr 1fr}.foot-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.container{width:calc(100% - 32px)}.new-hero-grid{grid-template-columns:1fr}.new-hero-copy{padding:40px 0 15px}.new-hero-image{height:320px;width:100%;mask-image:none}.hero-points{gap:10px;flex-wrap:wrap}.industry-grid.five{grid-template-columns:repeat(2,minmax(0,1fr))}.strategic-grid,.consult-grid{grid-template-columns:1fr}.strategic-image{height:230px;width:100%;mask-image:none}.process-five{grid-template-columns:1fr 1fr}.foot-grid{grid-template-columns:1fr 1fr}.final-consult .form-grid{grid-template-columns:1fr}}
@media(max-width:420px){.industry-grid.five,.process-five,.strategic-benefits{grid-template-columns:1fr}.new-hero h1{font-size:2.65rem}}

/* Enterprise v5: final scoped visual and form corrections */
.container{width:min(1600px,calc(100% - 88px))}
.new-hero-grid{width:min(1710px,calc(100% - 88px));grid-template-columns:minmax(0,42%) minmax(0,58%);min-height:690px;gap:18px}
.new-hero-copy{padding:72px 0}
.new-hero h1{font-size:clamp(3.2rem,4.6vw,5.6rem);line-height:1.07;max-width:730px}
.new-hero h1,.new-hero h1 *{border:0!important;outline:0!important;box-shadow:none!important}
.new-hero-image{height:660px;width:100%;background-image:url('/images/enterprise-hero-hd.png')!important;background-size:contain;background-position:center center;mask-image:linear-gradient(to right,transparent 0%,black 7%);background-repeat:no-repeat}
.industry-image.dental{background-image:linear-gradient(140deg,#0b2c5133,#1684ac11),url('/images/dental-suite.png')!important;background-position:center;background-size:cover}
.featured{display:none!important}
.final-consult{padding:80px 0 92px;scroll-margin-top:90px}
.consult-grid{grid-template-columns:minmax(0,42%) minmax(0,58%);gap:52px;align-items:start}
.final-consult .demo-panel,.contact-project-section .demo-panel{display:block!important;visibility:visible!important;opacity:1!important;min-height:480px;width:100%;background:#fff!important;color:#162a49!important;border:1px solid #d9e6f5;border-radius:16px;box-shadow:0 24px 60px #001d3d33;overflow:visible}
.final-consult .demo-copy,.contact-project-section .demo-copy{display:block!important;padding:35px 38px!important;color:#162a49!important}
.consultation-form-card h3{font-size:1.5rem;margin:0 0 8px}.consultation-form-card .form-intro{margin:0 0 20px;color:#556780;font-size:.88rem}
.consultation-form-card .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:0 0 17px}
.consultation-form-card .form-grid.secondary{grid-template-columns:1fr}
.consultation-form-card label{display:block;color:#1a3153;font-size:.84rem;font-weight:650}
.consultation-form-card .form-grid input,.consultation-form-card .form-grid select,.consultation-form-card textarea{width:100%;display:block;min-height:48px;padding:12px 14px;margin-top:7px;border:1px solid #cbd9e9;border-radius:8px;background:#fff;color:#1a3153;font:400 .92rem Inter,Arial,sans-serif}
.consultation-form-card textarea{min-height:116px;resize:vertical}
.consultation-form-card .message-label{display:block;margin-bottom:16px}
.consultation-form-card .consent{display:flex;align-items:flex-start;gap:12px;background:#f3f8ff;border:1px solid #d6e6fa;border-radius:9px;padding:16px;margin:18px 0;color:#253a55;font-size:.76rem;line-height:1.65;font-weight:400}
.consultation-form-card .consent input{display:block;width:20px;height:20px;min-width:20px;min-height:20px;margin:2px 0 0;accent-color:#0968ec}
.consultation-form-card .consent a{color:#075bc8;text-decoration:underline}
.consultation-form-card button[type=submit]{display:block;width:100%;padding:16px;margin-top:14px;font-size:.95rem}
.consultation-form-card .form-note{font-size:.74rem;margin:12px 0 0;text-align:center}
.consultation-form-card .validation-summary-errors,.consultation-form-card .validation-message{color:#ae2435;font-size:.8rem}
.contact-project-section{background:linear-gradient(115deg,#eff7ff,#dcefff);padding:75px 0;scroll-margin-top:85px}
.contact-project-grid{display:grid;grid-template-columns:minmax(0,40%) minmax(0,60%);gap:55px;align-items:start}
.contact-project-grid>div:first-child{padding-top:32px}
.contact-project-grid h2{font-size:clamp(2rem,3.2vw,3.1rem)}
.footer .foot-grid{grid-template-columns:1.5fr 1fr 1fr 1fr 1fr}
@media(max-width:1100px){.new-hero-grid{grid-template-columns:45% 55%;min-height:570px}.new-hero-image{height:540px}.consult-grid,.contact-project-grid{gap:24px}}
@media(max-width:750px){.container,.new-hero-grid{width:calc(100% - 32px)}.new-hero-grid,.consult-grid,.contact-project-grid{grid-template-columns:1fr}.new-hero-copy{padding:38px 0 12px}.new-hero-image{height:350px;mask-image:none}.final-consult{padding:50px 0}.consultation-form-card .form-grid{grid-template-columns:1fr}.final-consult .demo-copy,.contact-project-section .demo-copy{padding:22px!important}.footer .foot-grid{grid-template-columns:1fr 1fr}}

/* Consultation form is rendered directly on Home.razor, not dependent on a child component. */
.final-consult .consult-grid{display:grid!important;grid-template-columns:minmax(0,41%) minmax(0,59%)!important;gap:40px!important;align-items:start!important}
.final-consult .consultation-white-card{display:block!important;visibility:visible!important;opacity:1!important;position:relative!important;z-index:2!important;background:#fff!important;color:#142844!important;border-radius:15px!important;padding:34px 38px!important;box-shadow:0 22px 55px #06182b50!important;min-width:0!important;width:100%!important;height:auto!important}
.consultation-white-card h3{font-size:1.55rem;margin:0 0 7px;color:#142844}
.consultation-white-card>p{color:#566781;margin:0 0 24px;font-size:.9rem}
.consultation-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-bottom:15px}
.consultation-white-card label{display:block;color:#1b3152;font-size:.84rem;font-weight:650}
.consultation-white-card input:not([type=checkbox]),.consultation-white-card select,.consultation-white-card textarea{display:block;width:100%;box-sizing:border-box;margin-top:7px;padding:12px 13px;min-height:46px;border:1px solid #c7d7ea;border-radius:8px;background:#fff;color:#142844;font:400 .92rem Inter,Arial,sans-serif}
.consultation-white-card textarea{min-height:120px;resize:vertical}
.consultation-full{margin-bottom:15px}
.consultation-white-card .consultation-consent{display:flex;align-items:flex-start;gap:12px;background:#f0f7ff;border:1px solid #d5e6fa;border-radius:9px;padding:14px;margin:16px 0;color:#33435b;font-size:.77rem;font-weight:400;line-height:1.55}
.consultation-consent input[type=checkbox]{flex:none;width:20px;height:20px;margin-top:2px;accent-color:#0968ec}
.consultation-consent a{color:#075bc8;text-decoration:underline}
.consultation-submit{display:block;width:100%;padding:15px;font-size:.94rem}
.consultation-note{font-size:.76rem;text-align:center;color:#5d6d82;margin:12px 0 0}
@media(max-width:900px){.final-consult .consult-grid{grid-template-columns:1fr!important}.final-consult .consultation-white-card{padding:26px!important}}
@media(max-width:520px){.consultation-fields{grid-template-columns:1fr}.final-consult .consultation-white-card{padding:20px!important}}

.admin-login{display:grid;gap:16px}.admin-login label,.admin-detail label{display:grid;gap:8px}.admin-login input,.admin-toolbar input,.admin-toolbar select,.admin-detail textarea,.admin-detail select{padding:12px;border:1px solid #d5e1ee;border-radius:8px;font:inherit}.admin-toolbar{display:flex;gap:12px;margin:25px 0}.admin-table{width:100%;border-collapse:collapse;font-size:.88rem}.admin-table td,.admin-table th{border-bottom:1px solid #e1eaf5;text-align:left;padding:13px;vertical-align:top}.admin-table th{background:#f1f7ff}.admin-detail{background:#f5f9ff;border:1px solid #d6e4f5;border-radius:12px;padding:25px;margin-top:25px}.admin-detail textarea{width:100%}

/* ============================================================
   Ten-category industry grid + enterprise AI services
   Appended last so it wins over the earlier legacy blocks.
   ============================================================ */

/* --- Equal-height, fully clickable cards -------------------- */
/* The card, its anchor and the content column all stretch, so every card in a
   row ends at the same height regardless of how long its summary text is. */
.industry-grid,.industry-grid.five,.service-grid{align-items:stretch}
.industry-card,.service-card{display:flex;height:100%;background:#fff}
.industry-card>a,.service-card>a{display:flex;flex-direction:column;width:100%;height:100%}
.industry-content,.service-content{display:flex;flex-direction:column;flex:1}
/* Replaces the fixed min-height the old five-card layout relied on. */
.industry-content p,.service-content p{flex:1;min-height:0;margin:8px 0 12px}
.industry-content .learn,.service-content .learn{margin-top:auto}

/* --- Grid: five per row on large desktop, two rows of five --- */
.industry-grid,.industry-grid.five{grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}
.service-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;align-items:stretch}

/* --- Consistent image dimensions ---------------------------- */
.industry-image,.service-image{height:180px;flex:0 0 180px;background-size:cover;background-position:center;position:relative;overflow:hidden}
.industry-card,.service-card{border:1px solid #e4edf8;border-radius:12px;overflow:hidden;box-shadow:0 5px 15px #12345608}

/* --- Subtle hover animations -------------------------------- */
.industry-card,.service-card{transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.industry-card:hover,.service-card:hover,
.industry-card:focus-within,.service-card:focus-within{transform:translateY(-6px);box-shadow:0 16px 34px #1234561f;border-color:#bcd9f8}
.industry-image,.service-image{transition:transform .4s ease}
.industry-card:hover .industry-image,.service-card:hover .service-image,
.industry-card:focus-within .industry-image,.service-card:focus-within .service-image{transform:scale(1.06)}
.industry-content h3,.service-content h3{transition:color .25s ease}
.industry-card:hover h3,.service-card:hover h3{color:var(--blue)}
.learn{display:inline-block;transition:transform .25s ease}
.industry-card:hover .learn,.service-card:hover .learn{transform:translateX(4px)}
.industry-card>a:focus-visible,.service-card>a:focus-visible{outline:3px solid var(--blue);outline-offset:-3px}
@media(prefers-reduced-motion:reduce){
 .industry-card,.service-card,.industry-image,.service-image,.learn{transition:none}
 .industry-card:hover,.service-card:hover,.industry-card:focus-within,.service-card:focus-within{transform:none}
 .industry-card:hover .industry-image,.service-card:hover .service-image{transform:none}
}

/* --- Service card interior ---------------------------------- */
.service-content{padding:18px}
.service-content h3{font-size:1.02rem;letter-spacing:-.03em;margin:10px 0 0}
.service-content p{font-size:.82rem}
.tile-icon.small{width:38px;height:38px;border-radius:10px;font-size:1.2rem}

/* --- Industry card imagery (one distinct image per category) - */
.industry-image.automotive{background-image:linear-gradient(160deg,#021b39aa,#128bdb33),url('https://images.unsplash.com/photo-1492144534655-ae79c964c9d7?w=900&q=80')}
.industry-image.cruise{background-image:linear-gradient(140deg,#0a2d4f66,#124a7a44),url('https://images.unsplash.com/photo-1548574505-5e239809ee19?w=900&q=80')}
.industry-image.solar{background-image:linear-gradient(140deg,#0b365788,#0b629c33),url('https://images.unsplash.com/photo-1508514177221-188b1cf16e9d?w=900&q=80')}
.industry-image.veterinary{background-image:linear-gradient(150deg,#08284aaa,#1a86c433),url('https://images.unsplash.com/photo-1516734212186-a967f81ad0d7?w=900&q=80')}
.industry-image.contact-center{background-image:linear-gradient(150deg,#07234199,#1478c433),url('https://images.unsplash.com/photo-1521737604893-d14cc237f11d?w=900&q=80')}
.industry-image.restaurant{background-image:linear-gradient(150deg,#0a223d99,#2b8fd033),url('https://images.unsplash.com/photo-1517248135467-4c7edcad34c4?w=900&q=80')}
.industry-image.mortgage{background-image:linear-gradient(150deg,#08284799,#1a7fc733),url('https://images.unsplash.com/photo-1554224155-6726b3ff858f?w=900&q=80')}
.industry-image.real-estate{background-image:linear-gradient(150deg,#08254499,#2189cf33),url('https://images.unsplash.com/photo-1560518883-ce09059eeffa?w=900&q=80')}
.industry-image.enterprise{background-image:linear-gradient(130deg,#143d7699,#4db8e533),url('https://images.unsplash.com/photo-1486406146926-c627a92ad1ab?w=900&q=80')}

/* --- Service card imagery (distinct from every industry) ---- */
.service-image.ai-strategy-consulting{background-image:linear-gradient(150deg,#082a4d99,#1a7fc733),url('https://images.unsplash.com/photo-1552664730-d307ca884978?w=900&q=80')}
.service-image.custom-ai-development{background-image:linear-gradient(150deg,#07203c99,#2b8fd033),url('https://images.unsplash.com/photo-1461749280684-dccba630e2f6?w=900&q=80')}
.service-image.agentic-ai-voice{background-image:linear-gradient(150deg,#08284799,#1e8ad033),url('https://images.unsplash.com/photo-1478737270239-2f02b77fc618?w=900&q=80')}
.service-image.dedicated-teams{background-image:linear-gradient(150deg,#092a4c99,#1c84cb33),url('https://images.unsplash.com/photo-1522071820081-009f0129c71c?w=900&q=80')}
.service-image.enterprise-integration{background-image:linear-gradient(150deg,#07213e99,#2489cc33),url('https://images.unsplash.com/photo-1558494949-ef010cbdcc31?w=900&q=80')}

/* --- Detail page hero imagery (distinct from all card art) --- */
.banner-visual.hero-automotive{background-image:url('https://images.unsplash.com/photo-1552519507-da3b142c6e3d?w=1400&q=80')}
.banner-visual.hero-dental{background-image:url('https://images.unsplash.com/photo-1588776814546-1ffcf47267a5?w=1400&q=80')}
.banner-visual.hero-cruise{background-image:url('https://images.unsplash.com/photo-1599640842225-85d111c60e6b?w=1400&q=80')}
.banner-visual.hero-solar{background-image:url('https://images.unsplash.com/photo-1497440001374-f26997328c1b?w=1400&q=80')}
.banner-visual.hero-veterinary{background-image:url('https://images.unsplash.com/photo-1587300003388-59208cc962cb?w=1400&q=80')}
.banner-visual.hero-contact-center{background-image:url('https://images.unsplash.com/photo-1560264280-88b68371db39?w=1400&q=80')}
.banner-visual.hero-restaurant{background-image:url('https://images.unsplash.com/photo-1559339352-11d035aa65de?w=1400&q=80')}
.banner-visual.hero-mortgage{background-image:url('https://images.unsplash.com/photo-1450101499163-c8848c66ca85?w=1400&q=80')}
.banner-visual.hero-real-estate{background-image:url('https://images.unsplash.com/photo-1600596542815-ffad4c1539a9?w=1400&q=80')}
.banner-visual.hero-enterprise{background-image:url('https://images.unsplash.com/photo-1519389950473-47ba0277781c?w=1400&q=80')}
.banner-visual.hero-ai-strategy-consulting{background-image:url('https://images.unsplash.com/photo-1454165804606-c3d57bc86b40?w=1400&q=80')}
.banner-visual.hero-custom-ai-development{background-image:url('https://images.unsplash.com/photo-1555066931-4365d14bab8c?w=1400&q=80')}
.banner-visual.hero-agentic-ai-voice{background-image:url('https://images.unsplash.com/photo-1590602847861-f357a9332bbc?w=1400&q=80')}
.banner-visual.hero-dedicated-teams{background-image:url('https://images.unsplash.com/photo-1600880292089-90a7e086ee0c?w=1400&q=80')}
.banner-visual.hero-enterprise-integration{background-image:url('https://images.unsplash.com/photo-1544197150-b99a580bb7a8?w=1400&q=80')}

/* --- Detail page content blocks ----------------------------- */
.challenge-list{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.challenge-list li{position:relative;padding:16px 18px 16px 48px;background:#f7fbff;border:1px solid var(--line);border-radius:10px;font-size:.92rem;line-height:1.55;color:#33455f}
.challenge-list li::before{content:"";position:absolute;left:18px;top:19px;width:16px;height:16px;border-radius:50%;background:#dbebff;border:2px solid var(--blue)}
.benefit-list{margin:0;align-self:center}
.benefit-list li{font-size:.95rem;color:#33455f}
.delivery-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.delivery-steps>div{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px}
.delivery-steps strong{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#e8f3ff;color:var(--blue);font-size:1.05rem;margin-bottom:12px}
.delivery-steps p{margin:0;font-size:.88rem;line-height:1.55}
.callout.best-for{margin-top:32px;text-align:left;padding:30px 34px}
.callout.best-for p{margin:8px 0 0;font-size:.95rem}
.industry-banner .banner-visual,.page-banner .banner-visual{background-color:#0d2b4e}
.industry-mini{grid-template-columns:repeat(5,minmax(0,1fr))}
.industry-mini a{font-size:.85rem;padding:20px;transition:background .2s ease,border-color .2s ease}
.industry-mini a:hover{background:#eef6ff;border-color:#bcd9f8}

/* --- Responsive: five down to one ---------------------------- */
@media(max-width:1300px){
 .industry-grid,.industry-grid.five,.service-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
 .delivery-steps,.industry-mini{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:1000px){
 .industry-grid,.industry-grid.five,.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
 .industry-image,.service-image{height:165px;flex-basis:165px}
}
@media(max-width:760px){
 .industry-grid,.industry-grid.five,.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
 .industry-image,.service-image{height:150px;flex-basis:150px}
 .industry-content,.service-content{padding:14px}
 .industry-content p,.service-content p{font-size:.8rem}
 .delivery-steps,.industry-mini{grid-template-columns:1fr}
 .challenge-list li{font-size:.88rem}
}
@media(max-width:460px){
 .industry-grid,.industry-grid.five,.service-grid{grid-template-columns:1fr}
 .industry-image,.service-image{height:175px;flex-basis:175px}
}

/* --- One distinct photograph per rendered slot --------------- */
/* These four slots previously shared artwork with an industry card or with each
   other. Each now has its own image so no photograph appears in two sections. */
.feature-photo.about-feature{background-image:url('https://images.unsplash.com/photo-1531482615713-2afd69097998?w=1400&q=80')}
.banner-visual.services-banner-photo{background-image:url('https://images.unsplash.com/photo-1573497491208-6b1acb260507?w=1400&q=80')}
.banner-visual.solutions-visual{background-image:url('https://images.unsplash.com/photo-1517245386807-bb43f82c33c4?w=1400&q=80')}
.feature-photo.solutions-feature{background-image:url('https://images.unsplash.com/photo-1531403009284-440f080d1e12?w=1400&q=80')}

/* ============================================================
   Industries / Our Approach page
   ============================================================ */

.banner-visual.approach-visual{background-image:url('https://images.unsplash.com/photo-1542626991-cbc4e32524cc?w=1400&q=80')}

/* --- Process: four stages ----------------------------------- */
.process-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:stretch}
.process-stage{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px;box-shadow:0 8px 25px #08244808}
.stage-head{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.stage-number{flex:0 0 38px;width:38px;height:38px;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;font-weight:800;font-size:1rem}
.process-stage h3{margin:0;font-size:1.08rem;letter-spacing:-.03em}
.process-stage>p{font-size:.9rem;margin:0 0 14px}
.process-stage ul{margin:auto 0 0;padding-left:20px;display:grid;gap:7px}
.process-stage li{font-size:.83rem;line-height:1.45;color:#44586f}
.process-stage li::marker{color:var(--blue)}

/* --- Maturity badges ---------------------------------------- */
.status{display:inline-block;white-space:nowrap;border-radius:999px;padding:6px 13px;font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;border:1px solid}
.status.proposed{background:#eef4fb;color:#3d5570;border-color:#c9d9ea}
.status.prototype{background:#fff6e6;color:#8a5a12;border-color:#f0d5a3}
.status.live{background:#e6f7ee;color:#18653c;border-color:#a5ddbf}

.status-key{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 30px;padding:20px 22px;background:#f7fbff;border:1px solid var(--line);border-radius:12px}
.status-key span{display:flex;flex-direction:column;gap:7px;align-items:flex-start;font-size:.82rem;line-height:1.5;color:#44586f}

/* --- Worked examples ---------------------------------------- */
.example-stack{display:grid;gap:22px}
.example-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:30px 32px;box-shadow:0 8px 25px #0824480a}
.example-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:18px;margin-bottom:22px;border-bottom:1px solid var(--line)}
.example-card>header h3{margin:4px 0 0;font-size:1.5rem}
.example-body{display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:34px}
.example-body h4{margin:0 0 10px;font-size:.74rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#0765c7}
.example-body p{font-size:.9rem;margin:0}
.example-body ol{margin:0;padding-left:20px;display:grid;gap:10px}
.example-body li{font-size:.88rem;line-height:1.5;color:#44586f}
.example-body li::marker{color:var(--blue);font-weight:700}
.caveat{margin-top:14px !important;padding:14px 16px;background:#f7fbff;border-left:3px solid #bcd9f8;border-radius:0 8px 8px 0;font-size:.83rem !important;line-height:1.5;color:#44586f}
.caveat b{color:#2b3f57}

/* --- Responsive --------------------------------------------- */
@media(max-width:1200px){
 .process-track{grid-template-columns:repeat(2,minmax(0,1fr))}
 .example-body{grid-template-columns:1fr 1fr;gap:26px}
 .example-body>div:nth-child(2){grid-row:span 2}
}
@media(max-width:900px){
 .status-key{grid-template-columns:1fr;gap:16px}
}
@media(max-width:760px){
 .process-track{grid-template-columns:1fr}
 .example-body{grid-template-columns:1fr;gap:24px}
 .example-body>div:nth-child(2){grid-row:auto}
 .example-card{padding:24px 20px}
 .example-card>header{flex-direction:column;gap:12px}
 .example-card>header h3{font-size:1.25rem}
}

/* ============================================================
   Insights: hub page and article pages
   ============================================================ */

/* --- Hero ---------------------------------------------------- */
.insights-hero{background:linear-gradient(105deg,#fff 0%,#f6fbff 46%,#e6f2ff 100%);overflow:hidden}
.insights-hero .banner-grid{min-height:470px}
.insights-hero h1{font-size:clamp(2.4rem,3.9vw,4rem);line-height:1.08;letter-spacing:-.05em;margin:16px 0}
.insights-hero .hero-sub{font-size:1.1rem;max-width:610px;color:#44586f}
.banner-visual.insights-visual{background-image:linear-gradient(140deg,#0a2a4d22,#1a7fc711),url('https://images.unsplash.com/photo-1639762681485-074b7f938ba0?w=1400&q=80');height:400px}

/* --- Category badges ----------------------------------------- */
.badge{display:inline-block;background:var(--blue);color:#fff;border-radius:999px;padding:6px 14px;font-size:.68rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;white-space:nowrap}
.badge.subtle{background:#e8f3ff;color:#0761c0;align-self:flex-start}

/* --- Featured article cards ---------------------------------- */
.featured-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;align-items:stretch}
.feature-card{display:flex;background:#fff;border:1px solid #e4edf8;border-radius:16px;overflow:hidden;box-shadow:0 8px 25px #0824480a;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.feature-card>a{display:flex;flex-direction:column;width:100%;height:100%}
.feature-image{height:210px;flex:0 0 210px;background-size:cover;background-position:center;position:relative;transition:transform .45s ease}
.feature-image .badge{position:absolute;left:16px;bottom:16px;box-shadow:0 4px 14px #0824483d}
.feature-content{display:flex;flex-direction:column;flex:1;padding:24px}
.feature-content h3{font-size:1.24rem;line-height:1.3;margin:0 0 10px;transition:color .25s ease}
.feature-content p{font-size:.9rem;flex:1;margin:0 0 18px}
.feature-content footer,.perspective-card footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:14px;border-top:1px solid var(--line)}
.read-more{color:var(--blue);font-weight:700;font-size:.86rem;display:inline-block;transition:transform .25s ease}
.read-time{font-size:.76rem;color:#7b8ca0;font-weight:600;white-space:nowrap}
.feature-card:hover,.feature-card:focus-within{transform:translateY(-6px);box-shadow:0 18px 38px #1234561f;border-color:#bcd9f8}
.feature-card:hover .feature-image{transform:scale(1.05)}
.feature-card:hover h3{color:var(--blue)}
.feature-card:hover .read-more{transform:translateX(4px)}

/* --- Industry insight cards ---------------------------------- */
.insight-industry-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:stretch}
.insight-industry-card{display:flex;background:#fff;border:1px solid #e4edf8;border-radius:14px;overflow:hidden;box-shadow:0 6px 18px #08244808;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.insight-industry-card>a{display:flex;flex-direction:column;width:100%;height:100%}
.insight-industry-image{height:140px;flex:0 0 140px;background-size:cover;background-position:center;transition:transform .45s ease}
.insight-industry-content{display:flex;flex-direction:column;flex:1;padding:18px}
.insight-industry-content h3{font-size:1rem;margin:0 0 8px;letter-spacing:-.03em;transition:color .25s ease}
.insight-industry-content p{font-size:.82rem;flex:1;margin:0 0 14px}
.insight-industry-content .read-more{font-size:.8rem;margin-top:auto}
.insight-industry-card:hover,.insight-industry-card:focus-within{transform:translateY(-5px);box-shadow:0 16px 32px #1234561a;border-color:#bcd9f8}
.insight-industry-card:hover .insight-industry-image{transform:scale(1.06)}
.insight-industry-card:hover h3{color:var(--blue)}
.insight-industry-card:hover .read-more{transform:translateX(4px)}

/* --- More perspectives (editorial, no photography) ----------- */
.perspective-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}
.perspective-card{display:flex;background:#fff;border:1px solid #e4edf8;border-radius:14px;box-shadow:0 6px 18px #08244808;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;position:relative;overflow:hidden}
.perspective-card::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,var(--blue),#63b3f5);opacity:0;transition:opacity .25s ease}
.perspective-card>a{display:flex;flex-direction:column;width:100%;height:100%;padding:26px 28px}
.perspective-card h3{font-size:1.08rem;line-height:1.35;margin:14px 0 10px;transition:color .25s ease}
.perspective-card p{font-size:.86rem;flex:1;margin:0 0 16px}
.perspective-card:hover,.perspective-card:focus-within{transform:translateY(-5px);box-shadow:0 16px 32px #1234561a;border-color:#bcd9f8}
.perspective-card:hover::before{opacity:1}
.perspective-card:hover h3{color:var(--blue)}
.perspective-card:hover .read-more{transform:translateX(4px)}

@media(prefers-reduced-motion:reduce){
 .feature-card,.insight-industry-card,.perspective-card,.feature-image,.insight-industry-image,.read-more{transition:none}
 .feature-card:hover,.insight-industry-card:hover,.perspective-card:hover{transform:none}
 .feature-card:hover .feature-image,.insight-industry-card:hover .insight-industry-image{transform:none}
 .feature-card:hover .read-more,.insight-industry-card:hover .read-more,.perspective-card:hover .read-more{transform:none}
}
.feature-card>a:focus-visible,.insight-industry-card>a:focus-visible,.perspective-card>a:focus-visible{outline:3px solid var(--blue);outline-offset:-3px}

/* --- Article page -------------------------------------------- */
.article-header{background:linear-gradient(105deg,#fff,#eef6ff);padding:52px 0 40px}
.crumbs{font-size:.8rem;font-weight:700;color:#7b8ca0;margin-bottom:14px}
.crumbs a{color:var(--blue)}
.crumbs span[aria-hidden]{margin:0 6px;color:#b9c8d8}
.article-header h1{font-size:clamp(2.1rem,3.4vw,3.35rem);line-height:1.1;max-width:15ch;margin:0 0 18px}
.article-lede{font-size:1.1rem;line-height:1.6;max-width:70ch;color:#44586f}
.article-meta{display:flex;align-items:center;gap:14px;margin-top:22px}
.article-hero{height:390px;background-size:cover;background-position:center}
.article-body{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:60px;padding-top:54px;padding-bottom:54px;align-items:start}
.article-section{margin-bottom:38px}
.article-section h2{font-size:1.55rem;letter-spacing:-.035em;margin:0 0 14px}
.article-main p{font-size:1rem;line-height:1.72;margin:0 0 16px;max-width:72ch}
.article-main .check-list{margin:18px 0 0;line-height:1.95}
.article-main .check-list li{font-size:.95rem;color:#44586f}
.article-takeaways{background:#f5faff;border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:0 14px 14px 0;padding:28px 32px}
.article-takeaways h2{font-size:1.2rem;margin:0 0 14px}
.article-takeaways ul{margin:0;padding-left:20px;display:grid;gap:10px}
.article-takeaways li{font-size:.95rem;line-height:1.55;color:#33455f}
.article-takeaways li::marker{color:var(--blue)}
.article-aside{position:sticky;top:96px;display:grid;gap:18px}
.aside-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px;box-shadow:0 8px 25px #08244808}
.aside-card.subtle{background:#f7fbff;box-shadow:none}
.aside-card h3{font-size:1.12rem;margin:10px 0 10px;line-height:1.35}
.aside-card p{font-size:.88rem;margin:0 0 18px}
.aside-links{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:14px}
.aside-links a{display:grid;gap:3px}
.aside-links b{font-size:.88rem;line-height:1.4;color:var(--ink);transition:color .2s ease}
.aside-links span{font-size:.74rem;color:#7b8ca0;font-weight:600}
.aside-links a:hover b{color:var(--blue)}
.article-footer-nav{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-bottom:60px}

/* --- Article and industry-insight imagery (all distinct) ----- */
.art-value{background-image:linear-gradient(160deg,#07203c55,#1a7fc722),url('https://images.unsplash.com/photo-1551288049-bebda4e38f71?w=1200&q=80')}
.art-agents{background-image:linear-gradient(160deg,#07203c55,#1a7fc722),url('https://images.unsplash.com/photo-1587560699334-cc4ff634909a?w=1200&q=80')}
.art-scale{background-image:linear-gradient(160deg,#07203c55,#1a7fc722),url('https://images.unsplash.com/photo-1504384308090-c894fdcc538d?w=1200&q=80')}
.art-before{background-image:linear-gradient(160deg,#07203c55,#1a7fc722),url('https://images.unsplash.com/photo-1517048676732-d65bc937f952?w=1200&q=80')}
.art-voice{background-image:linear-gradient(160deg,#07203c55,#1a7fc722),url('https://images.unsplash.com/photo-1534536281715-e28d76689b4d?w=1200&q=80')}
.art-custom{background-image:linear-gradient(160deg,#07203c55,#1a7fc722),url('https://images.unsplash.com/photo-1498050108023-c5249f4df085?w=1200&q=80')}
.art-data{background-image:linear-gradient(160deg,#07203c55,#1a7fc722),url('https://images.unsplash.com/photo-1460925895917-afdab827c52f?w=1200&q=80')}
.art-consulting{background-image:linear-gradient(160deg,#07203c55,#1a7fc722),url('https://images.unsplash.com/photo-1552581234-26160f608093?w=1200&q=80')}
.art-teams{background-image:linear-gradient(160deg,#07203c55,#1a7fc722),url('https://images.unsplash.com/photo-1556761175-b413da4baf72?w=1200&q=80')}

.ins-auto{background-image:linear-gradient(155deg,#07203c66,#1a7fc722),url('https://images.unsplash.com/photo-1503376780353-7e6692767b70?w=900&q=80')}
.ins-dental{background-image:linear-gradient(155deg,#07203c55,#1a7fc722),url('https://images.unsplash.com/photo-1629909613654-28e377c37b09?w=900&q=80')}
.ins-cruise{background-image:linear-gradient(155deg,#07203c55,#1a7fc722),url('https://images.unsplash.com/photo-1580541631950-7282082b53ce?w=900&q=80')}
.ins-solar{background-image:linear-gradient(155deg,#07203c55,#1a7fc722),url('https://images.unsplash.com/photo-1509391366360-2e959784a276?w=900&q=80')}
.ins-restaurant{background-image:linear-gradient(155deg,#07203c55,#1a7fc722),url('https://images.unsplash.com/photo-1550966871-3ed3cdb5ed0c?w=900&q=80')}
.ins-veterinary{background-image:linear-gradient(155deg,#07203c55,#1a7fc722),url('https://images.unsplash.com/photo-1628009368231-7bb7cfcb0def?w=900&q=80')}
.ins-enterprise{background-image:linear-gradient(155deg,#07203c55,#1a7fc722),url('https://images.unsplash.com/photo-1524758631624-e2822e304c36?w=900&q=80')}

/* --- Responsive ---------------------------------------------- */
@media(max-width:1200px){
 .insight-industry-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .article-body{grid-template-columns:1fr;gap:40px}
 .article-aside{position:static;grid-template-columns:1fr 1fr;display:grid}
}
@media(max-width:1000px){
 .featured-grid,.perspective-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .insights-hero .banner-grid{min-height:0}
 .banner-visual.insights-visual{height:300px}
 .article-hero{height:290px}
}
@media(max-width:760px){
 .featured-grid,.perspective-grid,.insight-industry-grid{grid-template-columns:1fr;gap:16px}
 .feature-image{height:190px;flex-basis:190px}
 .article-aside{grid-template-columns:1fr}
 .article-hero{height:210px}
 .article-header{padding:34px 0 28px}
 .article-header h1{max-width:none}
 .article-takeaways{padding:22px 20px}
 .perspective-card>a{padding:22px 20px}
 .article-footer-nav{flex-direction:column}
 .article-footer-nav .btn{text-align:center}
}

/* --- Article measure -----------------------------------------
   The site container is 1460px, which is right for card grids but leaves a dead
   gap between a 72ch text column and the sidebar. Articles use a tighter measure
   so the two columns sit together and the header does not read as empty. */
.article-header>.container,.article-body,.article-footer-nav{max-width:1180px;margin-left:auto;margin-right:auto}
.article-header h1{max-width:22ch}
.article-hero{background-position:center 35%;height:360px}
@media(max-width:1200px){
 .article-header h1{max-width:none}
}


/* ============================================================
   QLink Solutions brand lockup (header + footer)
   Mark, company name and positioning tagline as one unit.
   ============================================================ */

.nav{height:88px}
.nav nav a{padding:34px 0}

.brand{display:flex;align-items:center;gap:13px;white-space:nowrap;line-height:1}
.brand-mark{width:46px;height:46px;display:block;flex:none}
.brand-lockup{display:flex;flex-direction:column;justify-content:center;gap:5px;min-width:0}

.brand-name{font-size:1.42rem;font-weight:700;letter-spacing:-.035em;line-height:1;color:var(--ink);display:block}
/* "Solutions" sits lighter than "QLink" so the mark and the name read as one wordmark. */
.brand-name span{font-weight:400;color:#33507a}

.brand-tagline{display:block;font-size:.575rem;font-weight:700;letter-spacing:.155em;text-transform:uppercase;color:#5c7691;line-height:1.1}
.brand-tagline i{font-style:normal;color:#8fbde8;margin:0 .5em;position:relative;top:-.04em}

/* Footer sits on deep navy: the same lockup, tuned for a dark surface. */
.footer .brand-name{color:#fff}
.footer .brand-name span{color:#a9c6e6}
.footer .brand-tagline{color:#8fb0d2}
.footer .brand-tagline i{color:#3f7fc4}
.foot-grid .brand{font-size:inherit}

/* --- Responsive ---------------------------------------------
   The tagline stays on one line while it comfortably fits, then tightens,
   then wraps rather than forcing the header to scroll sideways. */
@media(max-width:1180px){
 .brand-tagline{font-size:.55rem;letter-spacing:.12em}
 .brand-tagline i{margin:0 .4em}
}
@media(max-width:1000px){
 .brand-mark{width:42px;height:42px}
 .brand-name{font-size:1.3rem}
 .brand-tagline{font-size:.52rem;letter-spacing:.1em}
}
@media(max-width:820px){
 .brand{gap:11px}
 .brand-mark{width:39px;height:39px}
 .brand-name{font-size:1.22rem}
 .brand-tagline{white-space:normal;max-width:16.5em;font-size:.5rem;letter-spacing:.09em;line-height:1.4}
 .brand-tagline i{margin:0 .35em}
}
@media(max-width:700px){
 .nav{height:auto}
 .brand-lockup{gap:4px}
 .brand-tagline{max-width:15em}
}
@media(max-width:400px){
 .brand-mark{width:36px;height:36px}
 .brand-name{font-size:1.12rem}
 .brand-tagline{font-size:.475rem;max-width:13.5em}
}

/* --- Brand lockup: mid-width correction ----------------------
   The lockup is wider than the old single-line wordmark. Between roughly 700px
   and 1100px the header carries brand + seven nav items + the CTA, which pushed
   the CTA past the viewport. The tagline wraps to two lines from 1200px down,
   and the CTA gives up its place to the navigation before anything overflows. */
@media(max-width:1200px){
 .brand-tagline{white-space:normal;max-width:15rem;font-size:.53rem;letter-spacing:.11em;line-height:1.4}
 .nav nav{gap:20px}
}
@media(max-width:1100px){
 /* The header CTA is redundant here: "Contact" is in the nav and the hero repeats it. */
 .nav>.btn{display:none}
 .nav nav{gap:18px;font-size:.82rem}
 .brand-tagline{max-width:16rem}
}
@media(max-width:820px){
 .brand-tagline{max-width:14rem;font-size:.5rem}
}
@media(max-width:700px){
 .brand-tagline{max-width:22rem}
}
@media(max-width:400px){
 .brand-tagline{max-width:13rem;font-size:.475rem}
}


/* --- Brand lockup: authoritative responsive rules -------------
   The tagline reads best as a single line, so it stays on one line and scales
   down instead of wrapping. The squeeze is the band where brand + seven nav
   items + CTA share one row; there the CTA drops out first, then the navigation
   moves to its own row, which gives the lockup the full container width. */
@media(max-width:1200px){
 .brand-tagline{white-space:nowrap;max-width:none;font-size:.525rem;letter-spacing:.1em;line-height:1.1}
 .nav nav{gap:20px}
}
@media(max-width:1100px){
 .nav>.btn{display:none}
 .nav nav{gap:18px;font-size:.82rem}
}
@media(max-width:880px){
 .nav{height:auto;flex-wrap:wrap;padding:14px 0}
 .nav nav{order:3;width:100%;overflow-x:auto;white-space:nowrap;gap:20px}
 .nav nav a{padding:10px 0}
 .brand-tagline{font-size:.5rem}
}
@media(max-width:430px){
 .brand-mark{width:36px;height:36px}
 .brand-name{font-size:1.1rem}
 .brand-tagline{font-size:.445rem;letter-spacing:.075em}
 .brand-tagline i{margin:0 .3em}
}
@media(max-width:340px){
 /* Below this the single line cannot stay legible; wrap rather than shrink further. */
 .brand-tagline{white-space:normal;max-width:13rem;font-size:.46rem;line-height:1.45}
}


/* --- Header: move navigation to its own row before it collides ---------- */
@media(max-width:960px){
 .nav{height:auto;flex-wrap:wrap;padding:14px 0}
 .nav nav{order:3;width:100%;overflow-x:auto;white-space:nowrap;gap:20px}
 .nav nav a{padding:10px 0}
}

/* --- Footer: let columns actually shrink --------------------------------
   Grid items default to min-width:auto, so a long link such as "Custom AI
   Application Development" forced the footer wider than the viewport. */
.footer .foot-grid>div{min-width:0}
.footer .foot-grid a,.footer .foot-grid p,.footer .foot-grid b{overflow-wrap:break-word;min-width:0}
@media(max-width:1100px){
 .footer .foot-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 28px}
}
@media(max-width:820px){
 .footer .foot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:480px){
 .footer .foot-grid{grid-template-columns:1fr;gap:24px}
}


/* ============================================================
   Investors & Partners page + admin lead categories
   ============================================================ */

.investor-hero{background:linear-gradient(105deg,#fff 0%,#f6fbff 45%,#e6f2ff 100%)}
.banner-visual.investor-visual{background-image:linear-gradient(150deg,#07203c55,#1a7fc722),url('https://images.unsplash.com/photo-1600880292089-90a7e086ee0c?w=1400&q=80')}

/* --- Inquiry form ------------------------------------------- */
.inquiry-panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:36px 40px;box-shadow:0 12px 34px #0824480d;max-width:1000px;margin:0 auto}
.inquiry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px;margin-bottom:18px}
.inquiry-grid label,.inquiry-full{display:block;font-size:.78rem;font-weight:700;color:#2b3f57}
.inquiry-full{margin-bottom:6px}
.inquiry-grid input,.inquiry-grid select,.inquiry-full textarea{display:block;width:100%;margin-top:7px;padding:12px 13px;border:1px solid #cbdcf0;border-radius:8px;background:#fff;font:inherit;font-weight:400;font-size:.88rem;color:var(--ink)}
.inquiry-grid input:focus,.inquiry-grid select:focus,.inquiry-full textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px #0968ec22}
.inquiry-full textarea{resize:vertical;min-height:130px}
.inquiry-grid .opt{font-weight:500;color:#7b8ca0;text-transform:none;letter-spacing:0}
.inquiry-panel .consent{margin:18px 0 6px}
.inquiry-panel .btn{margin-top:8px}
.inquiry-panel .form-note{font-size:.76rem;color:#7b8ca0;margin:10px 0 0}
.inquiry-panel .success p{margin:8px 0 0;font-size:.9rem}

/* --- Admin: lead categories --------------------------------- */
.admin-counts{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 18px}
.admin-counts span{background:#f1f7ff;border:1px solid var(--line);border-radius:999px;padding:7px 15px;font-size:.78rem;color:#44586f}
.admin-counts b{color:var(--ink);margin-right:5px}
.cat-tag{display:inline-block;border-radius:999px;padding:4px 10px;font-size:.66rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;border:1px solid}
.cat-tag.consult{background:#eef4fb;color:#3d5570;border-color:#c9d9ea}
.cat-tag.investor{background:#eaf5ec;color:#1d6b3a;border-color:#a8d9ba}
.admin-toolbar select{padding:10px 12px;border:1px solid #cbdcf0;border-radius:6px;background:#fff;font:inherit;font-size:.85rem}

/* --- Responsive --------------------------------------------- */
@media(max-width:820px){
 .inquiry-panel{padding:26px 22px;border-radius:14px}
 .inquiry-grid{grid-template-columns:1fr;gap:15px}
 .admin-toolbar{flex-wrap:wrap}
}
@media(max-width:480px){
 .inquiry-panel{padding:22px 16px}
}


/* ============================================================
   Investors & Partners â€” international markets section
   ============================================================ */

/* --- Priority market feature: photo + copy ------------------- */
.market-feature{display:grid;grid-template-columns:1.05fr 1fr;gap:0;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 14px 38px #0824480f;margin-bottom:56px}
.market-photo{position:relative;min-height:420px;background:#0d2b4e url('https://images.unsplash.com/photo-1685113872064-de4180a0ea93?w=1400&q=80') center/cover no-repeat}
.market-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,#07203c00 45%,#07203c22 100%)}
.market-tag{position:absolute;left:24px;top:24px;z-index:1;background:#fff;color:#0761c0;border-radius:999px;padding:8px 16px;font-size:.66rem;font-weight:800;letter-spacing:.14em;box-shadow:0 6px 18px #0824482e}
.market-copy{padding:46px 48px;display:flex;flex-direction:column;justify-content:center}
.market-copy h3{font-size:clamp(1.4rem,1.9vw,1.9rem);letter-spacing:-.035em;margin:12px 0 16px;line-height:1.2}
.market-copy p{font-size:.94rem;line-height:1.68;margin:0 0 14px}
.market-copy p:last-child{margin-bottom:0}

/* --- Partner type cards ------------------------------------- */
.market-intro{margin-bottom:30px}
.market-intro h3{font-size:clamp(1.5rem,2.2vw,2.1rem);letter-spacing:-.035em;margin:10px 0 0}
.partner-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:stretch;margin-bottom:52px}
.partner-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px 24px;box-shadow:0 8px 24px #0824480a;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.partner-card:hover{transform:translateY(-5px);box-shadow:0 18px 34px #1234561a;border-color:#bcd9f8}
.partner-card h4{font-size:1.02rem;letter-spacing:-.025em;margin:16px 0 10px;line-height:1.3}
.partner-card p{font-size:.86rem;line-height:1.6;margin:0;flex:1}

/* --- Prominent call to action -------------------------------- */
.market-cta{display:flex;align-items:center;justify-content:space-between;gap:34px;flex-wrap:wrap;padding:40px 46px;border-radius:18px;background:linear-gradient(115deg,#0a2547 0%,#12508f 62%,#1268f2 100%);color:#fff;box-shadow:0 18px 42px #0a254733}
.market-cta h3{margin:0 0 8px;font-size:clamp(1.3rem,1.9vw,1.75rem);letter-spacing:-.03em;color:#fff}
.market-cta p{margin:0;color:#c9dcf2;font-size:.94rem;max-width:56ch}
.btn.large{padding:17px 30px;font-size:.95rem;white-space:nowrap}
.market-cta .btn.large{background:#fff;color:#0a2547;border-color:#fff;box-shadow:0 10px 26px #0000002e}
.market-cta .btn.large:hover{background:#e8f3ff;color:#07203c}

@media(prefers-reduced-motion:reduce){
 .partner-card{transition:none}
 .partner-card:hover{transform:none}
}

/* --- Responsive ---------------------------------------------- */
@media(max-width:1100px){
 .partner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
 .market-feature{grid-template-columns:1fr}
 .market-photo{min-height:280px}
 .market-copy{padding:34px 30px}
 .market-cta{padding:32px 30px;gap:24px}
}
@media(max-width:600px){
 .partner-grid{grid-template-columns:1fr}
 .market-photo{min-height:220px}
 .market-copy{padding:28px 22px}
 .market-cta{padding:28px 22px;flex-direction:column;align-items:flex-start}
 .market-cta .btn.large{width:100%;text-align:center;white-space:normal}
}


/* --- Header nav: never break a link across two lines ----------
   "AI Solutions" wrapped once the brand lockup widened. Links stay on one line
   and the gap tightens a little earlier instead. */
.nav nav a{white-space:nowrap}
@media(max-width:1400px){.nav nav{gap:22px}}
@media(max-width:1300px){.nav nav{gap:18px;font-size:.83rem}}

/* ============================================================
   Our Products â€” navigation dropdown, cards and illustrations
   ============================================================ */

/* --- Header dropdown ----------------------------------------- */
.nav-drop{position:relative;display:inline-flex;align-items:center}
.nav-drop-trigger{display:inline-flex;align-items:center;gap:5px}
.nav-drop-trigger i{font-style:normal;font-size:.65em;opacity:.6;transition:transform .2s ease}
.nav-drop:hover .nav-drop-trigger i,.nav-drop:focus-within .nav-drop-trigger i{transform:rotate(180deg);opacity:1}
.nav-menu{position:absolute;top:100%;left:50%;transform:translate(-50%,8px);min-width:290px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 22px 48px #0824481f;padding:10px;display:grid;gap:2px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,transform .18s ease,visibility .18s;z-index:60}
.nav-drop:hover .nav-menu,.nav-drop:focus-within .nav-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
.nav-menu a{display:grid;gap:1px;padding:11px 14px;border-radius:9px;white-space:nowrap;transition:background .15s ease}
.nav-menu a:hover{background:#f1f7ff}
.nav-menu b{font-size:.88rem;font-weight:700;color:var(--ink);line-height:1.25}
.nav-menu small{font-size:.74rem;color:#7b8ca0;font-weight:600}
.nav-menu .nav-menu-all{margin-top:4px;border-top:1px solid var(--line);border-radius:0 0 9px 9px;color:var(--blue);font-weight:700;font-size:.82rem;padding-top:13px}
/* Bridges the gap between trigger and menu so the pointer does not fall through. */
.nav-drop::after{content:"";position:absolute;top:100%;left:0;right:0;height:14px}

/* --- Product illustration (a stylised panel, not a screenshot) */
.product-visual{position:relative;height:180px;flex:0 0 180px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(140deg,#0b2c51,#1268f2)}
.product-visual.dental{background:linear-gradient(140deg,#0b2c51,#10a8c9)}
.product-visual.cruise{background:linear-gradient(140deg,#07335c,#1e88d8)}
.product-visual.restaurant{background:linear-gradient(140deg,#13294d,#2f7fd6)}
.product-visual.pet{background:linear-gradient(140deg,#0d2b4e,#12b0b6)}
.product-glyph{position:relative;z-index:2;font-size:2.5rem;line-height:1;filter:drop-shadow(0 6px 14px #0006)}
.pv-mock{position:absolute;inset:auto 0 -2px 0;height:58%;margin:0 14%;background:#ffffff1f;border:1px solid #ffffff33;border-radius:12px 12px 0 0;padding:12px 14px;display:grid;align-content:start;gap:7px;backdrop-filter:blur(2px)}
.pv-mock span{display:block;height:6px;border-radius:99px;background:#ffffff59}
.pv-mock span:nth-child(1){width:64%}
.pv-mock span:nth-child(2){width:88%}
.pv-mock span:nth-child(3){width:47%}
.product-visual.large{height:auto;min-height:340px;border-radius:18px;flex:none}
.product-visual.large .product-glyph{font-size:3.6rem}

/* --- Product cards ------------------------------------------- */
.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;align-items:stretch}
.home-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:stretch}
.product-card{display:flex;flex-direction:column;background:#fff;border:1px solid #e4edf8;border-radius:16px;overflow:hidden;box-shadow:0 8px 25px #0824480a;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.product-card>a{display:flex;flex-direction:column;width:100%;height:100%}
.product-card:hover,.product-card:focus-within{transform:translateY(-6px);box-shadow:0 18px 38px #1234561f;border-color:#bcd9f8}
.product-card:hover .product-glyph{transform:scale(1.08)}
.product-glyph{transition:transform .3s ease}
.product-body{display:flex;flex-direction:column;flex:1;padding:24px}
.product-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.product-sector{font-size:.68rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:#0765c7}
.product-body h3{font-size:1.28rem;letter-spacing:-.03em;margin:0 0 8px;transition:color .25s ease}
.product-card:hover h3{color:var(--blue)}
.product-tagline{font-size:.92rem;font-weight:600;color:#2b3f57;margin:0 0 10px}
.product-body p{font-size:.88rem;margin:0 0 16px;flex:1}
.product-body footer{display:flex;align-items:center;gap:14px;margin-top:auto;flex-wrap:wrap}
.product-site{font-size:.82rem;font-weight:700;color:var(--blue)}
.product-card.compact .product-visual{height:132px;flex-basis:132px}
.product-card.compact .product-glyph{font-size:1.9rem}
.product-card.compact .product-body{padding:18px}
.product-card.compact h3{font-size:1.05rem}
.product-card.compact p{font-size:.82rem;margin-bottom:12px}
.product-card.compact .learn{margin-top:auto}

/* --- Products page hero art ---------------------------------- */
.products-hero{background:linear-gradient(105deg,#fff 0%,#f6fbff 46%,#e6f2ff 100%)}
.product-hero-art{position:relative;min-height:360px;display:grid;place-items:center}
.pha-panel{width:min(100%,430px);background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 22px 54px #08244822;padding:18px}
.pha-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#dbe7f4;margin-right:6px}
.pha-rows{display:grid;gap:11px;margin-top:18px}
.pha-rows i{display:block;height:11px;border-radius:99px;background:linear-gradient(90deg,#d8e9fb,#eef6ff)}
.pha-badges{display:flex;gap:12px;margin-top:22px;flex-wrap:wrap;justify-content:center}
.pha-badge{width:54px;height:54px;border-radius:15px;display:grid;place-items:center;font-size:1.5rem;background:linear-gradient(140deg,#0b2c51,#1268f2);box-shadow:0 10px 24px #0824482e}
.pha-badge.dental{background:linear-gradient(140deg,#0b2c51,#10a8c9)}
.pha-badge.cruise{background:linear-gradient(140deg,#07335c,#1e88d8)}
.pha-badge.restaurant{background:linear-gradient(140deg,#13294d,#2f7fd6)}
.pha-badge.pet{background:linear-gradient(140deg,#0d2b4e,#12b0b6)}

/* --- Product detail page ------------------------------------- */
.product-banner .crumbs{margin-bottom:12px}
.product-lede{font-size:1.15rem;font-weight:600;color:#2b3f57;margin:0 0 18px}
.product-status-row{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:22px;font-size:.86rem;color:#44586f;max-width:60ch}
.product-side-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px 30px;box-shadow:0 10px 30px #0824480d;align-self:start}
.product-side-card dl{display:grid;grid-template-columns:auto 1fr;gap:12px 18px;margin:16px 0 22px}
.product-side-card dt{font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#7b8ca0}
.product-side-card dd{margin:0;font-size:.9rem;color:var(--ink)}
.product-side-card dd a{color:var(--blue);font-weight:700}
.lede-para{font-size:1.02rem;font-weight:500;color:#2b3f57}
.product-limit{margin:28px auto 0;max-width:80ch;padding:16px 20px;background:#fff;border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:0 10px 10px 0;font-size:.88rem;line-height:1.6;color:#44586f}

/* --- Investor page portfolio strip --------------------------- */
.portfolio-explainer{margin-bottom:34px}
.portfolio-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.portfolio-item{display:flex;align-items:center;gap:13px;padding:18px;background:#fff;border:1px solid var(--line);border-radius:13px;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.portfolio-item:hover{transform:translateY(-4px);border-color:#bcd9f8;box-shadow:0 14px 28px #12345618}
.portfolio-glyph{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;font-size:1.2rem;flex:none;background:linear-gradient(140deg,#0b2c51,#1268f2)}
.portfolio-glyph.dental{background:linear-gradient(140deg,#0b2c51,#10a8c9)}
.portfolio-glyph.cruise{background:linear-gradient(140deg,#07335c,#1e88d8)}
.portfolio-glyph.restaurant{background:linear-gradient(140deg,#13294d,#2f7fd6)}
.portfolio-glyph.pet{background:linear-gradient(140deg,#0d2b4e,#12b0b6)}
.portfolio-meta{display:grid;gap:1px;min-width:0;flex:1}
.portfolio-meta b{font-size:.9rem;line-height:1.25}
.portfolio-meta small{font-size:.72rem;color:#7b8ca0;font-weight:600}
.portfolio-cta{text-align:center;margin-top:32px}

@media(prefers-reduced-motion:reduce){
 .product-card,.product-glyph,.portfolio-item,.nav-menu{transition:none}
 .product-card:hover,.portfolio-item:hover{transform:none}
 .product-card:hover .product-glyph{transform:none}
}

/* --- Responsive ---------------------------------------------- */
@media(max-width:1200px){
 .home-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .portfolio-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:960px){
 /* Navigation moves to its own scrolling row here, so the hover menu is dropped
    in favour of the product links that already sit in the footer. */
 .nav-drop .nav-menu{display:none}
 .nav-drop-trigger i{display:none}
}
@media(max-width:760px){
 .product-grid,.home-product-grid{grid-template-columns:1fr}
 .portfolio-strip{grid-template-columns:1fr}
 .product-visual.large{min-height:230px}
 .product-side-card{padding:22px 20px}
 .product-hero-art{min-height:240px}
}


/* --- Header CTA: step aside before it wraps -------------------
   With eight navigation items plus the brand lockup there is no longer room for
   the CTA below ~1340px. "Contact" stays in the nav and the hero repeats it. */
.nav>.btn{white-space:nowrap}
@media(max-width:1340px){.nav>.btn{display:none}}
