*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#0f1117;color:#f3f4f6;font-family:Manrope,Inter,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}img{display:block;width:100%}:root{--red:#d42a37;--bg:#0f1117;--card:#191c25;--muted:#aab0bd;--line:#30333d}.shell{width:min(1180px,calc(100% - 44px));margin-inline:auto}.header{height:83px;position:sticky;top:0;z-index:100;background:rgba(15,17,23,.92);backdrop-filter:blur(17px);border-bottom:1px solid #272a33}.head-inner{display:flex;align-items:center;justify-content:space-between;height:100%}.brand{display:flex;align-items:center;gap:12px;min-width:245px}.brand-mark{display:grid;place-items:center;font-size:18px;font-weight:800;letter-spacing:-3px;width:43px;height:43px;border:2px solid var(--red);transform:skew(-9deg);border-radius:10px;color:#fff}.brand-mark span{color:var(--red)}.brand-word{font-family:Inter,Arial,sans-serif;font-size:22px;font-weight:800;letter-spacing:-.8px;line-height:1}.brand-word small{display:block;font-size:7px;letter-spacing:1.35px;margin-top:7px;color:#a5abb9;font-weight:700}.nav{display:flex;align-items:center;gap:26px;font-size:12px;font-weight:700}.nav-link{color:#c1c5d1;transition:.2s}.nav-link:hover,.nav-link.active{color:#fff}.nav-link.active{position:relative}.nav-link.active:after{content:'';position:absolute;bottom:-12px;left:0;right:0;height:2px;background:var(--red)}.nav-cta{background:var(--red);color:#fff;padding:13px 17px;border-radius:5px;white-space:nowrap}.nav-cta span{margin-left:7px}.menu-toggle{display:none}.hero{min-height:665px;position:relative;overflow:hidden;background:radial-gradient(circle at 82% 33%,#292431 0,transparent 41%),linear-gradient(150deg,#11131b,#0d1016 68%)}.hero:before{content:'';position:absolute;inset:0;background-image:linear-gradient(#fff1 1px,transparent 1px),linear-gradient(90deg,#fff1 1px,transparent 1px);background-size:70px 70px;opacity:.11;mask-image:linear-gradient(90deg,transparent,#000)}.hero-glow{position:absolute;right:0;top:20%;width:400px;height:400px;background:#e83d55;filter:blur(180px);opacity:.13}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:42px;padding-top:90px;padding-bottom:75px;position:relative}.eyebrow,.kicker{font-size:11px;font-weight:800;letter-spacing:2.2px;color:var(--red)}.eyebrow{display:flex;align-items:center;gap:10px;color:#e4e5e9}.pulse{display:block;width:8px;height:8px;background:var(--red);border-radius:50%;box-shadow:0 0 0 5px #f253622c}.hero h1{font-size:clamp(38px,4.5vw,67px);line-height:1.12;letter-spacing:-2.8px;margin:24px 0 25px;font-weight:800}.hero h1 span,.page-hero h1 span,.section h2 span{color:var(--red)}.hero p{color:#bec2cc;line-height:1.85;max-width:570px;font-size:15px;margin:0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:15px;border:1px solid transparent;border-radius:5px;padding:15px 20px;font-size:12px;font-weight:800;transition:transform .2s,background .2s;cursor:pointer;text-align:center}.btn:hover{transform:translateY(-2px)}.btn-red{background:var(--red);color:#fff}.btn-red:hover{background:#ff6471}.btn-outline{border-color:#626571;background:transparent;color:#f2f2f5}.btn-outline:hover{background:#ffffff13}.btn-white{background:#fff;color:#171720}.hero-highlights{display:flex;gap:16px;flex-wrap:wrap;margin-top:57px}.hero-highlights span{border-top:1px solid #ffffff25;padding-top:16px;color:#a6a9b6;font-size:10px;line-height:1.5;flex:1;min-width:135px}.hero-highlights b{font-size:12px;color:var(--red);margin-right:6px}.hero-visual{position:relative}.hero-image{height:470px;border:1px solid #ffffff26;overflow:hidden;background:#1d1b24;box-shadow:0 18px 100px #0008;transform:rotate(1.7deg)}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#101016a9,transparent 40%)}.hero-image img{height:100%;object-fit:cover}.photo-tag{position:absolute;bottom:22px;left:23px;font-size:10px;font-weight:800;letter-spacing:1.5px;color:#fff;z-index:1}.visual-chip{position:absolute;left:-35px;top:34px;display:flex;align-items:center;gap:11px;box-shadow:0 10px 30px #0006;background:#fff;color:#1c1f27;padding:14px 17px;font-size:11px;font-weight:800;transform:rotate(-2deg)}.chip-dot{width:9px;height:9px;border-radius:50%;background:var(--red)}.hero-index{font-size:14px;letter-spacing:4px;color:#dedee2;position:absolute;bottom:-35px;right:0;font-weight:800}.hero-index span{color:var(--red)}.ticker{background:#f15362;border-bottom:1px solid #f45c6a}.ticker-line{padding:17px 0;display:flex;gap:26px;justify-content:space-between;align-items:center;overflow:hidden;white-space:nowrap;color:#fff;font-weight:800;letter-spacing:1.5px;font-size:11px}.ticker b{font-size:18px;color:#ffe0e4}.section{padding-top:110px;padding-bottom:110px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:36px}.section h2,.feature-copy h2,.about-copy h2,.contact-main h2,.form-panel h2{font-size:clamp(29px,3vw,44px);line-height:1.22;letter-spacing:-1.5px;margin:15px 0 0}.text-link{font-size:12px;font-weight:800;color:#ebedf2;white-space:nowrap;border-bottom:1px solid #8b8e99;padding-bottom:8px}.text-link span{margin-left:6px;color:var(--red)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.service-card{background:linear-gradient(140deg,#1e212b,#171921);min-height:295px;border:1px solid #343743;border-radius:8px;padding:26px;display:flex;flex-direction:column;transition:.2s}.service-card:hover{border-color:#e24e60;transform:translateY(-4px)}.service-symbol{font-size:34px;color:var(--red);line-height:1.2}.service-type{font-size:10px;font-weight:800;letter-spacing:1.6px;color:#888e9b;margin-top:30px}.service-card h3{font-size:19px;letter-spacing:-.4px;line-height:1.35;margin:9px 0}.service-card p{font-size:12px;color:#aeb3bf;line-height:1.85;flex-grow:1}.service-card a{font-size:11px;font-weight:800;color:#fff;margin-top:14px}.service-card a span{color:var(--red);margin-left:8px}.bottom-link{margin-top:32px;text-align:center}.feature-section{padding:90px 0;background:#1a1c24;border-block:1px solid #292d39}.feature-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:center}.feature-picture{max-width:365px;margin-inline:auto;aspect-ratio:4 / 5;overflow:hidden;box-shadow:25px 25px 0 #292d38}.feature-picture img{width:100%;height:100%;object-fit:cover;object-position:center}.feature-copy h2 em{font-style:normal;color:var(--red)}.feature-copy p,.about-copy p,.contact-main p{font-size:14px;color:#b2b6c2;line-height:1.95}.feature-list{display:flex;flex-direction:column;gap:15px;margin:25px 0 35px;color:#d0d2d9;font-size:13px}.feature-list span:first-letter{color:var(--red)}.home-showcase{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.showcase-large,.showcase-small{position:relative;height:370px;overflow:hidden;border-radius:7px}.showcase-large img,.showcase-small img{height:100%;object-fit:cover;filter:brightness(.81);transition:transform .4s}.showcase-large:hover img,.showcase-small:hover img{transform:scale(1.03)}.showcase-small img{object-position:center 25%}.showcase-large:after,.showcase-small:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 50%,#000a)}.showcase-large span,.showcase-small span{position:absolute;bottom:24px;left:25px;z-index:1;font-size:13px;font-weight:800}.cta-section{background:var(--red);padding:66px 0}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:28px}.cta-inner h2{font-size:clamp(29px,3.6vw,47px);line-height:1.2;margin:13px 0;letter-spacing:-1px}.cta-inner .kicker{color:#fff8;font-size:11px}.cta-inner p{font-size:13px;color:#ffdee3}.footer{background:#0b0c11;border-top:1px solid #30323a}.footer-top{padding:58px 0 46px;display:grid;grid-template-columns:2fr 1fr 1fr;gap:28px}.footer-logo{font-family:Inter,sans-serif;font-size:29px;font-weight:800;letter-spacing:-1.5px}.footer-logo span{color:var(--red)}.footer p,.footer a,.footer span{font-size:12px;color:#969aa7;line-height:2}.footer-top>div:not(:first-child){display:flex;flex-direction:column}.footer strong{color:#dddfe7;font-size:12px;margin-bottom:13px}.footer a:hover{color:var(--red)}.footer-bottom{border-top:1px solid #282a32;display:flex;justify-content:space-between;gap:15px;padding:18px 0;color:#767b88}.footer-bottom span{font-size:10px}.phone-float{position:fixed;z-index:90;bottom:22px;right:20px;background:var(--red);box-shadow:0 5px 25px #0009;display:flex;align-items:center;gap:9px;border-radius:50px;padding:12px 16px;font-size:18px}.phone-float span{font-size:10px;font-weight:800}.page-hero{background:radial-gradient(ellipse at 70% 0,#482332 0,transparent 54%),#151720;border-bottom:1px solid #31343d;padding:93px 0 100px}.page-hero h1{font-size:clamp(38px,5.2vw,65px);line-height:1.13;letter-spacing:-2.7px;max-width:930px;margin:20px 0}.page-hero p{font-size:15px;color:#adb2be;line-height:1.9;max-width:680px}.split-cta{display:flex;justify-content:space-between;gap:38px;align-items:center;border:1px solid #343743;border-radius:7px;background:#1a1d26;padding:45px;margin-bottom:100px}.split-cta h2{font-size:27px;max-width:700px}.split-cta p{color:#aeb4c2;font-size:13px;max-width:700px;line-height:1.8}.projects-controls{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:30px}.filter{background:#1a1c25;border:1px solid #383a45;color:#a8adba;padding:10px 17px;font-size:12px;font-weight:800;border-radius:5px}.filter.active,.filter:hover{background:var(--red);border-color:var(--red);color:white}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.project-card{background:#1a1d26;border:1px solid #353944;border-radius:7px;overflow:hidden}.project-card[hidden]{display:none!important}.project-photo{height:305px;overflow:hidden;background:#20232d}.project-photo img{height:100%;object-fit:cover;transition:transform .3s}.project-card:hover img{transform:scale(1.035)}.project-info{padding:24px 26px 28px}.project-info span{font-size:10px;font-weight:800;letter-spacing:1.5px;color:var(--red)}.project-info h2{font-size:22px;letter-spacing:-.5px;margin:9px 0}.project-info p{font-size:12px;line-height:1.8;color:#b8bdc8}.portfolio-note{margin-top:34px;font-size:12px;line-height:1.7;color:#969aa5;border-left:2px solid var(--red);padding:12px 18px;background:#1c1e25}.portfolio-note strong{color:#e1e2e6}.about-grid{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:65px}.about-copy h2{margin-bottom:25px}.about-copy .btn{margin-top:18px}.about-image{border:1px solid #303744;background:#111827;padding:14px}.about-image img{min-height:210px;object-fit:cover}.values-section{background:#1a1d25;border-top:1px solid #30323b;padding:70px 0}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.values-grid article{border-left:1px solid #3a3c46;padding-left:24px}.values-grid span{color:var(--red);font-weight:800}.values-grid h3{font-size:19px}.values-grid p{color:#aeb4c0;font-size:12px;line-height:1.9}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.contact-phone{border:1px solid #3a3b45;display:flex;flex-direction:column;gap:10px;margin-top:36px;padding:28px;background:#1c1f27;border-radius:7px}.contact-phone span,.contact-area span{font-size:11px;letter-spacing:1.6px;color:var(--red);font-weight:800}.contact-phone strong{font-size:35px;letter-spacing:-1px}.contact-phone em{font-size:12px;color:#adb1be;font-style:normal}.contact-area{padding-top:37px}.contact-area strong{display:block;font-size:21px;margin-top:12px}.form-panel{background:#1b1e27;border:1px solid #353743;border-radius:8px;padding:33px}.form-panel h2{font-size:26px;margin-bottom:24px}form{display:flex;flex-direction:column;gap:9px}form label{font-size:12px;font-weight:800;color:#e2e3e7;margin-top:10px}form input,form textarea,form select{background:#101219;border:1px solid #424551;border-radius:4px;color:#f0f0f1;padding:14px;font-size:13px;min-width:0;max-width:100%}form input:focus,form select:focus,form textarea:focus{outline:2px solid #f25362aa;border-color:var(--red)}.btn-full{width:100%;margin-top:12px}.form-hint{font-size:11px;line-height:1.7;color:#9499a6}.form-hint strong{color:#e5e5ea}.map-section{padding-bottom:100px}.map-embed{height:365px;border:1px solid #444653;border-radius:7px;overflow:hidden;background:#20222b}.map-embed iframe{border:0;width:100%;height:100%}.map-note{font-size:11px;color:#959aa7;margin-top:16px}@media(max-width:1050px){.nav{gap:15px}.brand{min-width:220px}.brand-word{font-size:20px}.hero-grid{gap:25px}.feature-grid{gap:50px}.hero h1{letter-spacing:-1.5px}}@media(max-width:800px){.header{height:72px}.menu-toggle{width:44px;height:44px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;border:1px solid #494b54;background:#1e2029;border-radius:5px}.menu-toggle span{height:2px;width:20px;background:#eee}.nav{position:absolute;display:none;top:71px;left:0;right:0;padding:20px 22px 24px;background:#11131b;border-bottom:1px solid #30323a;flex-direction:column;align-items:stretch;gap:20px}.nav.open{display:flex}.nav-link.active:after{bottom:-6px}.nav-cta{text-align:center}.hero-grid{grid-template-columns:1fr;padding-top:62px;padding-bottom:80px}.hero h1{font-size:clamp(40px,7vw,60px)}.hero-visual{max-width:540px;margin:auto;width:90%}.hero-image{height:350px}.visual-chip{left:-15px}.hero-highlights{margin-top:34px}.service-grid{grid-template-columns:repeat(2,1fr)}.feature-grid,.about-grid,.contact-grid{grid-template-columns:1fr;gap:45px}.feature-picture{max-width:400px}.footer-top{grid-template-columns:1.5fr 1fr}.section{padding-top:75px;padding-bottom:75px}.values-grid{gap:15px}}@media(max-width:560px){.shell{width:calc(100% - 36px)}.brand{min-width:0}.brand-word{font-size:19px}.brand-word small{font-size:6.5px}.hero h1{font-size:43px;line-height:1.17}.hero-actions .btn{width:100%}.hero-visual{width:100%}.hero-image{height:295px;transform:rotate(0)}.visual-chip{font-size:9px;left:0;top:14px;padding:10px}.hero-highlights{gap:8px}.hero-highlights span{min-width:100px}.ticker-line{gap:24px;justify-content:flex-start;font-size:10px}.section-head{align-items:flex-start;flex-direction:column}.service-grid,.home-showcase,.project-grid,.values-grid{grid-template-columns:1fr}.service-card{min-height:265px}.showcase-large,.showcase-small{height:300px}.feature-section{padding:70px 0}.feature-picture{width:85%}.cta-inner,.split-cta{align-items:flex-start;flex-direction:column}.cta-inner .btn{width:100%}.footer-top{grid-template-columns:1fr;gap:22px}.footer-bottom{flex-direction:column}.page-hero{padding:75px 0}.page-hero h1{letter-spacing:-1.4px}.contact-phone strong{font-size:30px}.form-panel{padding:22px}.phone-float span{display:none}.phone-float{width:48px;height:48px;justify-content:center;padding:0}.map-embed{height:260px}}

/* Request-form enhancements */
.contact-email{margin-top:18px;font-size:13px;line-height:1.75;color:#b2b6c2}
.contact-email a,.privacy-consent a,.legal-copy a{color:#ff7180;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.privacy-consent{display:flex;gap:11px;align-items:flex-start;font-weight:500;font-size:11px;line-height:1.65;color:#b9becc;cursor:pointer}
.privacy-consent input[type="checkbox"]{margin:3px 0 0;min-width:17px;width:17px;height:17px;flex:none;accent-color:var(--red);padding:0}
.spam-trap{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.legal-copy{max-width:800px;font-size:14px;line-height:1.9;color:#c6c9d2}
.legal-copy h2{color:#fff;font-size:22px;margin-top:30px}.legal-copy p{margin:12px 0}

/* Official CHR-TECH brand artwork sourced from user's Google Drive identity folder. */
.header{background:rgba(12,18,34,.96)}
.brand{gap:10px;min-width:300px;flex-shrink:0}
.official-logo-plate{display:flex;align-items:center;justify-content:center;background:#fff;border-radius:5px;padding:4px 5px;flex:0 0 auto;width:174px;box-shadow:0 0 0 1px rgba(255,255,255,.15);line-height:0}
.official-logo{width:100%;height:auto;max-height:51px;object-fit:contain}
.brand-word{font-size:19px;letter-spacing:-.45px;white-space:nowrap}
.brand-word small{font-size:6.1px;letter-spacing:.75px;margin-top:6px}
.official-footer-logo{display:inline-flex;align-items:center;justify-content:center;background:#fff;border-radius:5px;padding:8px 9px;max-width:260px;line-height:0}
.official-footer-logo img{display:block;width:100%;height:auto}
@media(max-width:1150px) and (min-width:801px){.brand{min-width:275px}.official-logo-plate{width:146px}.brand-word{font-size:17px}.brand-word small{font-size:5.7px}.nav{gap:13px;font-size:11px}}
@media(max-width:800px){.brand{min-width:0}.official-logo-plate{width:166px}.brand-word{font-size:18px}.brand-word small{font-size:5.9px}}
@media(max-width:560px){.brand{gap:7px}.official-logo-plate{width:137px;padding:3px 4px}.brand-word{font-size:16px;letter-spacing:-.25px}.brand-word small{font-size:5px;letter-spacing:.45px;margin-top:5px}}
@media(max-width:375px){.official-logo-plate{width:118px}.brand-word{font-size:15px}.brand-word small{font-size:4.7px;letter-spacing:.2px}}

/* Final QA: accessible controls, legible mobile typography, authentic branding. */
.skip-link{position:fixed;left:12px;top:-100px;z-index:1000;background:#fff;color:#111827;padding:12px 16px;border-radius:4px;font-size:14px;font-weight:800}
.skip-link:focus{top:12px}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #ff8790;outline-offset:3px}
.kicker,.eyebrow:not(.hero .eyebrow){color:#ff6879}
@media(max-width:560px){
  .header{height:76px}
  .nav{top:75px}
  .official-logo-plate{width:clamp(122px,41vw,175px)}
  .brand-word{font-size:clamp(14px,4vw,16px)}
  .brand-word small{font-size:6px;letter-spacing:.15px;line-height:1.35}
  .service-card p,.project-info p,.values-grid p{font-size:14px;line-height:1.75}
  .footer a,.footer p,.footer span{font-size:13px}
  .btn{font-size:14px;min-height:44px}
  .nav-link{font-size:15px}
  .contact-phone strong{font-size:clamp(24px,7.4vw,30px)}
}
@media(max-width:345px){.official-logo-plate{width:118px}.brand-word{font-size:13px}.brand-word small{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}



/* Curated, static, first-party installation portfolio (no Facebook connection). */
.portfolio-intro{color:#b9bdc8;max-width:800px;font-size:15px;line-height:1.85;margin:0 0 52px}
.portfolio-collection{margin:0 0 65px}
.portfolio-section-head{margin:0 0 25px}
.portfolio-section-head h2{font-size:clamp(25px,3.4vw,38px);margin:10px 0 7px;letter-spacing:-1px}
.portfolio-section-head p{color:#aeb5c3;font-size:14px;line-height:1.7;max-width:680px}
.portfolio-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.portfolio-item{margin:0;border:1px solid #363945;background:#1a1e28;overflow:hidden;border-radius:9px}
.portfolio-zoom{display:block;position:relative;overflow:hidden;aspect-ratio:16/10;background:#20242f;outline-offset:-4px}
.portfolio-zoom img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .25s}
.portfolio-zoom:hover img{transform:scale(1.035)}
.zoom-indicator{position:absolute;bottom:12px;right:12px;background:rgba(9,12,19,.88);padding:8px 12px;color:#fff;border-radius:4px;font-size:12px;font-weight:700}
.portfolio-item figcaption{font-size:14px;color:#d9dce5;line-height:1.6;padding:15px 19px;min-height:72px}
.portfolio-lightbox{width:min(1100px,94vw);max-height:94vh;padding:30px 12px 12px;margin:auto;border:1px solid #414757;border-radius:10px;background:#10141e;color:#fff;box-shadow:0 16px 60px #000b}
.portfolio-lightbox::backdrop{background:#000d}
.portfolio-lightbox img{display:block;max-height:calc(94vh - 125px);width:auto;max-width:100%;object-fit:contain;margin:0 auto}
.portfolio-lightbox p{text-align:center;font-size:13px;line-height:1.6;padding:0 24px;color:#d9dce5}
.portfolio-lightbox-close{position:absolute;right:6px;top:1px;min-width:42px;min-height:42px;background:none;border:0;color:white;font-size:32px;line-height:1}
.portfolio-lightbox-close:hover,.portfolio-lightbox-close:focus-visible{color:#ff707f}
@media(max-width:640px){.portfolio-gallery{grid-template-columns:1fr;gap:18px}.portfolio-intro{font-size:14px;margin-bottom:34px}.portfolio-collection{margin-bottom:45px}.portfolio-item figcaption{min-height:auto}.portfolio-lightbox{width:96vw;padding:42px 6px 12px}}
@media(prefers-reduced-motion:reduce){.portfolio-zoom img{transition:none}}


/* 2026-10-28: fast contact on all pages, no social-network or messaging API. */
.contact-dock{position:fixed;z-index:91;bottom:19px;right:18px;display:flex;gap:7px;align-items:stretch;padding:6px;background:#101622f2;border:1px solid #475066;border-radius:12px;box-shadow:0 8px 32px #0009;backdrop-filter:blur(8px)}
.contact-dock-action{min-width:64px;min-height:48px;display:flex;gap:4px;flex-direction:column;align-items:center;justify-content:center;padding:6px 10px;border-radius:8px;color:#fff;font-size:11px;font-weight:750;line-height:1.2;text-align:center;text-decoration:none;transition:background .15s}
.contact-dock-action:hover{background:#32394a}
.contact-dock-icon{font-size:20px;font-weight:800;line-height:1}
.contact-dock-call{background:#d93e54}
.contact-dock-call:hover{background:#f34c64}
.contact-dock-sms,.contact-dock-email{background:#252c3c}
.hero-fast-contact{font-size:14px;color:#cbd0dd;margin:17px 0 0;line-height:1.6}
.hero-fast-contact a{color:#fff;font-weight:750;text-decoration:underline;text-underline-offset:4px}
.contact-direct-options{display:flex;flex-wrap:wrap;gap:9px;margin:18px 0 10px}
.contact-direct-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;min-width:110px;background:#222937;border:1px solid #606a7a;color:#fff;padding:11px 14px;font-size:13px;font-weight:750;border-radius:5px}
.contact-direct-link:hover{border-color:#f25b71;background:#333a4a}
.portfolio-enquiry{display:flex;justify-content:space-between;gap:32px;align-items:center;border-top:1px solid #353a49;padding-top:35px;padding-bottom:88px}
.portfolio-enquiry h2{font-size:clamp(25px,3.5vw,40px);line-height:1.2;margin:10px 0}
.portfolio-enquiry p{max-width:570px;color:#b8bdc9;font-size:14px;line-height:1.7}
.portfolio-enquiry-actions{display:flex;gap:10px;flex-wrap:wrap;flex-shrink:0}
@media(max-width:800px){
  .contact-dock{bottom:0;right:0;left:0;width:100%;border-radius:12px 12px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:7px max(8px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));gap:7px}
  .contact-dock-action{min-height:48px;font-size:12px}
  body{padding-bottom:calc(81px + env(safe-area-inset-bottom))}
  .portfolio-enquiry{align-items:flex-start;flex-direction:column;padding-bottom:45px}
  .portfolio-enquiry-actions{width:100%}
  .portfolio-enquiry-actions .btn{flex:1 1 140px;min-height:44px}
}
@media(max-width:360px){.contact-direct-link{flex:1 1 100%}}

/* SMS link fallback: in-app browsers may not dispatch sms: URLs to the OS */
.sms-fallback[hidden]{display:none!important}
.sms-fallback{position:fixed;bottom:93px;right:18px;z-index:150;display:flex;flex-direction:column;gap:12px;max-width:min(410px,calc(100vw - 36px));padding:17px 17px 14px;border:1px solid #697185;border-radius:11px;background:#202736;box-shadow:0 8px 36px #000c;color:#fff}
.sms-fallback-text{display:flex;flex-direction:column;gap:5px;font-size:13px;line-height:1.55}
.sms-fallback-text strong{font-size:14px}
.sms-fallback-text span{color:#d5dae4}
.sms-fallback-text b{color:#fff;white-space:nowrap;user-select:text;-webkit-user-select:text}
.sms-fallback-actions{display:flex;align-items:center;gap:10px}
.sms-copy{border:0;border-radius:7px;background:#d93e54;color:white;min-height:40px;padding:8px 15px;font-weight:750;font-size:12px}
.sms-fallback-close{margin-left:auto;background:#333d4f;border:1px solid #788297;color:white;border-radius:7px;min-width:40px;min-height:40px;font-size:23px;line-height:1}
@media(max-width:700px){.sms-fallback{position:fixed;bottom:80px;left:12px;right:12px;max-width:none;padding:14px}.sms-fallback-text{font-size:12px}}
