:root{--navy:#1b2e3b;--navy2:#263d4a;--orange:#f45121;--orange-dark:#cb451a;--rust:#c65d29;--cream:#fff9f5;--cream2:#fbf4ee;--muted:#526172;--line:#e5e9ed;--white:#fff;--shadow:0 14px 44px rgba(23,40,54,.065);--round:16px;--max:1180px}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--navy);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.5;background:#fff}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #ff9e6c;outline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.037em;line-height:1.14}h1{font-size:clamp(2.55rem,4.1vw,4.05rem);margin-bottom:18px;font-weight:800}h2{font-size:clamp(1.85rem,2.6vw,2.65rem);margin-bottom:8px;font-weight:800}h3{font-size:1.1rem;font-weight:780;letter-spacing:-.025em}p{color:var(--muted)}.container{width:min(var(--max),calc(100% - 64px));margin-inline:auto}.section{padding:75px 0}.section-tight{padding:52px 0}.bg-soft{background:var(--cream)}.section-heading{margin-bottom:27px}.section-heading p{font-size:1.03rem;margin:4px 0 0}.eyebrow{color:var(--orange-dark);font-weight:800;text-transform:uppercase;letter-spacing:.125em;font-size:.74rem}.inline-link{display:inline-flex;align-items:center;gap:10px;color:var(--orange-dark);font-size:.9rem;font-weight:800;transition:gap .2s}.inline-link:hover{gap:15px}.mini-arrow{font-size:1.22em}.topbar{height:4px;background:linear-gradient(90deg,var(--orange),#f9a35b,var(--orange))}.header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.97);border-bottom:1px solid #e8ebef;backdrop-filter:blur(14px);box-shadow:0 3px 25px rgba(24,41,54,.025)}.header-inner{height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;flex-shrink:0}.brand img{width:164px;height:auto}.nav{display:flex;gap:30px;align-items:center}.nav a{font-size:.89rem;font-weight:650;transition:color .15s}.nav a:hover,.nav a.active{color:var(--orange-dark)}.header-phone{display:inline-flex;align-items:center;gap:10px;white-space:nowrap;font-size:1.01rem;font-weight:800}.header-phone .phone-glyph{color:var(--orange);display:flex}.header-phone:hover{color:var(--orange-dark)}.mobile-toggle{display:none;background:none;border:0;padding:8px;color:var(--navy)}.mobile-toggle svg{width:25px;height:25px}.preview-note{background:#fff7ec;border-bottom:1px solid #f6e3d2;text-align:center;color:#865125;font-size:.76rem;font-weight:600;padding:6px 12px}.preview-note strong{color:#9c441e}.button{display:inline-flex;align-items:center;justify-content:center;gap:11px;padding:14px 23px;border:1.5px solid transparent;border-radius:9px;min-height:49px;font-weight:800;font-size:.94rem;transition:transform .18s,background .18s,box-shadow .18s;line-height:1.2}.button:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(244,81,33,.15)}.button-primary{background:var(--orange);color:#fff;box-shadow:0 6px 16px rgba(244,81,33,.13)}.button-primary:hover{background:var(--orange-dark)}.button-outline{border-color:var(--orange);color:var(--orange-dark);background:#fff}.button-outline:hover{background:#fff6f1}.button-light{background:#fff;color:#a74620}.button-dark-outline{border-color:rgba(255,255,255,.75);color:#fff;background:transparent}.button-dark-outline:hover{background:rgba(255,255,255,.1)}.button svg,.icon{width:20px;height:20px;flex-shrink:0}.hero{overflow:hidden;background:linear-gradient(105deg,#fff 0%,#fff 47%,#fcf8f5 100%)}.hero-wrap{display:grid;grid-template-columns:47% 53%;align-items:stretch;min-height:465px}.hero-copy{padding:72px 42px 59px 0;align-self:center}.hero-copy h1{font-size:clamp(2.65rem,4vw,3.65rem)}.hero-copy .lede{max-width:460px;font-size:1.06rem;color:#455566;line-height:1.55}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.hero-image{position:relative;min-height:465px;isolation:isolate}.hero-image img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:54% 50%}.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.13),transparent 28%);pointer-events:none}.hero-stamp{position:absolute;right:24px;bottom:24px;z-index:1;background:rgba(255,255,255,.97);border-radius:11px;padding:12px 16px;box-shadow:0 12px 30px rgba(20,34,42,.18);display:flex;align-items:center;gap:10px;color:var(--navy);font-size:.78rem;line-height:1.25;font-weight:750}.hero-stamp svg{color:var(--orange);width:26px;height:26px}.emergency{background:var(--rust);color:#fff}.emergency-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:19px 0}.emergency-copy{display:flex;align-items:center;gap:17px}.emergency-icon{display:grid;place-items:center;border-radius:50%;width:49px;height:49px;flex-shrink:0;background:rgba(255,255,255,.15)}.emergency-icon svg{height:25px;width:25px}.emergency h2{font-size:clamp(1.12rem,1.65vw,1.52rem);margin:0 0 3px;color:#fff}.emergency p{color:rgba(255,255,255,.91);margin:0;font-size:.89rem}.emergency .button{flex-shrink:0;font-size:.87rem}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.feature-card{display:block}.feature-card .feature-photo{border-radius:11px;overflow:hidden;height:205px;background:#f4f0ed}.feature-card .feature-photo img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.feature-card:hover .feature-photo img{transform:scale(1.045)}.feature-card h3{font-size:1.28rem;margin:16px 0 5px}.feature-card p{font-size:.91rem;margin:0;max-width:350px}.feature-card .inline-link{margin-left:8px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.service-tile{display:flex;gap:15px;min-height:130px;padding:21px 20px;background:#fff;border:1px solid #e4e7ec;border-radius:12px;transition:box-shadow .2s,transform .2s,border-color .2s}.service-tile:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#f2bea9}.service-icon{height:40px;width:45px;display:grid;place-items:center;flex-shrink:0;color:var(--orange)}.service-icon svg{width:36px;height:36px}.service-tile h3{font-size:1.02rem;margin:0 0 5px}.service-tile p{font-size:.82rem;margin:0 0 6px;line-height:1.4}.service-tile .inline-link{font-size:.78rem}.center-action{text-align:center;margin-top:25px}.answers-layout{display:grid;grid-template-columns:1.02fr .98fr;gap:80px;align-items:center}.answer-list{margin-top:24px}.answer-row{padding:14px 0;border-top:1px solid #dfe4e8}.answer-row h3{font-size:1rem;margin:0 0 3px}.answer-row p{font-size:.92rem;margin:0}.review-card{border:1px solid #e7e8eb;border-radius:14px;background:#fff;box-shadow:var(--shadow);padding:31px;min-height:236px}.review-brand{font-weight:850;font-size:1.35rem;letter-spacing:-.05em}.google-g{font-family:Arial,sans-serif;color:#4285f4;font-weight:900;font-size:1.9rem;vertical-align:middle;margin-right:8px}.review-brand small{font-size:.8rem;font-weight:500;color:var(--muted);letter-spacing:0}.review-quote{display:flex;gap:14px;align-items:center;margin:13px 0 21px}.quote-mark{font-family:Georgia,serif;font-size:7rem;line-height:.65;color:#f9d5c7;letter-spacing:-.1em}.review-quote p{margin:0;font-weight:650;color:var(--navy);font-size:1.05rem}.review-note{font-size:.76rem;color:#647384;margin:0 0 14px}.review-card .inline-link{border-top:1px solid var(--line);padding-top:15px;width:100%}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.gallery-card{border-radius:12px;overflow:hidden;background:#fff;border:1px solid var(--line);transition:transform .18s,box-shadow .18s;cursor:pointer;text-align:left;padding:0;color:var(--navy)}.gallery-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.gallery-card img{width:100%;height:185px;object-fit:cover}.gallery-card span{display:block;padding:13px 15px;font-weight:750}.gallery-card small{display:block;color:var(--muted);font-weight:500;margin-top:3px}.cta-banner{position:relative;isolation:isolate;background:var(--navy);color:#fff;overflow:hidden}.cta-banner::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(25,43,56,.98),rgba(25,43,56,.9)),var(--swift-cta-bg,url('assets/home-hero-illustrative.webp')) center/cover;z-index:-1}.cta-inner{min-height:152px;padding:29px 0;display:flex;align-items:center;justify-content:space-between;gap:25px}.cta-inner h2{color:#fff;font-size:clamp(1.55rem,2.2vw,2.25rem);margin:0 0 6px}.cta-inner p{color:rgba(255,255,255,.84);margin:0}.cta-buttons{display:flex;gap:10px;flex-shrink:0}.footer{border-top:1px solid #edf0f3;background:#fff}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:110px}.footer-main .brand img{width:143px}.footer-nav{display:flex;gap:22px;flex-wrap:wrap}.footer-nav a{font-size:.82rem;font-weight:650}.footer-nav a:hover{color:var(--orange-dark)}.footer-phone{font-weight:800;white-space:nowrap}.footer-bottom{padding:16px 0;border-top:1px solid var(--line);display:flex;gap:25px;justify-content:space-between;font-size:.75rem;color:#71808f}.footer-bottom a{text-decoration:underline;text-underline-offset:3px}.page-hero{background:linear-gradient(110deg,#fffaf7,#fff 75%);padding:54px 0 49px;border-bottom:1px solid #f1e7e0}.breadcrumb{font-size:.77rem;color:#73808e;margin-bottom:21px}.breadcrumb a:hover{text-decoration:underline}.breadcrumb span{color:var(--orange-dark)}.page-hero h1{max-width:820px;font-size:clamp(2.3rem,3.5vw,3.7rem)}.page-hero p{font-size:1.1rem;max-width:690px;margin-bottom:0}.page-actions{margin-top:24px;display:flex;flex-wrap:wrap;gap:12px}.service-detail-hero{display:grid;grid-template-columns:1.02fr .98fr;gap:45px;align-items:center}.detail-hero-image{border-radius:16px;width:100%;height:310px;object-fit:cover;box-shadow:var(--shadow)}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.detail-grid h2{font-size:1.8rem}.checklist{list-style:none;padding:0;margin:20px 0}.checklist li{display:flex;gap:10px;margin:10px 0;color:#405162}.checklist svg{width:19px;height:19px;color:var(--orange);flex-shrink:0;margin-top:2px}.steps{counter-reset:num;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:22px}.step{padding:23px 20px;background:#fff;border:1px solid #e8e8eb;border-radius:13px;position:relative}.step-number{width:38px;height:38px;background:var(--orange);color:#fff;display:grid;place-items:center;border-radius:50%;font-weight:800;margin-bottom:14px}.step h3{margin:0 0 7px}.step p{margin:0;font-size:.87rem}.faq{max-width:850px;margin:auto}.faq details{background:#fff;border:1px solid #e2e7ec;border-radius:10px;margin:9px 0;padding:0 18px}.faq summary{cursor:pointer;font-weight:750;list-style:none;padding:19px 32px 19px 0;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:'+';position:absolute;right:0;top:14px;font-size:1.55rem;color:var(--orange);font-weight:400}.faq details[open] summary::after{content:'−'}.faq details p{margin:0;padding:0 20px 19px 0;font-size:.92rem}.area-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.area-link{display:flex;align-items:center;justify-content:space-between;padding:22px;border:1px solid var(--line);border-radius:12px;font-weight:740;transition:border-color .2s,transform .2s}.area-link:hover{border-color:#f0b399;transform:translateY(-2px)}.area-link svg{width:20px;height:20px;color:var(--orange)}.call-panel{border-radius:17px;padding:30px;background:#fff6f1;border:1px solid #f5dfd4}.call-panel h2{font-size:1.5rem}.call-panel p{font-size:.91rem}.call-panel .button{width:100%}.content-columns{display:grid;grid-template-columns:1.4fr .8fr;gap:60px}.content-columns p{line-height:1.72}.gallery-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:25px}.filter-button{border:1px solid #dce2e7;background:#fff;border-radius:24px;padding:8px 16px;font-weight:750;color:var(--navy);font-size:.84rem}.filter-button[aria-pressed="true"]{background:var(--navy);color:#fff;border-color:var(--navy)}.gallery-grid.large .gallery-card img{height:230px}.gallery-empty{padding:20px;color:var(--muted)}.about-highlight{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.about-highlight img{width:100%;height:385px;object-fit:cover;object-position:center 30%;border-radius:15px}.about-highlight p{line-height:1.7}.mini-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--orange-dark);font-size:.79rem;font-weight:800}.mini-kicker svg{width:18px;height:18px}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:stretch}.contact-panel{padding:36px;border:1px solid #e5e9ee;border-radius:15px;background:#fff;box-shadow:var(--shadow)}.contact-panel h2{font-size:1.6rem}.contact-panel .big-phone{font-size:clamp(1.7rem,3vw,2.6rem);font-weight:850;color:var(--orange-dark);letter-spacing:-.035em}.contact-panel .button{margin-top:20px}.contact-panel p{font-size:.94rem}.contact-links{display:grid;gap:13px}.contact-links a{display:flex;align-items:center;gap:11px;font-weight:750;color:var(--navy)}.contact-links svg{width:20px;height:20px;color:var(--orange)}.modal{border:0;border-radius:17px;padding:0;box-shadow:0 26px 100px rgba(0,0,0,.3);width:min(640px,calc(100% - 40px));max-height:86vh}.modal::backdrop{background:rgba(16,31,40,.76)}.modal-inner{padding:15px}.modal-inner img{width:100%;max-height:65vh;object-fit:contain;border-radius:10px}.modal-footer{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 5px 2px}.modal-footer p{margin:0;font-size:.9rem}.modal-close{border:0;background:var(--navy);color:#fff;border-radius:50%;height:36px;width:36px;font-size:1.4rem}.mobile-call{display:none}.muted-small{font-size:.76rem;color:#707d88}.related-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}.related-links a{display:inline-flex;align-items:center;gap:6px;border:1px solid #e5e7e9;border-radius:8px;padding:10px 12px;font-size:.85rem;font-weight:700}.related-links a:hover{border-color:var(--orange)}.lightbox-tip{color:#72808c;font-size:.78rem;margin:5px 0 0}
@media(max-width:1060px){.container{width:min(var(--max),calc(100% - 44px))}.nav{gap:18px}.hero-copy{padding-right:22px}.hero-trust{gap:10px}.hero-trust span{font-size:.7rem}.service-tile{padding:16px 13px;gap:10px}.service-icon{width:35px}.answers-layout{gap:35px}.footer-nav{gap:13px}}
@media(max-width:760px){html{scroll-padding-top:75px}.header-inner{height:66px}.brand img{width:137px}.header-phone{margin-left:auto;font-size:.85rem}.header-phone .phone-glyph svg{width:18px;height:18px}.mobile-toggle{display:block;order:3}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;box-shadow:0 14px 22px rgba(18,35,48,.1);padding:13px 23px 22px;flex-direction:column;align-items:stretch;gap:0;border-bottom:1px solid var(--line)}.nav.open{display:flex}.nav a{font-size:1rem;padding:13px;border-bottom:1px solid var(--line)}.container{width:calc(100% - 36px)}.section{padding:49px 0}.section-tight{padding:40px 0}.hero-wrap{grid-template-columns:1fr;min-height:0}.hero-copy{padding:46px 0 30px}.hero-copy h1{font-size:clamp(2.4rem,8vw,3.2rem)}.hero-image{min-height:320px;margin:0 -18px}.hero-trust{gap:13px}.emergency-inner{flex-direction:column;align-items:stretch;gap:14px}.emergency .button{width:100%}.emergency-icon{width:42px;height:42px}.feature-grid,.service-grid,.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-card .feature-photo{height:165px}.answers-layout,.detail-grid,.content-columns,.about-highlight,.contact-layout{grid-template-columns:1fr;gap:27px}.area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.steps{grid-template-columns:repeat(2,1fr)}.cta-inner{flex-direction:column;align-items:flex-start}.cta-buttons{flex-wrap:wrap}.footer-main{padding:24px 0;flex-wrap:wrap}.footer-nav{order:3;width:100%}.footer-bottom{flex-direction:column;gap:5px}.service-detail-hero{grid-template-columns:1fr;gap:25px}.detail-hero-image{height:240px;order:-1}.page-hero{padding:37px 0}.about-highlight img{height:310px}}
@media(max-width:480px){.container{width:calc(100% - 32px)}.header-phone{font-size:0;gap:0}.header-phone .phone-glyph svg{width:24px;height:24px}.hero-copy{padding-top:37px}.hero-copy h1{font-size:2.45rem}.hero-actions .button{flex:1 1 100%}.hero-image{min-height:240px;margin:0 -16px}.hero-stamp{right:12px;bottom:12px;padding:9px;font-size:.65rem}.feature-grid,.gallery-grid{grid-template-columns:1fr;gap:23px}.feature-card .feature-photo{height:205px}.service-grid{grid-template-columns:1fr;gap:10px}.service-tile{min-height:100px}.emergency h2{font-size:1.2rem}.emergency p{font-size:.82rem}.review-card{padding:21px}.quote-mark{font-size:5.5rem}.area-grid{grid-template-columns:1fr 1fr;gap:8px}.area-link{padding:15px 10px;font-size:.83rem}.steps{grid-template-columns:1fr 1fr;gap:9px}.step{padding:14px}.step p{font-size:.78rem}.cta-buttons{width:100%}.cta-buttons .button{width:100%}.footer-phone{font-size:.9rem}.gallery-grid.large .gallery-card img{height:205px}.mobile-call{display:flex;position:fixed;bottom:13px;left:16px;right:16px;z-index:90;padding:13px 20px;box-shadow:0 7px 28px rgba(11,25,35,.25)}body{padding-bottom:62px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}


/* v0.9: header appointment CTA + accessible service request section */
html{scroll-padding-top:110px}
.header-inner{gap:16px}
.nav{gap:21px}
.header-actions{display:flex;align-items:center;gap:15px;margin-left:auto;flex-shrink:0}
.header-phone{font-size:.93rem}
.header-schedule{min-height:43px;padding:10px 15px;border-radius:9px;font-size:.83rem;box-shadow:none}
.header-schedule svg{width:17px;height:17px}
.request-section{background:linear-gradient(125deg,#fffaf6,#fff 65%);border-top:1px solid #f2e9e2}
.request-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(26px,5vw,78px);align-items:start}
.request-intro{padding-top:22px}
.request-intro h2{font-size:clamp(2rem,3vw,2.85rem);margin:9px 0 17px;max-width:460px;line-height:1.11}
.request-intro>p{line-height:1.65;max-width:450px}
.request-points{display:grid;gap:22px;margin:33px 0}
.request-points>div{display:flex;gap:14px;align-items:flex-start;color:var(--muted);font-size:.9rem;line-height:1.6}
.request-points svg{width:22px;height:22px;color:var(--orange-dark);flex-shrink:0;margin-top:2px}
.request-points strong{color:var(--navy)}
.request-points a{font-weight:750;color:var(--orange-dark);text-decoration:underline;text-underline-offset:3px}
.request-disclaimer{font-size:.8rem;color:#687581;border-left:3px solid #f0b08c;padding-left:12px}
.request-card{background:#fff;border:1px solid #e9e3df;border-radius:18px;padding:clamp(21px,3vw,33px);box-shadow:0 15px 45px rgba(29,45,56,.065)}
.form-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:21px}
.form-head h3{font-size:1.55rem;margin:5px 0 0}
.form-time{display:inline-flex;align-items:center;gap:5px;color:#697480;font-size:.72rem;white-space:nowrap}
.form-time svg{height:15px;width:15px;color:var(--orange)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.form-field{min-width:0;display:flex;flex-direction:column;gap:7px}
.form-field-full{grid-column:1 / -1}
.form-field label{font-size:.81rem;font-weight:750;color:var(--navy)}
.form-field label>span:not(.optional){color:var(--orange-dark)}
.form-field .optional{font-size:.72rem;color:#82909b;font-weight:500}
.form-field input,.form-field select,.form-field textarea{appearance:auto;display:block;width:100%;min-width:0;background:#fff;border:1px solid #cbd4dc;border-radius:9px;padding:12px 13px;font:inherit;font-size:.9rem;color:var(--navy);outline:none;min-height:46px}
.form-field textarea{min-height:90px;resize:vertical}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--orange-dark);box-shadow:0 0 0 3px rgba(244,81,33,.13)}
.form-field input::placeholder,.form-field textarea::placeholder{color:#8b96a0}
.form-helper{font-size:.76rem;margin:15px 0;color:#697480}
.form-submit{width:100%;cursor:pointer;font-family:inherit}
.form-privacy{font-size:.74rem;text-align:center;margin:10px 0 0;color:#74808c}
.form-result{background:#fff8f1;border:1px solid #edcdb7;padding:19px;border-radius:11px;margin-top:19px}
.form-result[hidden]{display:none}
.form-result h4{font-size:1.05rem;margin:0 0 7px;color:var(--navy)}
.form-result p{font-size:.82rem;margin:6px 0 12px}
.form-result pre{white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit;font-size:.81rem;color:var(--navy);background:#fff;border:1px solid #eee1d5;padding:14px;border-radius:8px;line-height:1.6}
.form-result .button{font-size:.82rem;min-height:43px;cursor:pointer;font-family:inherit}
.form-copy-feedback{color:var(--orange-dark);font-weight:700}
@media(max-width:1150px){.header-inner{gap:11px}.nav{gap:13px}.header-actions{gap:9px}.header-phone{font-size:.85rem}.header-schedule{padding:10px 11px;font-size:.78rem}}
@media(max-width:900px){.header-schedule svg{display:none}.nav{gap:10px}.brand img{width:138px}.header-inner{gap:9px}.header-actions{gap:8px}.header-phone{font-size:.81rem}}
@media(max-width:760px){.header-inner{height:68px}.header-actions{margin-left:auto}.header-phone{font-size:0}.header-phone .phone-glyph svg{width:23px;height:23px}.header-schedule{min-height:39px;padding:9px 12px;font-size:.79rem}.header-schedule svg{display:none}.mobile-toggle{order:3}.request-layout{grid-template-columns:1fr;gap:27px}.request-intro{padding-top:0}.request-points{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:23px 0}.request-points>div{display:block;font-size:.8rem}.request-points svg{margin:0 0 8px}}
@media(max-width:480px){.header-inner{gap:8px}.header-actions{gap:8px}.brand img{width:126px}.header-schedule{font-size:.73rem;padding:8px 9px}.request-points{grid-template-columns:1fr;gap:14px}.request-points>div{display:flex;gap:13px}.request-points svg{margin:3px 0 0}.form-grid{grid-template-columns:1fr}.form-field-full{grid-column:auto}.form-head{align-items:flex-start}.form-time{font-size:.64rem}.request-card{padding:19px 16px}.form-head h3{font-size:1.4rem}}

/* v0.10 — linked Google rating and the two banners under the emergency ribbon */
.hero-google-reviews{display:inline-flex;align-items:center;flex-wrap:wrap;gap:9px;margin-top:20px;padding:7px 0;color:var(--navy);font-size:.87rem;font-weight:750;line-height:1.4;text-decoration:none;transition:color .16s}
.hero-google-reviews:hover,.hero-google-reviews:focus-visible{color:var(--orange-dark)}
.hero-google-reviews .google-mini{font-family:Arial,sans-serif;font-size:1.55rem;font-weight:800;line-height:1;color:#4285f4;letter-spacing:-.07em;margin-right:1px}
.hero-google-reviews .google-stars{font-size:1.18rem;line-height:1;color:#e69b15;letter-spacing:.07em;white-space:nowrap}
.hero-google-reviews .google-review-label{border-bottom:1px solid #b3bfcc;text-underline-offset:3px}
.hero-google-reviews svg{width:17px;height:17px;color:var(--orange-dark)}
.trust-banner{background:#fff;border-bottom:1px solid #ece5df}
.trust-banner-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch}
.trust-banner-item{display:flex;align-items:center;gap:13px;padding:22px 20px;min-width:0}
.trust-banner-item:first-child{padding-left:0}
.trust-banner-item:last-child{padding-right:0}
.trust-banner-item+.trust-banner-item{border-left:1px solid #eae4e0}
.trust-banner-icon{display:grid;place-items:center;flex:0 0 45px;width:45px;height:45px;border-radius:14px;background:#fff1e9;color:var(--orange-dark);font-size:1.65rem;font-weight:800;line-height:1}
.trust-banner-icon svg{width:23px;height:23px}
.trust-banner-item>span:last-child{min-width:0;display:grid;gap:3px}
.trust-banner-item strong{font-size:.92rem;font-weight:800;color:var(--navy);line-height:1.3}
.trust-banner-item small{font-size:.79rem;font-weight:450;color:#59626a;line-height:1.4}
.discount-banner{background:#183044;color:#fff}
.discount-banner-inner{min-height:107px;display:flex;align-items:center;justify-content:center;gap:20px;padding:19px 0}
.discount-seal{width:66px;height:66px;border:5px solid #f7d0b9;flex:0 0 66px;border-radius:50%;background:white;color:var(--navy);display:flex;align-items:center;justify-content:center;flex-direction:column;line-height:.94;box-shadow:0 2px 10px rgba(0,0,0,.07)}
.discount-seal strong{font-size:1.25rem;letter-spacing:-.04em}
.discount-seal span{font-size:.83rem;font-weight:850;letter-spacing:.02em;margin-top:2px}
.discount-copy{text-align:center}
.discount-copy>strong{display:block;color:#fff;font-size:clamp(.99rem,1.55vw,1.39rem);font-weight:800;line-height:1.32}
.discount-copy p{margin:5px 0 0;color:#fff1e9;font-size:.86rem;line-height:1.5}
@media(max-width:1030px){.trust-banner-item{gap:9px;padding:18px 10px}.trust-banner-item:first-child{padding-left:0}.trust-banner-item:last-child{padding-right:0}.trust-banner-item strong{font-size:.82rem}.trust-banner-icon{width:39px;height:39px;flex-basis:39px}}
@media(max-width:760px){.trust-banner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.trust-banner-item,.trust-banner-item:first-child,.trust-banner-item:last-child{padding:15px 12px}.trust-banner-item:nth-child(odd){border-left:0}.trust-banner-item:nth-child(n+3){border-top:1px solid #eae4e0}.discount-banner-inner{min-height:0;gap:14px;padding:19px 0}.discount-copy>strong{font-size:1.03rem}.discount-copy p{font-size:.79rem}}
@media(max-width:430px){.hero-google-reviews{gap:7px;font-size:.77rem}.hero-google-reviews .google-stars{font-size:1.03rem}.trust-banner-item,.trust-banner-item:first-child,.trust-banner-item:last-child{gap:8px;padding:12px 8px}.trust-banner-icon{width:35px;height:35px;flex-basis:35px;border-radius:10px;font-size:1.4rem}.trust-banner-icon svg{width:19px;height:19px}.trust-banner-item strong{font-size:.75rem}.trust-banner-item small{font-size:.7rem}.discount-seal{width:58px;height:58px;flex-basis:58px;border-width:4px}.discount-copy>strong{font-size:.91rem}.discount-copy p{font-size:.73rem}}
/* WordPress-native additions; original v0.11 layout rules above remain unchanged. */
.skip-to-content{position:absolute;top:-60px;left:12px;z-index:9999;background:#fff;padding:12px 16px}.skip-to-content:focus{top:8px}
.swift-honeypot{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
.swift-notice{padding:14px 16px;border-radius:9px;margin-bottom:16px;font-weight:650;font-size:.91rem}
.swift-notice-ok{background:#e6f5e9;color:#164624;border:1px solid #a8d6b0}
.swift-notice-error{background:#fff1ec;color:#82331b;border:1px solid #f2c4b3}
.swift-extra-content{font-size:1rem;max-width:100%}.swift-extra-content .container{max-width:850px}
.swift-extra-content a:not(.button){text-decoration:underline;text-underline-offset:3px;color:var(--orange-dark)}
.swift-extra-content h2,.swift-extra-content h3{margin-top:26px}

/* v1.0.1 — center desktop navigation relative to the entire header, not the
   uneven widths of the logo and the call/schedule buttons. At narrower widths,
   keep the original flexible header and mobile navigation unchanged. */
@media (min-width: 1200px) {
  .header-inner { position: relative; }
  .header-inner > .nav {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    gap: 18px;
  }
}

/* Stage 2 additions adapted from approved clickable preview */
.company-intro p{font-size:.92rem;line-height:1.62;margin:0 0 11px}.approach-heading{margin:19px 0 8px;font-size:1.11rem;line-height:1.3}.review-quote{align-items:flex-start}.review-quote .quote-mark{line-height:1;flex-shrink:0}.review-quote p{font-size:.94rem;line-height:1.53;font-weight:550}.review-card{min-height:unset}.repair-issue-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px 0}.repair-issue-grid>div{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px}.repair-issue-grid h3{margin:0 0 7px}.repair-issue-grid p{font-size:.92rem;margin:0}.repair-safety{background:#fff3ec;border:1px solid #f8d0ba;color:#54372b;border-radius:12px;padding:17px 20px;line-height:1.5}.repair-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px}.repair-detail-grid p{line-height:1.7}.section-heading p{max-width:820px}
@media(max-width:760px){.repair-detail-grid{grid-template-columns:1fr;gap:25px}.company-intro p{font-size:.91rem}}@media(max-width:480px){.repair-issue-grid{grid-template-columns:1fr}.review-quote p{font-size:.93rem}}

/* Stage 2 revision: preserve v0.11 visual palette while correcting header geometry. */
@media(min-width:1181px){.header-inner{position:relative}.header-inner>.nav{position:absolute;left:50%;transform:translateX(-50%);justify-content:center;gap:23px;white-space:nowrap}.header-inner>.header-actions{margin-left:auto}}
@media(min-width:761px) and (max-width:1180px){.header-inner{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:65px 38px;height:auto;gap:0;position:relative}.header-inner>.brand{grid-row:1;grid-column:1;justify-self:start}.header-inner>.header-actions{grid-row:1;grid-column:2;justify-self:end;margin-left:0}.header-inner>.nav{grid-row:2;grid-column:1/-1;justify-self:center;display:flex;justify-content:center;position:static;transform:none;gap:24px}.header-inner>.nav a{font-size:.86rem}}
@media(max-width:760px){.header-inner{display:flex;position:relative}.header-inner>.nav{position:absolute;top:100%;left:0;right:0;transform:none;grid-row:auto;grid-column:auto;justify-self:auto;display:none}.header-inner>.nav.open{display:flex}.header-inner>.header-actions{margin-left:auto}}
/* Native-resolution inset prevents enlarging a 284x160 working-tech photo across the entire hero. */
.hero-image-composite .hero-background{width:100%;height:100%;object-fit:cover;object-position:center 53%}
.hero-work-inset{position:absolute;z-index:2;left:23px;bottom:24px;width:284px;background:#fff;border-radius:13px;padding:7px;box-shadow:0 15px 42px rgba(19,34,46,.26);transform:rotate(-1deg);max-width:calc(100% - 47px)}
.hero-image-composite .hero-work-inset img{position:static;inset:auto;width:100%;height:auto;aspect-ratio:284/160;object-fit:cover;border-radius:8px;display:block}
.hero-work-inset span{display:block;font-size:.65rem;font-weight:750;color:#4a5a64;padding:5px 3px 1px}
.hero-image-composite .hero-stamp{right:18px;bottom:auto;top:22px}
@media(max-width:760px){.hero-work-inset{left:18px;bottom:17px;width:245px}.hero-image-composite .hero-stamp{top:14px;right:12px}}
@media(max-width:480px){.hero-work-inset{width:192px;left:12px;bottom:12px}.hero-work-inset span{font-size:.55rem}.hero-image-composite .hero-stamp{font-size:.56rem;padding:7px}}
/* Verified-source testimonial layout: three independent customer reviews pending reviewer-affiliation check for fourth. */
.about-assurance{background:#fff7f2;border:1px solid #f2dfd3;padding:27px;border-radius:15px;box-shadow:var(--shadow)}
.about-assurance h3{font-size:1.46rem;margin:8px 0}.about-assurance p{line-height:1.65;font-size:.93rem;margin:0 0 16px}.about-assurance .button{width:100%;margin-bottom:14px}.about-assurance .inline-link{display:flex;justify-content:center}
.testimonials-section{background:linear-gradient(120deg,#fff 30%,#fffaf7 100%);border-top:1px solid #f2eae3}
.testimonials-heading{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:25px}.testimonials-heading h2{margin:6px 0}.testimonials-heading p{margin:0}
.testimonials-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:stretch}
.testimonial-card{min-width:0;min-height:295px;padding:23px 20px 18px;border:1px solid #e8e5e2;border-radius:14px;background:#fff;box-shadow:0 12px 35px rgba(23,40,54,.045);display:flex;flex-direction:column}
.testimonial-mark{font-family:Georgia,serif;font-size:4.5rem;line-height:.8;color:#f6cbb8;height:43px}
.testimonial-text{font-size:.85rem;line-height:1.56;color:#2c3d49;font-weight:520;margin:13px 0 19px;flex:1}
.testimonial-bottom{display:flex;gap:10px;align-items:center;border-top:1px solid #edf0f2;padding-top:14px}.testimonial-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#e7f5eb;color:#29764a;font-weight:900;flex:none}.testimonial-bottom strong,.testimonial-bottom small{display:block}.testimonial-bottom strong{font-size:.82rem}.testimonial-bottom small{font-size:.68rem;line-height:1.35;color:#65717c}
.testimonial-pending{border-style:dashed;background:#fffdfb;box-shadow:none}.testimonial-placeholder-icon{font-family:Georgia,serif;font-size:3.4rem;color:#ecd9cd;line-height:1}.testimonial-placeholder-title{font-size:1.03rem;font-weight:800;color:var(--navy);margin:16px 0 8px}.testimonial-placeholder-desc{font-size:.86rem;line-height:1.55;color:#65717b;margin:0 0 auto}.testimonial-slot{border-top:1px solid #efe6df;color:#a16649;font-size:.72rem;padding-top:15px;font-weight:750;margin-top:20px}.testimonial-editor-note{margin:16px 0 0;font-size:.78rem;color:#6b7781}
/* Region cards share the original v0.11 rounded card, orange accent and white/cream style. */
.region-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:25px}.region-card{min-width:0;border:1px solid #e5e9ed;border-radius:15px;padding:21px 19px;background:#fff;box-shadow:0 10px 30px rgba(23,40,54,.035);display:flex;flex-direction:column}.region-head{display:flex;align-items:center;justify-content:space-between}.region-icon{background:#fff1e9;color:var(--orange-dark);width:41px;height:41px;border-radius:12px;display:grid;place-items:center}.region-icon svg{width:21px;height:21px}.region-number{font-weight:800;color:#abb5bc;font-size:.73rem}.region-card h3{font-size:1.14rem;min-height:2.3em;margin:18px 0 5px}.region-card>p{font-size:.8rem;line-height:1.4;margin:0 0 16px}.region-city-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:auto}.region-city-list a{font-size:.74rem;font-weight:720;border:1px solid #e9e4df;background:#fffaf7;border-radius:8px;padding:8px 9px;display:inline-flex;align-items:center;gap:5px;transition:background .2s,border-color .2s}.region-city-list a:hover{background:#fff0e8;border-color:#e7aa89}.region-city-list svg{width:12px;height:12px;color:var(--orange-dark)}.region-disclaimer{font-size:.76rem;color:#677580;margin:14px 0 0}
@media(max-width:1060px){.testimonials-row,.region-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.testimonial-card{min-height:245px}.region-card h3{min-height:0}}
@media(max-width:760px){.testimonials-heading{align-items:flex-start;flex-direction:column}.testimonials-row,.region-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.testimonial-card{padding:18px;min-height:260px}}
@media(max-width:530px){.testimonials-row,.region-grid{grid-template-columns:1fr}.testimonial-card{min-height:0}.testimonial-pending{min-height:145px}.region-card h3{margin:12px 0 5px}.region-card{padding:19px}}

/* Stage 2: six-region service area layout. */
.region-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.region-card h3{min-height:0}
@media(max-width:1060px){.region-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:530px){.region-grid{grid-template-columns:1fr}}


.region-city-unlinked{font-size:.74rem;font-weight:720;border:1px solid #e9e4df;background:#fffaf7;border-radius:8px;padding:8px 9px;display:inline-flex;align-items:center;color:#32424c}

/* v1.0.6: dedicated repair page styles, matching approved clickable preview */
.repair-hero-note{font-size:.81rem!important;color:#687581!important;margin-top:16px!important}
.repair-extra-links{margin:24px 0 0;color:var(--muted);font-size:.93rem}
.repair-extra-links a{color:var(--orange-dark);font-weight:750;text-decoration:underline;text-underline-offset:3px}
.repair-area-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:26px}
.repair-area-actions p{font-size:.85rem;color:var(--muted);max-width:450px;margin:0;line-height:1.6}
.repair-detail-grid>div{min-width:0}.repair-detail-grid p{line-height:1.7}.repair-issue-grid>div{min-width:0}
@media(max-width:760px){.repair-area-actions{align-items:stretch;flex-direction:column;gap:13px}.repair-area-actions .button{justify-content:center}}

/* Keep low-resolution illustrative technician image at native size; larger hero photo is high resolution. */
.repair-hero-photo{position:relative;min-width:0}.repair-hero-photo .detail-hero-image{display:block;height:310px}.repair-tech-inset{position:absolute;bottom:15px;right:15px;width:min(49%,284px);height:auto;aspect-ratio:284/160;object-fit:cover;border:4px solid #fff;border-radius:12px;box-shadow:0 8px 25px rgba(0,0,0,.15)}
@media(max-width:760px){.repair-hero-photo{order:-1}.repair-hero-photo .detail-hero-image{height:240px}.repair-tech-inset{width:min(45%,190px);right:10px;bottom:10px;border-width:3px}}

/* v1.0.7: five service page layouts, scoped to their components */

/* Spring page preview: preserve the Swift palette and existing responsive components. */
.spring-hero-visual{position:relative;min-width:0;min-height:310px;border-radius:18px;overflow:hidden;background:#eee3d7}
.spring-house{width:100%;height:100%;min-height:310px;object-fit:cover;object-position:center;display:block}
.spring-image-tile{position:absolute;left:16px;bottom:16px;max-width:calc(100% - 32px);background:#fff;border:1px solid #eaded0;border-radius:14px;padding:8px;box-shadow:0 8px 26px #1b2e3b19}
.spring-image-tile img{display:block;width:284px;max-width:100%;height:auto;border-radius:8px}
.spring-text-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}
.spring-text-grid>div{min-width:0}.spring-text-grid p{line-height:1.72}
.spring-text-grid a{color:var(--orange-dark)}
@media(max-width:760px){.spring-hero-visual{min-height:250px}.spring-house{min-height:250px;max-height:340px}.spring-image-tile img{width:210px}.spring-text-grid{grid-template-columns:1fr;gap:25px}}
@media(max-width:480px){.spring-image-tile img{width:174px}}


/* Dedicated opener preview follows the approved garage-door-repair page visual system. */
.spring-hero-visual{position:relative;min-width:0;min-height:310px;border-radius:18px;overflow:hidden;background:#eee3d7}
.spring-house{width:100%;height:100%;min-height:310px;object-fit:cover;object-position:center;display:block}
.spring-image-tile{position:absolute;left:16px;bottom:16px;max-width:calc(100% - 32px);background:#fff;border:1px solid #eaded0;border-radius:14px;padding:8px;box-shadow:0 8px 26px #1b2e3b19}
.spring-image-tile img{display:block;width:284px;max-width:100%;height:auto;border-radius:8px}
.spring-text-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}
.spring-text-grid>div{min-width:0}.spring-text-grid p{line-height:1.72}
.spring-text-grid a{color:var(--orange-dark)}
@media(max-width:760px){.spring-hero-visual{min-height:250px}.spring-house{min-height:250px;max-height:340px}.spring-image-tile img{width:210px}.spring-text-grid{grid-template-columns:1fr;gap:25px}}
@media(max-width:480px){.spring-image-tile img{width:174px}}


/* Dedicated cable repair preview follows the approved garage-door-repair page visual system. */
.spring-hero-visual{position:relative;min-width:0;min-height:310px;border-radius:18px;overflow:hidden;background:#eee3d7}
.spring-house{width:100%;height:100%;min-height:310px;object-fit:cover;object-position:center;display:block}
.spring-image-tile{position:absolute;left:16px;bottom:16px;max-width:calc(100% - 32px);background:#fff;border:1px solid #eaded0;border-radius:14px;padding:8px;box-shadow:0 8px 26px #1b2e3b19}
.spring-image-tile img{display:block;width:284px;max-width:100%;height:auto;border-radius:8px}
.spring-text-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}
.spring-text-grid>div{min-width:0}.spring-text-grid p{line-height:1.72}
.spring-text-grid a{color:var(--orange-dark)}
@media(max-width:760px){.spring-hero-visual{min-height:250px}.spring-house{min-height:250px;max-height:340px}.spring-image-tile img{width:210px}.spring-text-grid{grid-template-columns:1fr;gap:25px}}
@media(max-width:480px){.spring-image-tile img{width:174px}}


/* Dedicated New Garage Doors preview, sharing the established Swift visual system. */
.new-door-hero-visual{position:relative;min-width:0;min-height:325px;border-radius:18px;overflow:hidden;background:#eee3d7}
.new-door-hero-visual .spring-house{display:block;width:100%;height:100%;min-height:325px;object-fit:cover;object-position:center}
.new-door-style-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:24px}
.new-door-style-card{background:#fff;border:1px solid var(--line);border-radius:15px;overflow:hidden;min-width:0;box-shadow:0 5px 16px #1b2e3b08}
.new-door-style-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.new-door-style-card>div{padding:18px}.new-door-style-card h3{margin:0 0 6px}.new-door-style-card p{font-size:.92rem;line-height:1.55;margin:0}
.new-door-image-note{font-size:.83rem;color:#5c646b;margin-top:12px}.new-door-choices h3{line-height:1.28}
.spring-text-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}
.spring-text-grid>div{min-width:0}.spring-text-grid p{line-height:1.72}.spring-text-grid a{color:var(--orange-dark)}
@media(max-width:760px){.new-door-hero-visual{min-height:250px}.new-door-hero-visual .spring-house{min-height:250px;max-height:340px}.new-door-style-grid{grid-template-columns:1fr 1fr;gap:12px}.spring-text-grid{grid-template-columns:1fr;gap:24px}}
@media(max-width:520px){.new-door-style-grid{grid-template-columns:1fr}.new-door-style-card img{aspect-ratio:16/10}}


/* Commercial service page — same Swift visual system */
.commercial-hero{align-items:center}
.commercial-door-visual{position:relative;min-width:0;overflow:hidden;border-radius:18px;background:#e7ebe8;box-shadow:0 20px 48px rgba(27,46,59,.13)}
.commercial-door-visual svg{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.commercial-image-note{position:absolute;right:14px;bottom:14px;background:rgba(255,255,255,.92);padding:7px 11px;border-radius:8px;color:#475864;font-size:.69rem;font-weight:650}
.commercial-scope-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.commercial-scope-card{background:#fff;border:1px solid #eae3dc;border-radius:14px;padding:23px;min-width:0;box-shadow:0 9px 22px rgba(27,46,59,.035)}
.commercial-scope-card h3{font-size:1.09rem;margin:11px 0 8px;line-height:1.32}
.commercial-scope-card p{font-size:.91rem;line-height:1.65;margin:0;color:#52636e}
.commercial-scope-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#fff0e8;color:#db521f}
.commercial-scope-icon svg{width:21px;height:21px}
@media(max-width:850px){.commercial-scope-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.commercial-hero{gap:26px}.commercial-scope-grid{grid-template-columns:1fr}.commercial-image-note{font-size:.62rem;right:8px;bottom:8px}.commercial-scope-card{padding:19px}}

.commercial-featured-image{width:100%;height:100%;min-height:320px;object-fit:cover;display:block;border-radius:inherit}

/* v1.0.9: supporting pages (scoped to approved layouts) */

/* About page content additions use existing Swift design tokens and layout. */
.about-hero-photo,.about-detail-photo{position:relative;border-radius:18px;overflow:hidden;box-shadow:0 17px 35px rgba(27,46,59,.13);min-height:260px}
.about-hero-photo img,.about-detail-photo img{display:block;width:100%;height:100%;min-height:260px;object-fit:cover}
.about-hero-photo span,.about-detail-photo span{position:absolute;bottom:12px;left:12px;right:12px;border-radius:7px;background:rgba(27,46,59,.87);color:#fff;padding:8px 11px;font-size:.72rem;line-height:1.4}
.about-story img{border-radius:0;max-width:none}
.about-story .related-links{margin-top:23px}
.about-service-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:26px}
.about-service-links>a{background:#fff;border:1px solid #e9e2da;border-radius:15px;padding:23px;color:var(--navy);text-decoration:none;display:grid;gap:9px;transition:box-shadow .15s ease,transform .15s ease}
.about-service-links>a:hover,.about-service-links>a:focus-visible{box-shadow:0 8px 22px rgba(27,46,59,.13);transform:translateY(-2px)}
.about-service-links strong{font-size:1.09rem}
.about-service-links span{font-size:.88rem;color:#56616b;line-height:1.5}
.about-service-links svg{color:var(--orange);height:15px;width:15px;vertical-align:middle}
@media(max-width:760px){.about-service-links{grid-template-columns:1fr}.about-hero-photo,.about-detail-photo{min-height:220px}.about-hero-photo img,.about-detail-photo img{min-height:220px}}


/* Our Work page additions — preserve Swift's established colors, layout and header. */
.work-hero-photo{position:relative;overflow:hidden;border-radius:18px;box-shadow:0 16px 34px rgba(27,46,59,.13);height:360px}
.work-hero-photo img{display:block;width:100%;height:100%;object-fit:cover}
.work-hero-photo span{position:absolute;bottom:12px;left:12px;right:12px;background:rgba(27,46,59,.89);color:#fff;border-radius:7px;padding:9px 12px;font-size:.75rem}
.work-preview-disclosure{font-size:.82rem!important;color:#5f6972!important;margin-top:17px!important}
.work-services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:25px}
.work-services-grid>a{background:#fff;border:1px solid #e8e1d9;border-radius:15px;padding:25px;color:var(--navy);text-decoration:none;display:flex;flex-direction:column;gap:13px}
.work-services-grid>a:hover,.work-services-grid>a:focus-visible{box-shadow:0 10px 25px rgba(27,46,59,.11)}
.work-services-grid strong{font-size:1.08rem}
.work-services-grid>a>span:not(.work-service-icon):not(.inline-link){color:#5a6570;line-height:1.6;font-size:.88rem;flex:1}
.work-services-grid .inline-link{color:var(--orange);font-weight:700;font-size:.86rem}
.work-service-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:12px;color:var(--orange);background:#fff0e9}
.work-service-icon svg{width:24px;height:24px}
.work-project-callout{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:48px}
.work-project-callout p{line-height:1.7}
.work-project-callout-action{padding:26px;border:1px solid #eadfd5;background:#fcf8f4;border-radius:15px}
.work-project-callout-action p{margin:0 0 14px}
@media(max-width:920px){.work-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.work-project-callout{grid-template-columns:1fr;gap:20px}}
@media(max-width:760px){.work-hero-photo{height:245px}.work-services-grid{grid-template-columns:1fr}}


/* Contact page — Swift's established palette, typography, spacing and navigation preserved. */
.contact-option-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:26px}
.contact-option-card{display:flex;flex-direction:column;align-items:flex-start;gap:13px;min-width:0;padding:28px 25px;background:#fff;border:1px solid #e9e1da;border-radius:16px;box-shadow:0 8px 24px rgba(27,46,59,.045)}
.contact-option-card h3{margin:0;color:var(--navy);font-size:1.22rem;line-height:1.3}
.contact-option-card p{margin:0;color:#596672;line-height:1.62;font-size:.91rem}
.contact-option-icon{display:grid;place-items:center;width:45px;height:45px;background:#fff0e7;color:var(--orange);border-radius:13px}
.contact-option-icon svg{width:24px;height:24px}
.contact-number{color:var(--navy);font-size:clamp(1.19rem,2vw,1.6rem);font-weight:800;text-decoration:none;overflow-wrap:anywhere}
.contact-option-action{margin-top:auto}
.contact-option-card>.button{margin-top:auto}
.contact-option-card .inline-link{margin-top:auto;color:var(--orange);font-weight:700}
.contact-option-card .contact-small-note,.contact-small-note{font-size:.79rem;color:#65717c;line-height:1.6}
.contact-next-steps{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(22px,5vw,65px);align-items:center}
.contact-next-steps h2{color:var(--navy);font-size:clamp(1.8rem,3vw,2.5rem)}
.contact-next-steps p{color:#56626d;line-height:1.75}
.contact-next-panel{border:1px solid #e7ddd4;border-radius:15px;background:#fff;padding:29px}
.contact-next-panel h3{margin:0 0 17px;color:var(--navy)}
.contact-next-panel .checklist{margin:0;padding:0;list-style:none}
.contact-next-panel .checklist li{display:flex;align-items:flex-start;gap:10px;padding:8px 0;color:#3a4b56}
.contact-next-panel .checklist svg{width:17px;height:17px;flex:none;color:var(--orange)}
@media(max-width:900px){.contact-option-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-next-steps{grid-template-columns:1fr}}
@media(max-width:650px){.contact-option-grid{grid-template-columns:1fr}.contact-option-card{padding:23px 20px}}


/* Service-area directory: same Swift theme palette and existing six region cards. */
.swift-areas-directory .region-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.swift-areas-directory .region-card{padding:26px 23px}
.areas-coverage-note{font-size:.84rem;color:#60707a;line-height:1.65;margin:22px 0 0}
.areas-confirm-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(22px,5vw,66px);align-items:center}
.areas-confirm-layout h2{color:var(--navy);font-size:clamp(1.85rem,3.5vw,2.7rem);line-height:1.15}
.areas-confirm-layout p{color:#5b6974;line-height:1.75}
.areas-confirm-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.areas-confirm-card{padding:27px;background:white;border-radius:16px;border:1px solid #e8e0d7;box-shadow:0 10px 27px rgba(27,46,59,.04)}
.areas-confirm-card h3{margin:0 0 13px;color:var(--navy)}
.areas-confirm-card .checklist{list-style:none;margin:0;padding:0}
.areas-confirm-card .checklist li{display:flex;align-items:start;gap:9px;padding:8px 0;color:#425260}
.areas-confirm-card .checklist svg{flex:none;color:var(--orange);width:17px;height:17px}
@media(max-width:900px){.swift-areas-directory .region-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.areas-confirm-layout{grid-template-columns:1fr}}
@media(max-width:560px){.swift-areas-directory .region-grid{grid-template-columns:1fr}.swift-areas-directory .region-card{padding:20px}.areas-confirm-card{padding:22px}}


/* Readable privacy link in service-request forms. */
.form-privacy a{color:var(--orange-dark);text-decoration:underline;text-underline-offset:2px;font-weight:650}
.form-privacy a:hover{color:var(--navy)}

/* v1.0.16 — structured, optional, evidence-first city-page sections. */
.swift-city-local{background:#fffaf7;border-bottom:1px solid #f1e7e0}
.swift-city-local .eyebrow{margin-bottom:10px}
.swift-city-story,.swift-city-coverage,.swift-city-job,.swift-city-faq{max-width:1050px;margin-inline:auto}
.swift-city-story h2,.swift-city-coverage h2,.swift-city-job h2,.swift-city-faq h2{font-size:clamp(1.6rem,2.6vw,2.4rem)}
.swift-city-prose{max-width:850px;color:var(--navy);font-size:1rem;line-height:1.72}
.swift-city-prose p{margin:0 0 15px}.swift-city-prose p:last-child{margin-bottom:0}
.swift-city-prose ul,.swift-city-prose ol{padding-left:24px;color:#405162}
.swift-city-story+.swift-city-coverage,.swift-city-job,.swift-city-faq{margin-top:42px}
.swift-city-coverage{padding:26px 29px;background:#fff;border:1px solid #f0e3da;border-radius:16px}
.swift-city-coverage p{max-width:850px;line-height:1.7;margin:0}
.swift-city-job{display:grid;grid-template-columns:minmax(0,1fr);gap:27px;align-items:center;padding:29px;background:#fff;border:1px solid #f0e3da;border-radius:16px}
.swift-city-job--with-photo{grid-template-columns:minmax(0,1fr) minmax(0,.76fr)}
.swift-city-job h3{font-size:1rem;margin:20px 0 5px}.swift-city-job p{line-height:1.65;margin:0}
.swift-city-job-place{font-weight:700;font-size:.84rem;color:#596977}
.swift-city-job-photo{margin:0}.swift-city-job-photo img{width:100%;max-height:330px;object-fit:cover;border-radius:11px}
.swift-city-job-photo figcaption{font-size:.76rem;color:#677580;margin-top:9px}
.swift-city-faq{padding-top:6px}.swift-city-faq details{padding:17px 0;border-bottom:1px solid #e6ddd5}
.swift-city-faq summary{cursor:pointer;font-weight:750;color:var(--navy)}.swift-city-faq details p{margin:12px 0 0;line-height:1.65}
@media(max-width:750px){.swift-city-job,.swift-city-job--with-photo{grid-template-columns:1fr;padding:20px}.swift-city-coverage{padding:21px}.swift-city-story+.swift-city-coverage,.swift-city-job,.swift-city-faq{margin-top:29px}}

/* v1.0.17: Verified, individually managed projects on city pages. */
.swift-city-projects{max-width:1050px;margin:44px auto 0}
.swift-city-projects>h2{font-size:clamp(1.6rem,2.6vw,2.4rem);margin:0 0 25px}
.swift-city-project{background:#fff;border:1px solid #f0e3da;border-radius:18px;padding:28px;margin-top:23px;box-shadow:0 10px 30px rgba(27,46,59,.035)}
.swift-city-project-copy h3{font-size:clamp(1.25rem,2.1vw,1.65rem);margin:0 0 10px}
.swift-city-project-copy h4{font-size:.98rem;margin:19px 0 5px;color:var(--navy)}
.swift-city-project-copy p{line-height:1.65;margin:0;max-width:810px}
.swift-city-project-copy .swift-city-job-place{margin:4px 0;color:#596977;font-size:.87rem}
.swift-city-project-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:24px}
.swift-city-project-gallery figure{margin:0;min-width:0}
.swift-city-project-gallery img{display:block;width:100%;height:220px;object-fit:contain;background:#f7f5f1;border:1px solid #eee5dc;border-radius:12px}
.swift-city-project-gallery figcaption{margin:7px 2px 0;color:#596977;font-size:.82rem;line-height:1.4}
.swift-city-project-testimonial{margin:25px 0 0;padding:21px 24px;background:#fff9f4;border-left:3px solid var(--orange);border-radius:0 12px 12px 0}
.swift-city-project-testimonial blockquote{margin:10px 0 8px;padding:0;border:0}
.swift-city-project-testimonial blockquote p{font-size:1rem;line-height:1.75;margin:0}
.swift-city-project-testimonial figcaption{font-size:.87rem;font-weight:700;color:#415362}
@media(max-width:750px){.swift-city-projects{margin-top:29px}.swift-city-project{padding:20px}.swift-city-project-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.swift-city-project-gallery img{height:165px}}
@media(max-width:440px){.swift-city-project-gallery{grid-template-columns:1fr}.swift-city-project-gallery img{height:220px}}
/* v1.0.19 city editor formatting */
.swift-city-coverage-copy{max-width:850px;line-height:1.7}
.swift-city-coverage-copy p{margin:0 0 14px}
.swift-city-coverage-copy p:last-child{margin-bottom:0}
.swift-city-coverage-copy ul{margin:12px 0 0;padding-left:24px;color:#405162}
.swift-city-coverage-copy li{margin:7px 0}

/* v1.0.20 — Service City polish: balanced hero, linked checklist, trust cards, FAQ cards and local CTA. */
.swift-city-hero{padding:48px 0 52px;background:linear-gradient(115deg,#fffaf7 0%,#fff 58%,#fff7f2 100%)}
.swift-city-hero-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(330px,.88fr);gap:clamp(36px,6vw,76px);align-items:center}
.swift-city-hero-copy{min-width:0}
.swift-city-hero-copy .breadcrumb{margin-bottom:19px}
.swift-city-hero-copy>.eyebrow{margin-bottom:10px}
.swift-city-hero-copy h1{max-width:760px;margin-bottom:18px;font-size:clamp(2.5rem,4.1vw,4.05rem)}
.swift-city-hero-copy>p{max-width:760px;font-size:1.06rem;line-height:1.62;color:#526476}
.swift-city-hero-proof{min-width:0;background:rgba(255,255,255,.94);border:1px solid #f0ded2;border-radius:20px;padding:16px;box-shadow:0 18px 46px rgba(27,46,59,.08)}
.swift-city-hero-photo{margin:0;position:relative;border-radius:14px;overflow:hidden;background:#f4f0ed}
.swift-city-hero-photo>img{width:100%;height:255px;object-fit:cover}
.swift-city-hero-photo figcaption{display:grid;grid-template-columns:1fr auto;column-gap:12px;row-gap:3px;align-items:center;padding:15px 16px;background:#fff}
.swift-city-hero-photo figcaption .eyebrow{grid-column:1 / -1;margin:0;font-size:.66rem}
.swift-city-hero-photo figcaption strong{font-size:.95rem;color:var(--navy)}
.swift-city-hero-photo figcaption a{display:inline-flex;align-items:center;gap:7px;color:var(--orange-dark);font-weight:800;font-size:.78rem;white-space:nowrap}
.swift-city-hero-photo figcaption a svg{width:16px;height:16px}
.swift-city-proof-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px}
.swift-city-proof-list>div{display:flex;align-items:center;gap:9px;min-height:58px;padding:10px 11px;border-radius:11px;background:#fff8f4;border:1px solid #f5e4d9;color:#344958;font-size:.79rem;font-weight:750;line-height:1.3}
.swift-city-proof-list svg{width:20px;height:20px;color:var(--orange);flex:none}
.swift-city-local{padding-top:64px;padding-bottom:68px;background:#fffaf7}
.swift-city-story,.swift-city-coverage,.swift-city-job,.swift-city-faq,.swift-city-reasons,.swift-city-local-cta{max-width:1120px;margin-inline:auto}
.swift-city-story+.swift-city-coverage,.swift-city-job,.swift-city-projects,.swift-city-reasons,.swift-city-faq,.swift-city-local-cta{margin-top:44px}
.swift-city-coverage{padding:31px 34px;border-radius:19px;box-shadow:0 8px 28px rgba(27,46,59,.025)}
.swift-city-coverage-copy{max-width:none}
.swift-city-coverage-copy>p{max-width:900px}
.swift-city-service-checklist{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 26px!important;list-style:none!important;margin:20px 0 0!important;padding:0!important}
.swift-city-service-checklist li{position:relative;margin:0!important;padding:8px 8px 8px 32px;color:#405162;line-height:1.4}
.swift-city-service-checklist li::before{content:'✓';position:absolute;left:0;top:7px;display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#fff0e8;color:var(--orange-dark);font-size:.72rem;font-weight:900}
.swift-city-service-checklist a{font-weight:700;color:#314858;text-decoration:none;text-underline-offset:3px}
.swift-city-service-checklist a:hover{text-decoration:underline;color:var(--orange-dark)}
.swift-city-projects{max-width:1120px}
.swift-city-project{padding:31px;border-radius:19px;box-shadow:0 12px 32px rgba(27,46,59,.045)}
.swift-city-project-gallery img{background:#fbf9f6}
.swift-city-project-testimonial{padding:23px 27px;background:#fff7f2;border-left-width:4px}
.swift-city-reasons{padding-top:3px}
.swift-city-reasons>h2{max-width:720px;font-size:clamp(1.65rem,2.7vw,2.45rem);margin-bottom:21px}
.swift-city-reasons-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}
.swift-city-reasons-grid article{padding:22px 21px;background:#fff;border:1px solid #efe3db;border-radius:15px;box-shadow:0 8px 23px rgba(27,46,59,.025)}
.swift-city-reason-icon{display:grid;place-items:center;width:39px;height:39px;border-radius:11px;background:#fff1e9;color:var(--orange-dark);margin-bottom:14px}
.swift-city-reason-icon svg{width:21px;height:21px}
.swift-city-reasons-grid h3{margin:0 0 7px;font-size:1rem}
.swift-city-reasons-grid p{margin:0;font-size:.88rem;line-height:1.58}
.swift-city-faq{padding-top:4px}
.swift-city-faq>h2{margin-bottom:20px}
.swift-city-faq details{background:#fff;border:1px solid #e9e0d9;border-radius:12px;margin:10px 0;padding:0 19px;box-shadow:0 4px 16px rgba(27,46,59,.018)}
.swift-city-faq summary{position:relative;list-style:none;padding:17px 35px 17px 0;font-weight:780;line-height:1.35}
.swift-city-faq summary::-webkit-details-marker{display:none}
.swift-city-faq summary::after{content:'+';position:absolute;right:2px;top:10px;font-size:1.55rem;line-height:1;color:var(--orange);font-weight:450}
.swift-city-faq details[open] summary::after{content:'−'}
.swift-city-faq details p{margin:0;padding:0 26px 18px 0;line-height:1.68;color:#526476}
.swift-city-faq summary:focus-visible{outline:none;box-shadow:inset 0 0 0 2px rgba(244,81,33,.35);border-radius:7px}
.swift-city-local-cta{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:29px 31px;border:1px solid #f0d7c8;border-radius:18px;background:linear-gradient(110deg,#fff 0%,#fff6f0 100%)}
.swift-city-local-cta h2{font-size:clamp(1.5rem,2.4vw,2.1rem);margin:4px 0 7px}
.swift-city-local-cta p{margin:0;max-width:650px;line-height:1.6}
.swift-city-local-cta-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;flex:none}
@media(max-width:900px){
  .swift-city-hero-grid{grid-template-columns:1fr;gap:30px}
  .swift-city-hero-proof{max-width:700px}
  .swift-city-hero-photo>img{height:320px}
  .swift-city-local-cta{align-items:flex-start;flex-direction:column}
  .swift-city-local-cta-actions{justify-content:flex-start}
}
@media(max-width:650px){
  .swift-city-hero{padding:37px 0 41px}
  .swift-city-hero-copy h1{font-size:2.5rem}
  .swift-city-hero-proof{padding:12px;border-radius:16px}
  .swift-city-hero-photo>img{height:235px}
  .swift-city-proof-list{grid-template-columns:1fr}
  .swift-city-local{padding-top:47px;padding-bottom:50px}
  .swift-city-coverage{padding:23px 21px}
  .swift-city-service-checklist{grid-template-columns:1fr!important;gap:5px!important}
  .swift-city-project{padding:21px}
  .swift-city-reasons-grid{grid-template-columns:1fr}
  .swift-city-local-cta{padding:23px 21px}
  .swift-city-local-cta-actions{width:100%}
  .swift-city-local-cta-actions .button{width:100%}
}
.swift-city-proof-heading{padding:8px 8px 10px}
.swift-city-proof-heading .eyebrow{margin-bottom:8px}
.swift-city-proof-heading h2{font-size:clamp(1.35rem,2.1vw,1.85rem);margin:0 0 8px}
.swift-city-proof-heading p{font-size:.88rem;line-height:1.55;margin:0;max-width:430px}

/* v1.0.21 — completed-job metadata + relationship linking */
.swift-city-project-copy>h3{margin-bottom:14px}
.swift-job-meta{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px}
.swift-job-meta-chip{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid #eadfd7;border-radius:999px;background:#fffaf7;color:#526476;font-size:.79rem;font-weight:700;line-height:1.2;text-decoration:none}
.swift-job-meta-chip svg{width:15px;height:15px;flex:none;color:var(--orange-dark)}
a.swift-job-meta-chip:hover{border-color:#efb89f;color:var(--orange-dark);background:#fff5ef}
.swift-job-story{display:grid;gap:21px}
.swift-job-story>div{max-width:930px}
.swift-city-project-copy .swift-job-story h4{margin:0 0 7px;font-size:1rem}
.swift-city-project-copy .swift-job-story p{margin:0;line-height:1.68}
.swift-service-local-proof{background:#fffaf7;border-top:1px solid #f1e7df;border-bottom:1px solid #f1e7df}
.swift-service-city-links,.swift-service-proof{max-width:1120px;margin-inline:auto}
.swift-service-city-links>h2,.swift-service-proof>h2{font-size:clamp(1.6rem,2.6vw,2.35rem);margin:5px 0 10px}
.swift-service-city-links>p,.swift-service-proof>p{max-width:780px;margin:0 0 21px;line-height:1.65;color:#526476}
.swift-service-city-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}
.swift-service-city-grid a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;border:1px solid #eadfd7;border-radius:12px;background:#fff;color:var(--navy);font-weight:750;text-decoration:none}
.swift-service-city-grid a:hover{border-color:#efb89f;color:var(--orange-dark)}
.swift-service-city-grid svg{width:17px;height:17px;flex:none}
.swift-service-proof{margin-top:38px;padding-top:35px;border-top:1px solid #eadfd7}
.swift-service-proof-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.swift-service-proof-card{display:grid;gap:8px;padding:20px;border:1px solid #eadfd7;border-radius:15px;background:#fff;text-decoration:none;box-shadow:0 7px 22px rgba(27,46,59,.025)}
.swift-service-proof-card strong{color:var(--navy);font-size:1rem;line-height:1.35}
.swift-service-proof-card>span:last-child{display:flex;align-items:center;gap:7px;color:var(--orange-dark);font-size:.82rem;font-weight:800}
.swift-service-proof-card>span:last-child svg{width:16px;height:16px}
.swift-service-proof-card:hover{transform:translateY(-1px);border-color:#efb89f}
@media(max-width:750px){.swift-job-meta{gap:6px;margin-bottom:20px}.swift-job-meta-chip{font-size:.74rem;padding:7px 9px}.swift-service-city-grid,.swift-service-proof-grid{grid-template-columns:1fr}}
/* v1.0.22 service-page proof order: real jobs -> local coverage -> FAQs -> related services. */
.swift-service-proof-section .swift-service-proof{margin-top:0;padding-top:0;border-top:0}
.swift-service-city-links-section{background:#fffaf7;border-top:1px solid #f1e7df;border-bottom:1px solid #f1e7df}
.swift-service-city-links-section .swift-service-city-links{padding-top:4px;padding-bottom:4px}


/* v1.0.27 — verified business identity + real project library */
.footer-contact{display:flex;flex-direction:column;align-items:flex-end;gap:3px;text-align:right}
.footer-address{font-style:normal;font-size:.78rem;color:#c8d2d9;line-height:1.35}
.footer-hours{font-size:.7rem;color:#9faeb8}
.contact-business-address{font-style:normal;margin:16px 0 0;padding-top:15px;border-top:1px solid var(--line);font-size:.88rem;line-height:1.55;color:var(--muted)}
.contact-business-address strong{color:var(--navy)}
.swift-work-project-library{width:100%}
.swift-work-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.swift-work-project-card{display:grid;grid-template-columns:180px 1fr;gap:20px;background:#fff;border:1px solid var(--line);border-radius:15px;overflow:hidden;box-shadow:0 10px 30px rgba(17,35,48,.06)}
.swift-work-project-photo{display:block;min-height:100%}
.swift-work-project-photo img{width:100%;height:100%;min-height:210px;object-fit:cover;display:block}
.swift-work-project-copy{padding:22px 22px 22px 0}
.swift-work-project-copy h3{font-size:1.2rem;margin:6px 0 10px}
.swift-work-project-copy p{font-size:.88rem;line-height:1.6;margin:12px 0}
@media(max-width:760px){.footer-contact{align-items:flex-start;text-align:left;width:100%}.swift-work-project-grid{grid-template-columns:1fr}.swift-work-project-card{grid-template-columns:1fr}.swift-work-project-photo img{height:230px;min-height:0}.swift-work-project-copy{padding:0 20px 22px}}

/* v1.0.33 — About page trust/evidence upgrade. */
.about-page-hero .about-hero-photo{min-height:360px}
.about-page-hero .about-hero-photo img{min-height:360px;object-position:center 45%}
.about-trust-section{background:#fff;border-bottom:1px solid var(--line)}
.about-trust-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.about-trust-grid article{background:#fff7f2;border:1px solid #f0dfd5;border-radius:15px;padding:22px;min-height:175px}
.about-trust-grid strong{display:block;font-size:1.08rem;margin:7px 0;color:var(--navy)}
.about-trust-grid p{font-size:.86rem;line-height:1.55;margin:0}
.about-base-note{margin-top:22px;padding:16px 18px;border-left:3px solid var(--orange);background:#fff7f2;border-radius:0 10px 10px 0;display:grid;gap:4px}
.about-base-note strong{font-size:.91rem}
.about-real-work .swift-work-project-library>.eyebrow{margin-bottom:6px}
.about-work-link{display:flex;justify-content:center;margin-top:26px}
.about-local-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:45px;align-items:center}
.about-local-layout>div>p{max-width:720px;line-height:1.7}
.about-business-card{background:#fff;border:1px solid #eadfd8;border-radius:16px;padding:27px;box-shadow:var(--shadow)}
.about-business-card h3{font-size:1.45rem;margin:7px 0 18px}
.about-business-card p{font-size:.91rem;line-height:1.6;margin:0 0 15px}
.about-business-card a:not(.button){font-weight:800;color:var(--navy)}
.about-business-card .button{width:100%;margin-top:4px}
@media(max-width:980px){.about-trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-local-layout{grid-template-columns:1fr}}
@media(max-width:530px){.about-trust-grid{grid-template-columns:1fr}.about-trust-grid article{min-height:0}.about-page-hero .about-hero-photo,.about-page-hero .about-hero-photo img{min-height:240px}}
