/* Vector arrows stay fine and monochrome, including on iOS. */
.fine-arrow{display:inline-block;width:.95em;height:.95em;vertical-align:-.08em;flex:none;overflow:visible}
@media(max-width:800px){
 /* Preserve the desktop photographic chapters on a narrow screen. */
 .home-page .home-feature{display:grid;position:relative;isolation:isolate;min-height:0;margin:0;border-radius:0;overflow:hidden;background:var(--wine-dark)}
 .home-page .home-feature+.home-feature{margin:0;border-radius:0}
 .home-page .home-feature .feature-media{position:absolute;inset:0;height:100%;min-height:0;aspect-ratio:auto;z-index:0;pointer-events:none}
 .home-page .home-feature .feature-media img{position:static;width:100%;height:100%;object-fit:cover;object-position:60% center;transform:none;mask-image:none;filter:brightness(.60)}
 .home-page .feature-hotels .feature-media img{object-position:61% center}
 .home-page .feature-apartments .feature-media img{object-position:52% center}
 .home-page .home-feature .feature-media::before{display:none}
 .home-page .home-feature .feature-media::after{background:linear-gradient(180deg,rgba(22,9,11,.22),rgba(22,9,11,.22) 35%,rgba(22,9,11,.72))}
 .home-page .home-feature .feature-copy{position:relative;z-index:1;grid-area:1/1;min-height:100svh;box-sizing:border-box;padding:48px 24px 52px;align-items:center;justify-content:center;text-align:center}
 .home-page .home-feature .feature-copy>*{width:100%;max-width:580px}
 .home-page .home-feature .feature-number{font-size:.58rem;line-height:1.7;letter-spacing:.1em;margin:0 0 40px}
 .home-page .home-feature .feature-copy h3{font-size:clamp(3.6rem,15vw,6rem);line-height:.88}
 .home-page .home-feature .feature-rule{width:1px;height:72px;margin:30px auto;max-width:1px}
 .home-page .home-feature .feature-description>p:first-child{font-size:clamp(2rem,8.5vw,3rem);line-height:1.1;margin-bottom:22px}
 .home-page .home-feature .feature-detail{font-size:.92rem;line-height:1.65;margin-bottom:26px}
 .home-page .home-feature .scene-note{top:auto;bottom:8px;font-size:.5rem}
 .magazine-layout .masthead{position:relative;top:auto;transform:none}
 .magazine-layout .masthead.overlay{position:absolute;inset:0 0 auto}
 /* Full-width editorial reading rhythm on all three service pages. */
 .services-page .scene-journey{display:block;background:var(--paper-deep,#eee7d9)}
 .services-page .scene-journey .journey-aside{display:none}
 .services-page .scene-journey .journey-content{width:auto;max-width:680px;margin:0 auto;padding:30px 20px;pointer-events:auto}
 .services-page .scene-journey .journey-section{padding:30px 4px 34px;margin:0 0 28px;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none;background:transparent;backdrop-filter:none}
 .services-page .scene-journey .journey-section::before{display:none}
 .services-page .scene-journey .station-meta{flex-direction:row;justify-content:flex-start;text-align:left;gap:16px;margin-bottom:24px}
 .services-page .scene-journey .station-no{display:block;width:auto;height:auto;border:0;border-radius:0;font:italic 1.35rem var(--serif)}
 .services-page .scene-journey .station-meta .eyebrow{font-size:.6rem;letter-spacing:.1em;line-height:1.6}
 .services-page .scene-journey .journey-section h2{text-align:left;font-size:clamp(2.3rem,9.2vw,3.4rem);line-height:1.07;letter-spacing:-.025em;margin-bottom:24px}
 .services-page .scene-journey .journey-section>.station-lead{text-align:left;font-size:1.3rem;line-height:1.5}
 .services-page .scene-journey .chapter-details>summary{justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--line);font-size:.85rem}
 .services-page .scene-journey .chapter-details .details-body{font-size:.95rem;line-height:1.75}
 .services-page .scene-journey .journey-section .service-actions{justify-content:flex-start}
}

/* Image framing corrections, October 28. */
.services-page .practice-case-media,.services-page .journey-editorial-media{border:0;background:transparent}
.home-page .home-feature>.scene-note{display:none}
.contact-founders-visual figcaption{left:10px;bottom:12px;max-width:40%;padding:6px 8px;font-size:.53rem;line-height:1.5;letter-spacing:.035em}
@media(max-width:800px){
 /* Crop only the frame baked into the source, then shift the hanger right. */
 .home-page .feature-hotels .feature-media img{transform:scale(1.12);object-position:36% center}
 .home-page .feature-hotels .feature-media::after{background:linear-gradient(90deg,rgba(22,9,11,.38),rgba(22,9,11,.1)),linear-gradient(180deg,rgba(22,9,11,.12),rgba(22,9,11,.4))}
 .contact-founders-visual figcaption{left:7px;bottom:10px;max-width:37%;font-size:.48rem;padding:5px 6px}
 .service-rumaya-hero{min-height:calc(100svh - 76px);display:grid}
 .service-rumaya-hero::before{position:absolute;display:block;inset:0;width:100%;height:100%;aspect-ratio:auto;background:linear-gradient(180deg,rgba(25,12,11,.26),rgba(25,12,11,.24) 35%,rgba(25,12,11,.82)),url('/assets/zila-web-service.webp') 60% center/cover no-repeat;transform:none}
 .service-rumaya-hero::after{display:none}
 .service-rumaya-hero .shell{min-height:inherit;box-sizing:border-box;padding-block:30px 40px;gap:44px;grid-template-rows:auto 1fr auto}
 .service-rumaya-title{font-size:clamp(3rem,12vw,5rem)}
 .service-rumaya-foot{gap:22px}
}
/* Shared desktop/touch navigation reveal. No transform: the open menu stays viewport-fixed. */
body.magazine-layout .masthead.scroll-fixed{position:fixed;inset:0 0 auto;z-index:100;background:var(--header-beige);color:var(--ink);box-shadow:0 3px 18px rgba(36,28,24,.08);transform:none;opacity:1;visibility:visible;transition:opacity .18s ease,visibility .18s ease}
body.magazine-layout .masthead.scroll-fixed.scroll-hidden:not(.menu-is-open):not(:focus-within){opacity:0;visibility:hidden;pointer-events:none}
@media(prefers-reduced-motion:reduce){body.magazine-layout .masthead.scroll-fixed{transition:none}}
/* Hide immediately when switching from the opening header to fixed navigation.
   Only revealing the header is animated, avoiding a flash at the first threshold. */
body.magazine-layout .masthead.scroll-fixed.scroll-hidden:not(.menu-is-open):not(:focus-within){transition:none}
