/* Landing-page composition: full-bleed chapters, balanced company portraits and editorial copy. */
.cinematic-home { --chapter-space:clamp(76px,9vw,142px); }
.first-design .section { padding-block:var(--chapter-space); }
.first-design .section-heading { align-items:end; gap:clamp(30px,6vw,90px); margin-bottom:44px; }
.first-design .section-heading h2 { font-size:clamp(29px,3.3vw,46px); line-height:1.17; max-width:690px; }
.first-design .section-heading > p { max-width:380px; font-size:13px; }
.first-design .eyebrow { letter-spacing:.16em; }
.first-design .full-bleed-story { padding:0; background:var(--surface); }
.full-bleed-media { margin:0; }
.full-bleed-media img { display:block; width:100%; height:clamp(380px,70svh,850px); object-fit:cover; }
.full-bleed-media figcaption { padding-block:12px; font-size:10px; color:var(--muted); }
.cinematic-home #thesis .parallax-viewport { height:80svh; max-height:900px; }
.full-bleed-copy { display:grid; grid-template-columns:1.1fr .9fr; gap:clamp(40px,8vw,128px); padding-block:var(--chapter-space,90px); }
.full-bleed-copy h1 { font-size:clamp(36px,4.7vw,68px); line-height:1.06; letter-spacing:-.045em; }
.full-bleed-copy h2 { font-size:clamp(30px,4vw,56px); line-height:1.13; }
.full-bleed-copy #thesis-heading { font-size:clamp(36px,4.7vw,68px); line-height:1.06; letter-spacing:-.045em; }
.full-bleed-copy > div:last-child { padding-top:36px; max-width:520px; }
.full-bleed-copy p:not(.eyebrow) { margin-bottom:20px; color:var(--muted); font-size:14px; line-height:1.9; }
.full-bleed-copy p.lead { color:var(--ink); font-size:clamp(18px,1.8vw,24px); line-height:1.6; }
.chapter-index { display:block; margin-top:36px; color:var(--muted); font-size:9px; letter-spacing:.18em; }
.first-design .companies-section { background:var(--paper); padding-block:90px; }
.first-design .companies-section .section-heading { margin-bottom:28px; }
.first-design .companies-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:22px; border:0; }
.first-design .companies-grid .group-company { display:flex; flex-direction:column; align-items:stretch; gap:0; min-width:0; padding:48px 0 0; border:0; background:none; }
.first-design .companies-grid .group-company:nth-child(2),.first-design .companies-grid .group-company:nth-child(4) { padding-top:24px; }
.first-design .companies-grid .group-company:nth-child(3) { padding-top:0; }
.first-design .company-number { padding:0 0 13px; margin:0; font-size:10px; font-weight:500; color:var(--accent); }
.first-design .company-picture { order:0; margin:0 0 22px; display:block; overflow:hidden; }
.first-design .company-picture img { width:100%; height:310px; padding:0; object-fit:cover; border-radius:8px; transition:transform 1.1s var(--ease-out),filter .8s; }
.first-design .group-company:nth-child(2) .company-picture img,.first-design .group-company:nth-child(4) .company-picture img { height:334px; }
.first-design .group-company:nth-child(3) .company-picture img { height:358px; object-fit:cover; padding:0; }
.first-design .company-picture span { display:block; font-size:9px; color:var(--muted); margin-top:10px; line-height:1.4; min-height:25px; }
.first-design .group-company > .eyebrow { margin:0 0 12px; font-size:9px; min-height:27px; }
.first-design .group-company h3 { min-height:52px; margin:0 0 12px; font-size:clamp(17px,1.6vw,22px); line-height:1.2; }
.first-design .group-company h3 br { display:none; }
.first-design .group-company > p:not(.eyebrow) { display:block; margin:0 0 20px; font-size:12px; line-height:1.8; }
.first-design .company-explore { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-top:auto; padding-top:15px; border-top:1px solid var(--line); font-size:10px; }
.first-design .company-explore i { font-size:19px; font-style:normal; transition:transform .5s var(--ease-out); }
.first-design .companies-grid .group-company:hover { background:none; }
.first-design .group-company:hover .company-picture img { transform:scale(1.045); }
.first-design .group-company:hover .company-explore i { transform:translate(3px,-3px); }
.first-design .property-showcase { width:100%; max-width:none; padding:0; background:var(--surface); }
.first-design .property-showcase-track { width:100%; max-width:none; margin:0; scrollbar-width:none; }
.first-design .property-showcase-track::-webkit-scrollbar { display:none; }
.first-design .property-showcase-slide .photo-button { overflow:hidden; border-radius:0; }
.first-design .property-showcase-slide img { width:100%; height:clamp(400px,78svh,900px); object-fit:cover; aspect-ratio:auto; transform:scale(1.035); transition:transform 1.4s var(--ease-out); }
.first-design .property-showcase-slide.is-current img { transform:scale(1); }
.first-design .property-showcase-slide[data-showcase-project] img { transform:none; }
.first-design .property-showcase-slide[data-showcase-project="w-cantonments"] img { object-position:center 48%; }
.first-design .property-showcase-slide[data-showcase-project="signia"] img { object-position:center 35%; }
.first-design .property-showcase-slide[data-showcase-project="oxford-two"] img { object-position:center 47%; }
.first-design .property-showcase-slide figcaption { width:min(1280px,calc(100% - 112px)); margin:auto; padding:30px 0 0; }
.first-design .property-showcase-slide strong { font-size:clamp(25px,3vw,42px); line-height:1.2; }
.first-design .property-showcase-slide figcaption a > span { font-size:12px; margin-top:8px; }
.first-design .property-showcase-footer { width:min(1280px,calc(100% - 112px)); margin:0 auto; padding:20px 0 0; }
.first-design .property-showcase-footer > p { font-size:11px; }
.first-design .property-showcase-controls { gap:16px; }
.first-design .showcase-playback-button { border:1px solid var(--line); border-radius:999px; padding:9px 13px; background:var(--surface); color:var(--ink); font:inherit; font-size:10px; cursor:pointer; }
.first-design .showcase-playback-button:hover,.first-design .showcase-playback-button:focus-visible { border-color:var(--accent); }
.first-design .arrow-button { width:47px; height:47px; border-radius:50%; transition:background .3s,transform .4s; }
.first-design .arrow-button:hover { transform:scale(1.08); }
.first-design .full-width-feature { width:100%; max-width:none; padding-inline:0; }
.first-design .full-width-feature .story-grid { display:block; }
.first-design .full-width-feature .story-photograph { width:100%; margin:0; }
.first-design .full-width-feature .story-photograph img { width:100%; height:clamp(420px,80svh,900px); aspect-ratio:auto; object-fit:cover; }
.first-design .full-width-feature .story-photograph figcaption { width:min(1280px,calc(100% - 112px)); margin:auto; padding-top:14px; font-size:10px; }
.first-design .full-width-feature .story-copy { width:min(1280px,calc(100% - 112px)); margin:auto; max-width:1280px; padding-top:0; }
.first-design #hospitality { padding-block:64px var(--chapter-space); }
.first-design #hospitality .story-copy { display:grid; grid-template-columns:1.05fr 1fr; gap:0 9%; }
.first-design #hospitality .story-copy > .eyebrow { grid-column:1; grid-row:1; }
.first-design #hospitality .story-copy > h2 { grid-column:1; grid-row:2/6; font-size:clamp(31px,3.8vw,54px); }
.first-design #hospitality .story-copy > p:not(.eyebrow),.first-design #hospitality .story-copy > a { grid-column:2; }
.first-design #hospitality .story-copy > p.lead { grid-row:1/3; }
.first-design #hospitality .story-copy > a { width:fit-content; }
.first-design #partners { padding-block:64px; }
.first-design #portfolio { background:var(--paper); overflow-x:clip; }
.first-design #portfolio .portfolio-grid { display:grid; grid-auto-flow:column; grid-auto-columns:36%; grid-template-columns:none; gap:22px; overflow-x:auto; scroll-snap-type:x mandatory; overscroll-behavior-inline:contain; padding:8px 0 24px; scrollbar-width:thin; scrollbar-color:var(--accent) transparent; }
.first-design #portfolio .property-card { scroll-snap-align:start; border-color:var(--glass-border); border-radius:12px; background:var(--glass); }
.first-design #portfolio .property-card:hover { border-color:var(--accent); }
.first-design #portfolio .property-image { aspect-ratio:1.3; }
.first-design #portfolio .property-image img { width:100%; height:100%; aspect-ratio:auto; object-fit:cover; }
.first-design .story-grid { gap:clamp(42px,7vw,115px); grid-template-columns:1.1fr .9fr; align-items:center; }
.first-design .story-copy h2 { font-size:clamp(30px,3.5vw,49px); line-height:1.17; }
.first-design .story-copy > p { font-size:14px; line-height:1.85; }
.first-design .story-copy > .eyebrow { font-size:10px; }
.first-design .story-copy > p.lead { font-size:18px; }
.first-design #realestate .story-photograph img { aspect-ratio:.93; object-fit:cover; }
.first-design #industrial .story-grid { grid-template-columns:.9fr 1.1fr; }
.first-design #industrial .story-photograph img { aspect-ratio:1; object-fit:cover; }
.first-design .image-pair { gap:30px; padding-block:60px 0; }
.first-design .image-pair img { aspect-ratio:1.45; object-fit:cover; }
.first-design .fd-film-section { padding:0; background:var(--paper); }
.first-design .fd-film-media { width:100%; }
.first-design .fd-film-media video { display:block; width:100%; height:clamp(390px,76svh,860px); max-height:none; aspect-ratio:auto; object-fit:cover; }
.first-design .fd-film-heading { display:grid; grid-template-columns:1.15fr 1fr; gap:clamp(40px,8vw,128px); align-items:center; padding-block:60px; }
.first-design .fd-film-heading h2 { font-size:clamp(29px,3.4vw,48px); max-width:680px; }
.first-design .fd-film-heading > p { font-size:12px; line-height:1.85; color:var(--muted); max-width:410px; }
.first-design #leisure .story-copy { padding-top:65px; }
.cinematic-home #leisure .parallax-viewport { height:85svh; max-height:950px; }
.first-design .technology-feature { grid-template-columns:1.1fr .9fr; gap:10%; }
.first-design .technology-screen { background:var(--paper); padding:clamp(30px,5vw,80px); border-radius:16px; }
.first-design .technology-panel h2 { font-size:clamp(30px,3.8vw,52px); }
.first-design #recognition { border-top:1px solid var(--line); }
.first-design .capability-grid { gap:30px; }
.first-design .capability-grid article { padding-block:22px; border-top:1px solid var(--line); }
.first-design .capability-grid h3 { font-size:21px; }
.first-design .contact-section { padding-block:110px; }
@media(max-width:1100px) {
  .first-design .companies-grid { gap:16px; }
  .first-design .company-picture img { height:212px; }
  .first-design .group-company:nth-child(2) .company-picture img,.first-design .group-company:nth-child(4) .company-picture img { height:236px; }
  .first-design .group-company:nth-child(3) .company-picture img { height:260px; }
}
@media(max-width:860px) {
  .full-bleed-copy { gap:35px; }
  .first-design .companies-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px 20px; }
  .first-design .companies-grid .group-company,.first-design .companies-grid .group-company:nth-child(n) { padding-top:0; }
  .first-design .companies-grid .company-picture img,.first-design .companies-grid .group-company:nth-child(n) .company-picture img { height:230px; }
  .first-design .companies-grid .group-company > p:not(.eyebrow) { display:block; }
  .first-design .group-company h3 { min-height:48px; }
  .first-design .full-width-feature .story-copy,.first-design .full-width-feature .story-photograph figcaption,.first-design .property-showcase-slide figcaption,.first-design .property-showcase-footer { width:calc(100% - 56px); }
  .first-design #portfolio .portfolio-grid { grid-auto-columns:48%; }
  .first-design .story-grid,.first-design #industrial .story-grid { gap:36px; }
  .first-design .fd-film-heading { gap:35px; }
}
@media(max-width:600px) {
  .full-bleed-copy { grid-template-columns:1fr; gap:20px; }
  .full-bleed-copy > div:last-child { padding-top:0; }
  .full-bleed-copy #thesis-heading { font-size:42px; }
  .chapter-index { margin-top:25px; }
  .first-design .companies-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px 16px; }
  .first-design .companies-grid .group-company:last-child { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; gap:0 20px; }
  .first-design .companies-grid .group-company:last-child .company-picture { grid-column:1; grid-row:1/6; }
  .first-design .companies-grid .group-company:last-child .company-number { display:none; }
  .first-design .companies-grid .group-company:last-child > :not(.company-picture) { grid-column:2; }
  .first-design .companies-grid .company-picture img,.first-design .companies-grid .group-company:nth-child(n) .company-picture img { height:220px; }
  .first-design .group-company h3 { font-size:19px; min-height:46px; }
  .first-design .group-company > p:not(.eyebrow) { font-size:11px; }
  .first-design .company-picture { margin-bottom:13px; }
  .first-design #hospitality .story-copy { display:block; }
  .first-design #hospitality .story-copy > a { display:flex; }
  .first-design .full-width-feature .story-copy,.first-design .full-width-feature .story-photograph figcaption,.first-design .property-showcase-slide figcaption,.first-design .property-showcase-footer { width:calc(100% - 40px); }
  .first-design .property-showcase-slide img { height:68svh; min-height:390px; }
  .first-design .property-showcase-slide[data-showcase-project="w-cantonments"] img { object-position:69% center; }
  .first-design .property-showcase-slide[data-showcase-project="signia"] img { object-position:center; }
  .first-design .property-showcase-slide[data-showcase-project="oxford-two"] img { object-position:55% center; }
  .first-design .property-showcase-footer > p { max-width:135px; }
  .first-design .property-showcase-footer { flex-wrap:wrap; }
  .first-design .property-showcase-controls { width:100%; justify-content:flex-end; gap:10px; }
  .first-design #portfolio .portfolio-grid { grid-auto-columns:86%; }
  .first-design .story-grid,.first-design #industrial .story-grid,.first-design .fd-film-heading { grid-template-columns:1fr; }
  .first-design .story-photograph,.first-design .story-copy { grid-column:auto; grid-row:auto; }
  .first-design .image-pair { gap:17px; padding-top:30px; }
  .first-design .image-pair img { aspect-ratio:.8; }
  .first-design .fd-film-media video { height:65svh; min-height:350px; }
  .first-design .fd-film-heading { padding-block:40px; gap:20px; }
  .first-design .technology-feature { grid-template-columns:1fr; gap:35px; }
  .cinematic-home #thesis .parallax-viewport,.cinematic-home #leisure .parallax-viewport { height:65svh; min-height:380px; }
  .first-design .contact-section { padding-block:70px; }
}
@media(prefers-reduced-motion:reduce) {
  .first-design .company-picture img,.first-design .company-explore i,.first-design .property-showcase-slide img,.first-design .arrow-button { transition:none; }
}
/* The presentation follows the overview; the image stays unobstructed. */
.brochure-download { display:flex; justify-content:space-between; align-items:center; gap:30px; padding-block:35px 65px; border-top:1px solid var(--line); }
.brochure-download h2 { font-size:clamp(25px,2.4vw,34px); margin-bottom:12px; }
.brochure-download p:not(.eyebrow) { font-size:11px; color:var(--muted); }
.brochure-download .button { flex-shrink:0; }
@media(max-width:600px) { .brochure-download { flex-direction:column; align-items:flex-start; padding-block:30px 50px; } }

/* Photo-first cards retain the original portfolio rail and reveal animation. */
.first-design #portfolio .property-card { overflow:hidden; }
.first-design #portfolio .property-card-body { display:grid; grid-template-columns:minmax(0,1fr) 82px; grid-template-rows:auto minmax(76px,1fr) auto; gap:12px 18px; padding:22px; }
.first-design #portfolio .property-meta { grid-column:1/-1; margin:0; font-size:9px; }
.first-design #portfolio .property-card h3 { grid-column:1/-1; align-self:center; margin:0; font-size:clamp(23px,2.2vw,31px); line-height:1.13; letter-spacing:-.025em; }
.first-design #portfolio .property-card-body:has(.property-detail-image) h3 { grid-column:1; }
.first-design #portfolio .property-detail-image { grid-column:2; width:82px; height:76px; object-fit:cover; border-radius:6px; }
.first-design #portfolio .property-card-footer { grid-column:1/-1; padding-top:14px; margin:0; }
.dialog-property-media.has-detail { display:grid; grid-template-columns:1.45fr 1fr; gap:8px; }
.dialog-property-media.has-detail img { width:100%; height:350px; object-fit:cover; }
.dialog-property-detail[hidden] { display:none; }
@media(max-width:600px) {
 .first-design #portfolio .portfolio-grid { grid-auto-columns:90%; }
 .first-design #portfolio .property-image { aspect-ratio:1.05; }
 .first-design #portfolio .property-card-body { padding:18px; gap:12px; grid-template-columns:minmax(0,1fr) 68px; }
 .first-design #portfolio .property-detail-image { width:68px; height:68px; }
 .first-design #portfolio .property-card h3 { font-size:24px; }
 .first-design .companies-grid .company-picture img,.first-design .companies-grid .group-company:nth-child(n) .company-picture img { height:260px; }
 .dialog-property-media.has-detail { grid-template-columns:1fr; }
 .dialog-property-media.has-detail img { height:240px; }
}

.first-design #portfolio .property-state { color:var(--accent); }
