/* 2026 Safwaalkuwait refinement — shared essentials, individual visual systems retained */
:root{--easing:cubic-bezier(.22,1,.36,1)}
img{image-rendering:auto}
header .brand img,footer .brand img{object-fit:contain;filter:drop-shadow(0 2px 2px #00000014)}
header nav{align-items:center}
header nav>a{white-space:nowrap}
header .services-menu{flex-shrink:0}
header nav a:focus-visible,header nav button:focus-visible{outline-offset:4px}

/* Truly full-bleed photographic first impressions, with HTML copy above a safe overlay. */
.hero.hero-one,.hero.hero-two{display:flex;position:relative;align-items:center;isolation:isolate;overflow:hidden;min-height:690px;width:100%;padding:0;background:#10273b}
.hero.hero-one .hero-photo,.hero.hero-two .hero-photo{position:absolute;inset:0;width:100%;height:100%;min-height:0;border-radius:0;overflow:hidden}
.hero.hero-one .hero-photo img,.hero.hero-two .hero-photo img,.hero.hero-three .hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center;animation:hero-drift 19s ease-in-out infinite alternate;transform-origin:center}
.hero.hero-one:before,.hero.hero-two:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(6,31,57,.92) 0%,rgba(8,39,66,.84) 32%,rgba(8,39,66,.35) 67%,rgba(8,39,66,.10) 100%);pointer-events:none}
.hero.hero-one .hero-copy,.hero.hero-two .hero-copy{z-index:2;position:relative;max-width:720px;width:min(70%,720px);padding:80px 6%;margin:0;flex-shrink:0;color:white}
.hero.hero-one .hero-copy h1,.hero.hero-two .hero-copy h1{color:#fff;max-width:12ch;text-wrap:balance;line-height:1.05}
.hero.hero-one .hero-copy p,.hero.hero-two .hero-copy p{color:#eef5fb;text-shadow:0 1px 4px #0016}
.hero.hero-one .hero-copy .eyebrow,.hero.hero-two .hero-copy .eyebrow{color:#d4eefa}
.hero.hero-one .hero-copy .textlink,.hero.hero-two .hero-copy .textlink{color:#fff}
.hero.hero-one .hero-photo .image-note,.hero.hero-two .hero-photo .round-note{z-index:2;position:absolute}
.hero.hero-one .hero-photo .image-note{left:auto;right:3%;bottom:24px;max-width:300px;padding:15px 20px;display:block;border-radius:8px;box-shadow:0 12px 40px #0002}
.hero.hero-one .hero-note{position:relative;z-index:3;color:#e8f3fc}
.v2 .hero.hero-two{background:#193d32;min-height:690px}
.v2 .hero.hero-two:before{background:linear-gradient(90deg,rgba(13,45,34,.93),rgba(16,51,38,.78) 38%,rgba(16,51,38,.17) 83%)}
.v2 .hero.hero-two .hero-copy h1,.v2 .hero.hero-two .hero-copy p{color:#fff9ea}
.v2 .hero.hero-two .hero-copy .eyebrow{color:#f1dbac}
.v2 .hero.hero-two .hero-copy .button{background:#ead0a0;border-color:#ead0a0;color:#173a2d}
.v2 .hero.hero-two .hero-copy{padding:85px 6%}
.v2 .round-note{right:5%;bottom:35px}
.hero.hero-three .hero-photo img{animation:hero-drift 22s ease-in-out infinite alternate}
@keyframes hero-drift{from{transform:scale(1.005) translate3d(0,0,0)}to{transform:scale(1.065) translate3d(-.65%,0,0)}}

/* Full width on inner pages; mobile stacks the complete photograph to protect framing. */
.inner-hero,.v2 .inner-hero,.v3 .inner-hero{display:flex;align-items:center;position:relative;isolation:isolate;overflow:hidden;min-height:550px;width:100%;background:#17334c}
.inner-hero .inner-photo,.v2 .inner-hero .inner-photo{position:absolute;inset:0;width:100%;height:100%;margin:0;border-radius:0;overflow:hidden}
.inner-hero .inner-photo img{width:100%;height:100%;object-fit:cover;object-position:center 50%;animation:hero-drift 20s ease-in-out infinite alternate}
.inner-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,36,65,.96) 0%,rgba(10,36,65,.78) 44%,rgba(10,36,65,.22) 100%);z-index:1;pointer-events:none}
.inner-hero .inner-copy{position:relative;z-index:2;width:min(68%,760px);max-width:none;padding:74px 6%;margin:0;color:#fff}
.inner-hero .inner-copy h1,.inner-hero .inner-copy p{color:#fff}
.inner-hero .inner-copy p{max-width:48ch;color:#edf5fa;text-shadow:0 1px 3px #0017}
.inner-hero .breadcrumb,.inner-hero .eyebrow{color:#bce9f6}
.v2 .inner-hero{background:#1c4030}
.v2 .inner-hero:before{background:linear-gradient(90deg,rgba(19,59,42,.96),rgba(24,65,47,.74) 45%,rgba(24,65,47,.14))}
.v2 .inner-hero .breadcrumb,.v2 .inner-hero .eyebrow{color:#f3dab0}
.v2 .inner-hero .button{background:#f0d3a1;border-color:#f0d3a1;color:#193a2d}
.v3 .inner-hero:before{background:linear-gradient(90deg,rgba(8,20,34,.97),rgba(8,20,34,.82) 48%,rgba(8,20,34,.25))}

/* Moving information strip: actual HTML text, seamless and self-running. */
.motion-strip{width:100%;overflow:hidden;background:#123a6b;color:#f7fbff;border-top:1px solid #ffffff27;border-bottom:1px solid #ffffff2b}
.motion-strip-track{display:flex;gap:0;width:max-content;animation:strip-flow 32s linear infinite}
.motion-strip-group{display:flex;align-items:center;white-space:nowrap;gap:32px;padding:15px 16px;flex:none}
.motion-strip-group span{font-weight:700;font-size:11px;letter-spacing:.17em;text-transform:uppercase}
.motion-strip-group i{width:5px;height:5px;background:#8dd6ff;border-radius:50%}
.v2 .motion-strip{background:#255440;color:#fffbef}
.v2 .motion-strip-group i{background:#e7b86c}
.v3 .motion-strip{background:#173d57;color:#e8f6ff}
@keyframes strip-flow{to{transform:translateX(-50%)}}

/* Original photographic gallery, touch-friendly slider and light motion. */
.revision-gallery{padding:80px 5.5%;background:var(--soft);overflow:hidden}
.revision-gallery .revision-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:30px}
.revision-gallery .revision-heading h2{max-width:15ch;margin:0}
.revision-gallery .revision-heading p{margin:0;max-width:35ch}
.gallery-controls{display:none;gap:9px}
.gallery-controls button{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:50%;transition:background .2s,transform .2s}
.gallery-controls button:hover{background:var(--accent);color:white;transform:translateY(-2px)}
.revision-gallery .gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.gallery-panel{min-width:0;position:relative;background:var(--bg);border:1px solid var(--line);overflow:hidden;transition:transform .45s var(--easing),box-shadow .45s}
.gallery-panel:hover{transform:translateY(-6px);box-shadow:0 18px 50px #0002}
.gallery-panel img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;object-position:center}
.gallery-panel div{padding:20px 22px 22px}
.gallery-panel h3{font-size:clamp(19px,2vw,25px);margin:0 0 9px}
.gallery-panel p{font-size:13px;line-height:1.5;margin:0}
.v2 .revision-gallery{background:#eee6d8}
.v2 .gallery-panel{border-radius:150px 150px 8px 8px}
.v2 .gallery-panel img{border-radius:150px 150px 0 0;aspect-ratio:4/3}
.v2 .gallery-panel h3{font-family:Georgia,serif;font-weight:400}
.v3 .revision-gallery{background:#122330}
.v3 .gallery-panel{background:#182b39;border-color:#3f5765;border-radius:2px}
.v3 .gallery-panel h3,.v3 .gallery-panel p{color:#eff6f9}

/* Contextual help links, clean information pages, and restrained cards. */
.help-links{padding:28px 5.5%;display:flex;justify-content:space-between;gap:20px;align-items:center;background:var(--bg);border-top:1px solid var(--line)}
.help-links p{margin:0;color:var(--ink);font-size:15px;font-weight:600}
.help-links .help-actions{display:flex;gap:12px;flex-wrap:wrap}
.help-links a{display:inline-flex;align-items:center;min-height:44px;padding:10px 16px;border:1px solid var(--line);font-size:12px;font-weight:700;letter-spacing:.02em;transition:background .2s,transform .2s}
.help-links a:hover{background:var(--accent);color:#fff;transform:translateY(-2px)}
.v2 .help-links a{border-radius:30px}
.info-intro,.guide-grid-section,.standalone-faq{padding:78px 5.5%;background:var(--bg)}
.info-intro{display:grid;grid-template-columns:1fr 1.05fr;align-items:center;gap:7%;background:var(--soft)}
.info-intro h2{max-width:13ch}.info-intro p{font-size:16px;line-height:1.75}
.info-intro img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:4px}
.guide-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:35px}
.guide-card{padding:30px 23px;background:var(--soft);border:1px solid var(--line);min-width:0}
.guide-card .small-rule{display:block;width:34px;height:3px;background:var(--accent);margin-bottom:22px}
.guide-card h3{font-size:24px}.guide-card p{font-size:14px;margin:0}
.guide-card a{display:inline-block;margin-top:18px;text-decoration:underline;text-underline-offset:5px;font-weight:700;font-size:12px}
.standalone-faq{background:var(--soft)}
.standalone-faq .faq-columns{display:grid;grid-template-columns:1fr 1fr;gap:45px}
.standalone-faq details{background:var(--bg);border:1px solid var(--line);margin:0 0 14px;padding:20px 22px}
.standalone-faq summary{font-size:16px;font-weight:700;cursor:pointer}
.standalone-faq details p{margin:13px 0 0;font-size:14px;line-height:1.7}
.v2 .guide-card,.v2 .standalone-faq details{border-radius:24px}
.v3 .guide-card{background:#1b2a37}
.revision-gallery .gallery-grid:focus-within .gallery-panel{outline-offset:2px}

/* Non-clickable social platform identities; no fabricated outbound destinations. */
.social-showcase{display:flex;align-items:center;gap:12px;margin-top:18px}
.social-showcase span{display:grid;place-items:center;width:34px;height:34px;border:1px solid currentColor;border-radius:50%;opacity:.85;cursor:default}
.social-showcase svg{width:17px;height:17px;color:inherit}
.v2 .social-showcase span{border-color:#758477}
.v3 .social-showcase span{border-color:#9bb1bd}

/* V1/V3: show the actual transparent 3D identities, without a pasted-on card.
   Light, cool footer finishes provide contrast for the logos' navy lettering. */
.v1 footer{background:linear-gradient(135deg,#f1f7fc 0%,#e8f1fa 100%);color:#142d4b}
.v3 footer{background:linear-gradient(145deg,#f7fbfd 0%,#e3eff7 100%);color:#102d43}
.v1 footer .footer-top .brand,.v3 footer .footer-top .brand{
  background:transparent;
  padding:0;
  border:0;
  border-radius:0;
  box-shadow:none;
  margin-bottom:20px;
}
.v1 footer .footer-top .brand img,.v3 footer .footer-top .brand img{
  background:transparent;
  border:0;
  box-shadow:none;
  filter:drop-shadow(0 3px 4px #102b4919);
}
.v1 footer .footer-top p,.v1 footer .footer-bottom{color:#405875}
.v3 footer .footer-top p,.v3 footer .footer-bottom{color:#40596d}
.v1 footer .footer-bottom{border-top-color:#bfd0e1}
.v3 footer .footer-bottom{border-top-color:#bfd3e0}
.v1 footer .footer-top h3,.v1 footer .footer-top a:not(.button):not(.brand),.v1 footer .footer-bottom a{color:#153a62}
.v3 footer .footer-top h3,.v3 footer .footer-top a:not(.button):not(.brand),.v3 footer .footer-bottom a{color:#153951}
.v1 footer .social-showcase span{border-color:#90acc6}
.v3 footer .social-showcase span{border-color:#93b4c8}

/* Photo-backed CTAs, kept subtle under high-contrast copy. */
.cta{position:relative;isolation:isolate;overflow:hidden}
.cta:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(6,37,76,.91),rgba(6,37,76,.74)),url('inspection-ac-960.webp') center/cover no-repeat}
.v1 .cta{color:white;background:#10355d}
.v1 .cta p,.v1 .cta .eyebrow{color:#eaf4ff}
.v2 .cta:before{background:linear-gradient(90deg,rgba(233,214,182,.95),rgba(231,212,175,.84)),url('laundry-room-960.webp') center/cover no-repeat}
.v3 .cta:before{background:linear-gradient(90deg,rgba(155,219,250,.96),rgba(155,219,250,.81)),url('fridge-inspection-960.webp') center/cover no-repeat}

/* Scroll reveals only on new units, and always visible without JS. */
.js-enhanced .view-reveal{opacity:0;transform:translateY(24px);transition:opacity .7s var(--easing),transform .7s var(--easing)}
.js-enhanced .view-reveal.is-visible{opacity:1;transform:none}

@media(max-width:1200px){
  header{gap:15px;padding-left:3%;padding-right:3%}
  header nav{gap:13px;font-size:12px}
  header .brand img{width:205px}
  .hero.hero-one .hero-copy,.hero.hero-two .hero-copy{width:min(75%,650px)}
}
@media(max-width:850px){
  header .brand img{width:195px}
  header .hamburger{margin-left:0;order:2}
  header .header-cta{margin-left:auto;order:3}
  header .brand{order:1}
  .hero.hero-one,.hero.hero-two{min-height:600px}
  .hero.hero-one .hero-copy,.hero.hero-two .hero-copy{width:77%;padding:65px 6%}
  .inner-hero .inner-copy{width:75%;padding:64px 6%}
  .revision-gallery{padding:58px 5%}
  .revision-gallery .gallery-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding-bottom:8px;overscroll-behavior-x:contain}
  .gallery-controls{display:flex}
  .revision-gallery .gallery-panel{flex:0 0 64%;scroll-snap-align:start}
  .guide-card-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  header .brand img{width:154px}
  .hero.hero-one,.hero.hero-two{display:flex;flex-direction:column;min-height:0;background:var(--soft)}
  .hero.hero-one:before,.hero.hero-two:before{display:none}
  .hero.hero-one .hero-copy,.hero.hero-two .hero-copy{width:100%;max-width:none;padding:42px 6% 35px;background:#113b64;color:white}
  .v2 .hero.hero-two .hero-copy{padding:44px 6% 36px;background:#183f30}
  .hero.hero-one .hero-copy h1,.hero.hero-two .hero-copy h1{font-size:clamp(41px,12vw,58px);max-width:100%}
  .hero.hero-one .hero-photo,.hero.hero-two .hero-photo{position:relative;inset:auto;width:100%;height:290px;min-height:0;border-radius:0}
  .hero.hero-one .hero-photo img,.hero.hero-two .hero-photo img{height:100%;width:100%;object-fit:contain;background:#d8dfdf;animation:none}
  .hero.hero-one .hero-photo .image-note,.hero.hero-two .hero-photo .round-note{display:none}
  .v3 .hero.hero-three .hero-photo img{animation:none;object-position:center}
  .hero.hero-three{display:flex;flex-direction:column;height:auto;min-height:0;overflow:hidden;background:#101e2b}
  .hero.hero-three:after{display:none}
  .hero.hero-three .hero-copy{order:1;position:relative;width:100%;height:auto;display:block;padding:44px 6% 34px;background:#101e2b}
  .hero.hero-three .hero-copy h1{font-size:clamp(39px,10.5vw,48px)}
  .hero.hero-three .hero-bottom{display:block;margin-top:28px}
  .hero.hero-three .hero-bottom p{max-width:100%;margin-bottom:19px}
  .hero.hero-three .hero-photo{order:2;position:relative;inset:auto;height:290px;width:100%;overflow:hidden}
  .hero.hero-three .hero-photo img{height:100%;width:100%;object-fit:contain;object-position:center;background:#1b2934}
  .inner-hero,.v2 .inner-hero,.v3 .inner-hero{display:flex;flex-direction:column;min-height:0;background:var(--soft)}
  .inner-hero:before{display:none}
  .inner-hero .inner-copy{width:100%;max-width:none;padding:44px 6%;background:#123657;color:white}
  .v2 .inner-hero .inner-copy{background:#183e2e}
  .v3 .inner-hero .inner-copy{background:#101f2b}
  .inner-hero .inner-copy h1{font-size:clamp(34px,10vw,43px)}
  .inner-hero .inner-photo,.v2 .inner-hero .inner-photo{position:relative;inset:auto;width:100%;height:275px;min-height:0;margin:0;border-radius:0}
  .inner-hero .inner-photo img{width:100%;height:100%;object-fit:contain;background:#d7dfdf;animation:none}
  .motion-strip-group{gap:20px;padding:13px 12px}
  .motion-strip-group span{font-size:10px}
  .revision-gallery .revision-heading{display:block}
  .revision-gallery .revision-heading p{margin-top:14px}
  .gallery-controls{justify-content:flex-end;margin-top:13px}
  .revision-gallery .gallery-panel{flex-basis:82%}
  .revision-gallery .gallery-grid{gap:12px}
  .revision-gallery .gallery-panel img{aspect-ratio:3/2}
  .help-links{display:block;padding:28px 6%}
  .help-links .help-actions{margin-top:16px}
  .info-intro,.standalone-faq{display:block;padding:52px 6%}
  .info-intro img{margin-top:26px}
  .guide-grid-section{padding:54px 6%}
  .guide-card-grid{grid-template-columns:1fr;gap:13px}
  .standalone-faq .faq-columns{grid-template-columns:1fr;gap:0}
}
@media(max-width:390px){
  header .brand img{width:142px}
  header .header-cta{padding:9px 7px}
  .hero.hero-one .hero-photo,.hero.hero-two .hero-photo{height:250px}
  .revision-gallery .gallery-panel{flex-basis:90%}
}
@media(prefers-reduced-motion:reduce){
  .motion-strip-track,.hero .hero-photo img,.inner-photo img{animation:none!important;transform:none!important}
  .js-enhanced .view-reveal{opacity:1;transform:none;transition:none}
  .gallery-panel,.gallery-controls button{transition:none}
}
