/* Safe Zone — architectural refinement. Loaded after the original styles. */
:root{--detail-ease:cubic-bezier(.22,.68,.2,1)}
::selection{background:var(--peach);color:var(--ink)}
body{font-variant-ligatures:common-ligatures}
.h1,.h2{font-weight:400;letter-spacing:-.035em}
.lead{font-weight:400;line-height:1.62}
.eyebrow,.mono-h{letter-spacing:.065em}
.intro__main .h1{max-width:23ch}
.intro__body{margin-block:30px 24px;max-width:50ch}
.homes__text .h1{max-width:18ch}
.business__rail .h2{max-width:17ch}
.now__main .h1{max-width:24ch}
.now__body{margin-top:30px}
.pat--l{opacity:.55}
.btn{border-radius:2px;transition:background-color .2s,color .2s,border-color .2s,transform .25s var(--detail-ease)}
.btn:active{transform:translateY(1px)}
.hdr__toggle{border-color:var(--rule-2,currentColor);border-radius:2px}
.hdr__logo .logo{height:27px}
.hdr__link{font-weight:500}
.hdr.is-solid .hdr__bar{height:68px}
.mnav__services a{min-height:48px}
.rows__link{position:relative;transition:background-color .25s,border-color .25s;isolation:isolate}
.rows__link::before{content:"";position:absolute;inset:0 -18px;z-index:-1;background:var(--hover);opacity:0;transition:opacity .25s var(--detail-ease);pointer-events:none}
.rows__link:hover::before,.rows__link:focus-visible::before{opacity:1}
.rows__link:hover .rows__t{text-decoration:none;color:var(--vermilion)}
.rows__d{line-height:1.65}
.rows__n{color:var(--fg-2)}
.ruled__item{padding-block:24px 30px}
.ruled p{line-height:1.65}
.ruled strong{font-weight:500}
.slist__link,.sindex__link{transition:background-color .25s var(--detail-ease),border-color .25s}
.slist__link:hover,.sindex__link:hover{border-color:var(--vermilion)}
.sindex__hl{line-height:1.55}
.sectors__link{border-radius:0}
.sectors__hl{line-height:1.6}
.sectors__link:hover .sectors__name{color:var(--vermilion)}
.sectors__item--all .sectors__link:hover .sectors__name{color:var(--ivory)}
.phero .display{font-weight:400}
.phero__lead{line-height:1.65}
.faq__item summary{padding-block:24px;font-weight:500}
.faq__a{line-height:1.7}
.ftr__line{font-weight:400}
.ftr__col a{display:inline-block;padding-block:3px}
.field input[type=text],.field input[type=email],.field input[type=tel]{padding-block:14px}
.sz-icon{display:block;width:26px;height:26px;flex:none;color:var(--vermilion);fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.ruled__n .sz-icon,.rows__n .sz-icon{width:24px;height:24px;margin-top:3px}
/* A dedicated fire-protection feature: generous space, equipment vocabulary,
   and a drawn system rather than a generic icon-card grid. */
.fire-section{position:relative;background:var(--paper);color:var(--ink);border-block:1px solid rgba(39,37,41,.14);padding-block:clamp(68px,8vw,128px)}
.fire-section__layout{display:grid;gap:40px;align-items:center}
.fire-section__content .eyebrow{margin-bottom:24px}
.fire-section__content .h1,.fire-section__content .h2{max-width:20ch}
.fire-section__content .lead{margin-block:24px 30px;max-width:48ch}
.fire-section__visual{position:relative;margin:0;min-width:0;background:var(--ivory);padding:clamp(20px,3vw,44px);border:1px solid rgba(39,37,41,.13)}
.fire-section__visual::before{content:"";position:absolute;inset-inline-start:-1px;top:-1px;width:34px;height:34px;border-top:3px solid var(--vermilion);border-inline-start:3px solid var(--vermilion)}
.fire-section__diagram{display:block;width:100%;height:auto;aspect-ratio:14/9;color:var(--ink)}
.fire-section__visual figcaption{display:flex;align-items:center;gap:10px;border-top:1px solid rgba(39,37,41,.14);padding-top:18px;margin-top:18px;font-size:.8125rem;color:var(--muted);line-height:1.55}
.fire-section__systems{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;margin-block:28px 32px;border-top:1px solid rgba(39,37,41,.18)}
.fire-section__systems li{display:flex;align-items:flex-start;gap:12px;border-bottom:1px solid rgba(39,37,41,.14);padding-block:17px;line-height:1.45;font-size:.9375rem}
.fire-section__systems .sz-icon{width:23px;height:23px;margin-top:1px}
.fire-section__note{font-size:.8125rem;line-height:1.65;max-width:64ch;color:var(--muted);margin-top:24px}
.fire-section__actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px 28px}
.fire-section__visual .sz-icon{width:100%;height:100%}
.equipment-list{display:grid;gap:0;border-top:1px solid var(--rule)}
.equipment-list li{display:grid;grid-template-columns:28px 1fr;gap:20px;padding-block:24px;border-bottom:1px solid var(--rule)}
.equipment-list h3{font-size:1.125rem;font-weight:500;line-height:1.4;margin-bottom:6px}
.equipment-list p{color:var(--muted);max-width:60ch;line-height:1.65}
.service-icon{width:44px;height:44px;color:var(--vermilion);margin-block:0 24px}
@media(min-width:900px){
 .fire-section__layout{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(44px,6vw,100px)}
 .fire-section__visual{align-self:center}
 .business .rows__link{padding-block:30px 32px}
 .sindex__name{font-weight:400;font-size:clamp(1.4rem,1rem + 1.5vw,2.3rem)}
}
@media(max-width:899px){
 .lead{font-size:1.0625rem}
 .fire-section__content .h1,.fire-section__content .h2{max-width:24ch}
}
@media(max-width:599px){
 .h1{font-size:clamp(2.05rem,8.6vw,2.8rem);line-height:1.13}
 .h2{font-size:clamp(1.85rem,7.5vw,2.35rem);line-height:1.16}
 .intro__main .h1,.homes__text .h1,.business__rail .h2{max-width:none}
 .intro__body,.now__body{margin-top:24px}
 .rows__link{grid-template-columns:2.3em minmax(0,1fr) 20px;padding-block:24px}
 .rows__t{font-size:1.22rem}
 .rows__d{font-size:.9375rem}
 .rows__link::before{inset-inline:-10px}
 .ruled__item{grid-template-columns:2.8em minmax(0,1fr)}
 .btns .btn{white-space:normal;min-height:52px;padding-block:12px}
 .fire-section__systems{grid-template-columns:1fr;gap:0}
 .fire-section__layout{gap:32px}
 .fire-section__visual{padding:20px}
 .fire-section__note{font-size:.875rem}
 .sectors__hl{display:block;font-size:.8125rem}
 .sectors__link{min-height:210px}
}
[dir=rtl] .rows__link:hover .rows__ar,[dir=rtl] .sindex__link:hover .sindex__ar,[dir=rtl] .sectors__link:hover .sectors__ar{transform:translateX(-4px)}
:lang(ar) .h1,:lang(ar) .h2,:lang(ar) .phero .display{font-weight:500;letter-spacing:0;line-height:1.4}
:lang(ar) .lead{line-height:1.85}
:lang(ar) .rows__d,:lang(ar) .ruled p{line-height:1.85}
:lang(ar) .fire-section__systems li{line-height:1.65;font-size:1rem}
:lang(ar) .fire-section__note,:lang(ar) .fire-section__visual figcaption{line-height:1.8}
:lang(ar) .equipment-list p{line-height:1.85}
@media(prefers-reduced-motion:reduce){.rows__link::before,.btn,.slist__link,.sindex__link{transition:none}}
@media print{.fire-section{padding-block:24px}.fire-section__layout{grid-template-columns:1fr 1fr;gap:24px}.fire-section__actions{display:none}}

/* Equipment narratives stay readable in both languages. */
.equipment-list{display:grid;gap:0;margin-block:28px 32px;border-top:1px solid rgba(39,37,41,.17)}
.equipment-list li{display:flex;gap:16px;align-items:flex-start;padding-block:20px;border-bottom:1px solid rgba(39,37,41,.17)}
.equipment-list .sz-icon{width:28px;height:28px;margin-top:3px}
.equipment-list h3{font-size:1.0625rem;line-height:1.4;font-weight:500;letter-spacing:0;margin-bottom:6px}
.equipment-list p{font-size:.9375rem;line-height:1.65;color:#625b56;max-width:47ch}
.fire-section__diagram{aspect-ratio:auto}
.fire-response{display:grid;gap:32px;margin-block:44px}
.fire-response__item{border-top:1px solid var(--rule-2,rgba(250,246,240,.25));padding-top:25px}
.fire-response__item .h3{margin-block:20px 16px;max-width:19ch}
.fire-response__item .lead{font-size:1rem;max-width:40ch}
.fire-note{max-width:80ch;border-top:1px solid var(--rule-2,rgba(250,246,240,.25));padding-block:24px 32px;font-size:.875rem;line-height:1.7}
.fire-sched .sched__ref .sz-icon{margin-bottom:10px}
.fire-sched .sched__item strong{font-weight:500}
.fire-sched .sched__item p{font-size:.9375rem;color:#625b56;line-height:1.65;margin-top:8px}
.fire-crosslink{padding-block:30px;background:var(--ivory)}
.fire-crosslink a{display:flex;align-items:center;gap:20px;border-block:1px solid rgba(39,37,41,.16);padding-block:24px;text-decoration:none;font-size:.9375rem;line-height:1.65}
.fire-crosslink a>span:last-child{margin-inline-start:auto;font-size:1.4rem}
.sz-ch__launch{display:inline-flex;align-items:center;gap:12px;background:none;color:var(--ivory);border:0;border-bottom:1px solid rgba(250,246,240,.4);padding:6px 0;margin-top:18px;font-size:.875rem;font-weight:500;pointer-events:auto}
.sz-ch__launch:focus-visible{outline:2px solid var(--peach);outline-offset:5px}
.sz-tour:not(.is-ready) .sz-ch__launch{display:none}
@media(min-width:900px){.fire-response{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}}
@media(max-width:599px){.equipment-list p{font-size:.9375rem}.fire-section__layout{gap:32px}.fire-crosslink{padding-inline:var(--gutter)}}

/* Optimized architectural images complement the live villa tour. */
.plan__image{display:block;position:absolute;inset:0}
.plan__image img{width:100%;height:100%;object-fit:cover;object-position:50% 42%}
.homes__media--photo{width:100%;border-color:rgba(250,246,240,.24)}
.homes__media--photo .plan__block{background:#272529;z-index:1}
.business__media{margin-block:32px 0;overflow:hidden;border:1px solid rgba(39,37,41,.16)}
.business__media img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}
.business__media figcaption{padding:12px 14px;font-size:.75rem;line-height:1.5;border-top:1px solid rgba(39,37,41,.12);color:#625b56}
:lang(ar) .business__media figcaption{font-size:.875rem;line-height:1.7}
@media(max-width:899px){.homes__media--photo{aspect-ratio:4/5;max-height:680px}.business__media{max-width:720px}}

/* Service and sector imagery: editorial layout with readable, separate copy. */
.phero--image .phero__wrap{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);column-gap:clamp(32px,5vw,80px);align-items:center}
.phero--image .crumbs{grid-column:1/-1;align-self:start}
.phero--image .phero__main{grid-column:1;grid-row:2;margin-top:0;padding-top:52px;padding-bottom:24px}
.phero--image .display{max-width:100%;font-size:clamp(3rem,5.4vw,5.5rem);line-height:1.04}
.phero--image .phero__photo{grid-column:2;grid-row:2;margin-top:42px;border:1px solid rgba(250,246,240,.18);overflow:hidden;aspect-ratio:4/3;background:#302d2b}
.phero__photo img{display:block;width:100%;height:100%;object-fit:cover}
.sindex__thumb{width:56px;height:56px;object-fit:cover;border:1px solid var(--rule-2,rgba(39,37,41,.16))}
.phero--image .phero__foot{grid-column:1/-1;grid-row:3;margin-top:44px;width:100%}
.fire-section__visual>img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
:lang(ar) .phero--image .display{max-width:100%;letter-spacing:0;line-height:1.42;font-size:clamp(2.75rem,5vw,5rem)}
@media(max-width:899px){.phero--image{min-height:0}.phero--image .phero__wrap{display:flex;flex-direction:column;align-items:stretch}.phero--image .phero__main{padding-top:48px;padding-bottom:0}.phero--image .display{font-size:clamp(2.75rem,7vw,4.5rem)}.phero--image .phero__photo{margin-top:32px;aspect-ratio:3/2}.phero--image .phero__foot{margin-top:32px}.phero--image .phero__lead{max-width:100%}:lang(ar) .phero--image .display{font-size:clamp(2.3rem,6.5vw,4rem)}}
@media print{.phero--image .phero__photo{max-width:400px}}
