/* DECOWORKS / NTDE Decoration Works — static HTML template
   Converted from the original React/Tailwind source into plain CSS. */

@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&family=Playfair+Display:wght@400;500&display=swap");

:root {
  --font-sans: "Inter", sans-serif;
  --font-serif: "Playfair Display", serif;

  --background: oklch(0.957 0.012 95);
  --foreground: oklch(0.18 0 0);
  --card: oklch(0.927 0.019 97);
  --card-foreground: oklch(0.18 0 0);
  --primary: oklch(0.18 0 0);
  --primary-foreground: oklch(0.957 0.012 95);
  --secondary: oklch(0.927 0.019 97);
  --secondary-foreground: oklch(0.18 0 0);
  --muted: oklch(0.927 0.019 97);
  --muted-foreground: oklch(0.59 0.02 90);
  --accent: oklch(0.74 0.068 77);
  --border: oklch(0.8 0.025 87);
  --input: oklch(0.8 0.025 87);
  --ring: oklch(0.74 0.068 77);
  --metal: oklch(0.74 0.068 77);
}

/* ---------- reset ---------- */
*, *::before, *::after { box-sizing: border-box; }
* { border-color: var(--border); }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--background); color: var(--foreground); font-family: var(--font-sans); font-weight: 300; -webkit-font-smoothing: antialiased; }
body, a, button, input, textarea { letter-spacing: 0; font-family: var(--font-sans); }
img { display: block; width: 100%; object-fit: cover; border: 0; }
a { color: inherit; text-decoration: none; }
address { font-style: normal; }
button { cursor: pointer; background: none; color: inherit; font: inherit; }
ul { margin: 0; padding: 0; list-style: none; }
::selection { background: var(--metal); color: var(--foreground); }

.shell { width: min(100% - 48px, 1380px); margin-inline: auto; }
.page-transition { animation: page-in .7s ease both; }
@keyframes page-in { from { opacity: 0; } to { opacity: 1; } }
.eyebrow { margin: 0; text-transform: uppercase; font-size: 10px; line-height: 1.2; letter-spacing: .24em; font-weight: 500; }
h1,h2,h3,p { margin-top: 0; }
h1,h2 { font-family: var(--font-serif); font-weight: 400; }

/* ---------- buttons ---------- */
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; white-space: nowrap; border-radius: 0; font-size: 11px; text-transform: uppercase; letter-spacing: .16em; font-weight: 500; cursor: pointer; transition: color .3s, background-color .3s, border-color .3s; height: 44px; padding: 0 20px; border: 1px solid transparent; }
.btn-lg { height: 48px; padding: 0 32px; }
.btn-default { border-color: var(--primary); background: var(--primary); color: var(--primary-foreground); }
.btn-default:hover { background: transparent; color: var(--primary); }
.btn-outline { border-color: var(--border); background: transparent; color: var(--foreground); }
.btn-outline:hover { background: var(--primary); color: var(--primary-foreground); border-color: var(--primary); }
.btn-light-outline { border-color: color-mix(in oklab, var(--primary-foreground) 70%, transparent); color: var(--primary-foreground); background: transparent; }
.btn-light-outline:hover { background: var(--primary-foreground); color: var(--primary); }

/* ---------- header ---------- */
.site-header { position: fixed; z-index: 50; top: 0; left: 0; width: 100%; height: 82px; padding: 0 3vw; display: grid; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); align-items: center; transition: background .5s ease, color .5s ease; }
.site-header-solid { background: color-mix(in oklab, var(--background) 96%, transparent); border-bottom: 1px solid var(--border); color: var(--foreground); }
.site-header-overlay { color: var(--primary-foreground); }
.wordmark { display: inline-flex; align-items: center; gap: 13px; font-size: 13px; font-weight: 600; letter-spacing: .16em; }
.monogram { width: 31px; height: 31px; display: grid; place-items: center; border: 1px solid currentColor; font-family: var(--font-serif); font-size: 10px; letter-spacing: 0; }
.desktop-nav { display: flex; align-items: center; gap: clamp(22px,2.2vw,40px); font-size: 11px; }
.desktop-nav a { position: relative; padding-block: 8px; }
.desktop-nav a::after { content:""; position:absolute; left:0; bottom:0; width:0; height:1px; background: currentColor; transition: width .3s; }
.desktop-nav a:hover::after,.desktop-nav .nav-active::after { width:100%; }
.header-cta { justify-self: end; }
.menu-trigger { display:none; justify-self:end; width: 44px; height: 44px; align-items: center; justify-content: center; border: 0; }
.mobile-menu { visibility:hidden; opacity:0; position:fixed; inset:0; z-index:40; background:var(--foreground); color:var(--primary-foreground); padding:120px 24px 40px; transition:opacity .4s, visibility .4s; }
.mobile-menu-open { visibility:visible; opacity:1; }
.mobile-menu nav { display:flex; flex-direction:column; border-top:1px solid color-mix(in oklab,var(--primary-foreground) 25%,transparent); }
.mobile-menu nav a { display:flex; align-items:baseline; gap:20px; padding:14px 0; border-bottom:1px solid color-mix(in oklab,var(--primary-foreground) 25%,transparent); font:400 clamp(30px,9vw,48px)/1.1 var(--font-serif); }
.mobile-menu nav span { font:400 9px var(--font-sans); letter-spacing:.16em; color:var(--metal); }
.mobile-menu-foot { position:absolute; inset:auto 24px 32px; display:flex; justify-content:space-between; font-size:10px; text-transform:uppercase; letter-spacing:.13em; }
.menu-glyph { display:flex; width:24px; flex-direction:column; gap:6px; }
.menu-glyph i { height:1px; width:100%; background:currentColor; transition:.3s; display:block; }
.menu-glyph-open i:first-child { transform:translateY(3.5px) rotate(45deg); }
.menu-glyph-open i:last-child { transform:translateY(-3.5px) rotate(-45deg); }

/* ---------- home hero ---------- */
.home-hero { height:100svh; min-height:700px; position:relative; color:var(--primary-foreground); }
.home-hero>img { position:absolute; inset:0; height:100%; }
.home-hero::after { content:""; position:absolute; inset:0; background:linear-gradient(to bottom,oklch(0 0 0/.14),oklch(0 0 0/.08) 35%,oklch(0 0 0/.58)); }
.hero-overlay { position:relative; z-index:1; height:100%; padding:18vh 5vw 7vh; display:flex; flex-direction:column; justify-content:flex-end; }
.hero-overlay>p.hero-kicker { order:-1; font-size:10px; text-transform:uppercase; letter-spacing:.22em; margin-bottom:auto; }
.hero-overlay h1 { font-size:clamp(52px,6.5vw,108px); line-height:.94; max-width:1200px; margin-bottom:46px; }
.hero-bottom { display:grid; grid-template-columns:minmax(0,560px) auto; justify-content:space-between; gap:32px; align-items:end; }
.hero-bottom>p { font-size:clamp(15px,1.25vw,20px); line-height:1.6; margin:0; }
.hero-bottom>div { display:flex; gap:10px; }

.facts-strip { display:grid; grid-template-columns:repeat(3,1fr); border-bottom:1px solid var(--border); }
.facts-strip>div { min-height:118px; display:flex; align-items:center; justify-content:center; border-right:1px solid var(--border); text-transform:uppercase; font-size:11px; letter-spacing:.18em; text-align:center; flex-direction: column; }
.facts-strip>div:last-child{border-right:0}
.facts-strip span { display:block; color:var(--muted-foreground); font-size:9px; margin-bottom:9px; }
.facts-strip strong{font-weight:400;}

.dev-strip { padding-block:80px 90px; border-bottom:1px solid var(--border); text-align:center; }
.dev-strip .eyebrow { margin-bottom:35px; }
.dev-names { display:flex; flex-wrap:wrap; justify-content:center; gap:12px 44px; font:400 clamp(22px,3vw,38px) var(--font-serif); color:var(--foreground); }
.dev-names span { white-space:nowrap; }

.section-heading { display:grid; grid-template-columns:1fr 2.2fr; align-items:start; margin-bottom:90px; }
.section-heading h2 { font-size:clamp(46px,6vw,88px); line-height:1; margin:0; }
.section-heading>p { grid-column:2; max-width:540px; line-height:1.8; margin-top:32px; color:var(--muted-foreground); }

.home-residences { padding-block:150px; }
.project-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:clamp(24px,5vw,80px); row-gap:110px; }
.project-card:nth-child(even){ margin-top:130px; }
.project-image { overflow:hidden; aspect-ratio:4/3; }
.project-card:nth-child(3n+2) .project-image { aspect-ratio:3/4; }
.project-image img { height:100%; transition:transform 1s cubic-bezier(.2,.7,.2,1); }
.project-card:hover img{transform:scale(1.025)}
.project-caption{padding-top:18px;border-top:1px solid var(--border);margin-top:12px}
.project-caption h3{font:400 clamp(22px,2vw,31px) var(--font-serif);margin-bottom:7px}
.project-caption p{color:var(--muted-foreground);font-size:12px;margin:0}

.featured-home { padding-block:60px 160px; }
.featured-image{height:min(78vh,900px)}
.featured-image img{height:100%}
.featured-copy{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding-block:80px}
.featured-copy h2{font-size:clamp(52px,7vw,104px);line-height:.92;margin:25px 0 0}
.featured-copy>div:last-child{padding-top:42px;max-width:580px}
.featured-copy p{font-size:17px;line-height:1.85;margin-bottom:40px}
.text-link{display:inline-flex;gap:40px;padding-bottom:9px;border-bottom:1px solid var(--foreground);font-size:11px;text-transform:uppercase;letter-spacing:.16em}
.featured-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.featured-gallery img{height:230px}
.featured-gallery img:nth-child(1),.featured-gallery img:nth-child(6){grid-column:span 2;height:460px}
.featured-gallery img:nth-child(3){grid-row:span 2;height:470px}

.home-craft{padding-block:150px;border-top:1px solid var(--border)}
.craft-media{display:grid;grid-template-columns:2fr 1fr;gap:10px}
.film-placeholder{position:relative;height:720px}
.film-placeholder img{height:100%}
.film-placeholder span{position:absolute;left:20px;bottom:18px;color:var(--primary-foreground);font-size:10px;text-transform:uppercase;letter-spacing:.16em}
.craft-stills{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.craft-stills img{height:355px}

.trusted{padding-block:130px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.trusted-names{display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px;margin:75px 0;font:400 clamp(26px,3vw,45px) var(--font-serif)}
.trusted-foot{display:flex;justify-content:space-between;align-items:end;gap:30px}
.trusted-foot p{margin:0;max-width:470px;color:var(--muted-foreground);line-height:1.7}

.home-approach{padding-block:150px}
.steps{border-top:1px solid var(--border)}
.steps article{display:grid;grid-template-columns:90px 1fr 2fr;gap:30px;padding:35px 0;border-bottom:1px solid var(--border);align-items:start}
.steps span{color:var(--metal);font-size:10px}
.steps h3{font:400 30px var(--font-serif);margin:0}
.steps p{margin:0;max-width:540px;line-height:1.7;color:var(--muted-foreground)}

.contact-close{background:var(--foreground);color:var(--primary-foreground);padding-block:140px}
.contact-close>.shell{display:grid;grid-template-columns:1fr 1.3fr;gap:10vw}
.contact-close h2{font-size:clamp(54px,7vw,96px);margin:35px 0}
.contact-close>div>div>p{max-width:460px;line-height:1.8;color:color-mix(in oklab,var(--primary-foreground) 68%,transparent)}
.contact-close>div>div>a{display:inline-block;margin-top:30px;border-bottom:1px solid var(--metal);padding-bottom:8px}
.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:24px 20px}
.contact-form label{font-size:10px;text-transform:uppercase;letter-spacing:.15em;display:block}
.contact-form input,.contact-form textarea{width:100%;margin-top:10px;background:transparent;border-width:0 0 1px;border-style:solid;border-color:currentColor;border-radius:0;box-shadow:none;padding:8px 0;font:300 14px var(--font-sans);color:inherit;outline:none}
.contact-close input,.contact-close textarea{color:var(--primary-foreground)}
.form-wide{grid-column:1/-1}
.form-submit{display:flex;align-items:center;gap:22px}
.form-submit p{font-size:11px;margin:0;color:var(--metal)}

.page-intro{padding-top:210px;padding-bottom:110px;border-bottom:1px solid var(--border)}
.page-intro>div{display:grid;grid-template-columns:2fr 1fr;gap:8vw;align-items:end;margin-top:58px}
.page-intro h1{font-size:clamp(54px,7.5vw,112px);line-height:.96;margin:0;max-width:1000px}
.page-intro>div p{line-height:1.8;margin:0;max-width:420px}
.filters{display:flex;gap:38px;padding:42px 0 60px}
.filters button{border:0;background:none;padding:0 0 5px;font:400 10px var(--font-sans);letter-spacing:.15em;text-transform:uppercase;color:var(--muted-foreground);cursor:pointer}
.filters .filter-active{color:var(--foreground);border-bottom:1px solid}
.project-grid-dense{grid-template-columns:repeat(3,1fr);gap:70px 18px;padding-bottom:150px}
.project-grid-dense .project-card{margin-top:0}
.project-grid-dense .project-image{aspect-ratio:4/5}

.project-hero{height:100svh;min-height:700px;position:relative;color:var(--primary-foreground)}
.project-hero>img{height:100%}
.project-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,oklch(0 0 0/.6),transparent 55%)}
.project-hero-title{position:absolute;z-index:1;left:5vw;bottom:7vh}
.project-hero-title h1{font-size:clamp(58px,8vw,118px);line-height:.95;margin:25px 0 0}
.project-facts{grid-template-columns:repeat(5,1fr)}
.project-story{padding-block:140px;display:grid;grid-template-columns:1fr 2fr;gap:8vw}
.project-story p{font:400 clamp(28px,3vw,44px)/1.45 var(--font-serif);margin:0}
.gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:12px}
.gallery img{grid-column:span 6;height:580px}
.gallery img:nth-child(3n+2){grid-column:span 5;height:700px}
.gallery img:nth-child(3n+3){grid-column:span 7;height:700px}
.materials{padding-block:140px}
.materials>div{margin-top:55px;border-top:1px solid var(--border)}
.materials p{display:grid;grid-template-columns:100px 1fr;padding:20px 0;border-bottom:1px solid var(--border);font:400 28px var(--font-serif);margin:0}
.materials span{font:400 9px var(--font-sans);color:var(--metal)}
.next-project{display:block;position:relative;height:70vh;min-height:560px;color:var(--primary-foreground);overflow:hidden;padding:60px 5vw}
.next-project img{position:absolute;inset:0;z-index:-2;height:100%;transition:transform 1s}
.next-project::after{content:"";position:absolute;inset:0;z-index:-1;background:oklch(0 0 0/.35)}
.next-project h2{position:absolute;left:5vw;bottom:60px;font-size:clamp(54px,8vw,120px);margin:0}
.next-project:hover img{transform:scale(1.025)}

.hospitality-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px 30px;padding-block:110px 150px}
.hospitality-grid article:nth-child(even){margin-top:100px}
.hospitality-grid img{aspect-ratio:4/3}
.hospitality-grid article div{padding-top:18px;border-top:1px solid var(--border);margin-top:10px}
.hospitality-grid h2{font-size:34px;margin-bottom:8px}
.hospitality-grid p{color:var(--muted-foreground);line-height:1.6}

.craft-lead{display:grid;grid-template-columns:1.6fr 1fr;gap:8vw;align-items:center;padding-block:120px}
.craft-lead img{height:720px}
.craft-lead h2{font-size:clamp(44px,5vw,76px);line-height:1;margin:35px 0}
.craft-lead p,.craft-columns p,.dubai-delivery p{line-height:1.8;color:var(--muted-foreground)}
.craft-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding-bottom:140px}
.craft-columns img{height:430px}
.craft-columns h3{font:400 28px var(--font-serif);margin:22px 0 10px}
.dubai-delivery{background:var(--secondary);padding-block:130px}
.dubai-delivery h2{font-size:clamp(36px,5vw,70px);line-height:1.15;max-width:1100px;margin:50px 0}
.dubai-delivery p{max-width:670px}

.timeline{padding-block:80px 150px}
.timeline article{display:grid;grid-template-columns:100px 1fr;border-top:1px solid var(--border);padding:60px 0}
.timeline>article:last-child{border-bottom:1px solid var(--border)}
.timeline>article>span{color:var(--metal);font-size:11px}
.timeline h2{font-size:clamp(46px,6vw,84px);margin-bottom:24px}
.timeline h3{font-weight:400;font-size:19px;margin-bottom:18px}
.timeline p{max-width:670px;line-height:1.8;color:var(--muted-foreground)}

.studio-image{height:80vh;min-height:600px}
.studio-image img{height:100%}
.studio-copy{padding-block:130px}
.studio-copy>h1{font-size:clamp(52px,7vw,100px);max-width:1000px;line-height:1;margin:50px 0 100px}
.studio-body{display:grid;grid-template-columns:1fr 1fr;gap:4vw;margin-left:25%}
.studio-body p{font-size:17px;line-height:1.8}
.studio-body p.muted{color:var(--muted-foreground)}
.studio-facts{border-top:1px solid var(--border)}
.studio-reach{padding-block:90px;border-top:1px solid var(--border);text-align:center}
.studio-reach p{font:400 clamp(22px,3vw,34px)/1.35 var(--font-serif);max-width:820px;margin:0 auto;color:var(--foreground)}
.studio-moments{padding-block:110px 140px}
.studio-moments h2{font-size:clamp(38px,4.5vw,64px);line-height:1.05;max-width:760px;margin-top:45px}
.studio-moments>p{font-size:17px;line-height:1.8;max-width:560px;margin-top:28px;color:var(--muted-foreground)}
.studio-moments-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:70px}
.studio-moments-grid img{width:100%;height:100%;aspect-ratio:16/9;object-fit:cover}

.contact-page{min-height:90vh;padding-top:210px;padding-bottom:150px;display:grid;grid-template-columns:1fr 1.2fr;gap:10vw}
.contact-details h1{font-size:clamp(60px,7vw,105px);line-height:.95;margin:45px 0}
.contact-details>p{max-width:480px;line-height:1.8}
.contact-list{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:80px;border-top:1px solid var(--border);padding-top:25px}
.contact-list span{display:block;text-transform:uppercase;font-size:9px;letter-spacing:.15em;color:var(--muted-foreground);margin-bottom:15px}
.contact-list a,.contact-list address{line-height:1.7}
.contact-list small{display:block;margin-top:12px;color:var(--muted-foreground);line-height:1.5}
.contact-list>a{display:block;margin-bottom:6px}
.contact-list .contact-second-line{display:block;margin-top:8px;color:var(--muted-foreground)}
.contact-list .contact-secondary{margin-top:28px;padding-top:18px;border-top:1px solid var(--border)}
.contact-form-wrap{padding-top:55px}

.site-footer{background:var(--foreground);color:var(--primary-foreground);padding:100px 5vw 32px}
.footer-top{display:flex;justify-content:space-between;align-items:start;padding-bottom:80px;border-bottom:1px solid color-mix(in oklab,var(--primary-foreground) 20%,transparent)}
.footer-top p{font:400 clamp(30px,4vw,52px)/1.15 var(--font-serif);margin:0}
.footer-links{display:grid;grid-template-columns:1fr 1fr;padding:60px 0 100px}
.footer-links nav{display:flex;flex-direction:column;align-items:start;gap:12px}
.footer-links nav a,.footer-links>div{font-size:12px;line-height:2}
.footer-links address{color:color-mix(in oklab,var(--primary-foreground) 60%,transparent);margin-top:20px}
.footer-bottom{display:flex;justify-content:space-between;text-transform:uppercase;font-size:9px;letter-spacing:.14em;color:color-mix(in oklab,var(--primary-foreground) 55%,transparent)}

.whatsapp-float{position:fixed;z-index:35;right:20px;bottom:20px;width:54px;height:54px;display:none;place-items:center;background:var(--foreground);color:var(--primary-foreground);border:1px solid var(--metal);font-size:10px;letter-spacing:.12em}

@media (max-width:900px){
  .shell{width:min(100% - 32px,1380px)}
  .site-header{height:68px;padding:0 16px;grid-template-columns:1fr auto}
  .desktop-nav,.header-cta{display:none}
  .menu-trigger{display:inline-flex}
  .home-hero{min-height:650px}
  .hero-overlay{padding:110px 20px 35px;justify-content:flex-end}
  .hero-overlay>p{margin-bottom:auto}
  .hero-overlay h1{font-size:clamp(43px,12vw,64px);line-height:.98;margin-bottom:28px}
  .hero-overlay h1 br{display:none}
  .hero-bottom{display:flex;flex-direction:column;align-items:start;gap:25px}
  .hero-bottom>p{font-size:14px;line-height:1.6}
  .hero-bottom>div{width:100%;display:grid;grid-template-columns:1fr 1fr}
  .hero-bottom a{padding-inline:10px}
  .facts-strip>div{min-height:90px;padding:12px;font-size:9px;letter-spacing:.1em}
  .dev-strip{padding-block:60px 65px}
  .dev-names{gap:10px 28px;font-size:26px}
  .section-heading{display:block;margin-bottom:50px}
  .section-heading h2{margin-top:32px;font-size:48px}
  .section-heading>p{margin-top:24px}
  .home-residences{padding-block:90px}
  .project-grid{grid-template-columns:1fr;row-gap:58px}
  .project-card:nth-child(even){margin-top:0}
  .project-card:nth-child(3n+2) .project-image{aspect-ratio:4/5}
  .project-caption h3{font-size:25px}
  .featured-home{padding:0 0 90px}
  .featured-image{height:68vh}
  .featured-copy{display:block;padding-block:65px}
  .featured-copy h2{font-size:55px}
  .featured-copy>div:last-child{padding-top:40px}
  .featured-copy p{font-size:15px}
  .featured-gallery{grid-template-columns:1fr 1fr;gap:5px}
  .featured-gallery img,.featured-gallery img:nth-child(1),.featured-gallery img:nth-child(3n+2),.featured-gallery img:nth-child(3n+3),.featured-gallery img:nth-child(6){grid-column:span 1;height:210px}
  .featured-gallery img:nth-child(3n+2){height:300px}
  .home-craft{padding-block:90px}
  .craft-media{grid-template-columns:1fr}
  .film-placeholder{height:58vh}
  .craft-stills{gap:5px}
  .craft-stills img{height:180px}
  .trusted{padding-block:90px}
  .trusted-names{justify-content:flex-start;margin:55px 0}
  .trusted-foot{display:block}
  .trusted-foot .text-link{margin-top:30px}
  .home-approach{padding-block:90px}
  .steps article{grid-template-columns:45px 1fr}
  .steps p{grid-column:2;margin-top:12px}
  .contact-close{padding-block:90px}
  .contact-close>.shell{grid-template-columns:1fr}
  .contact-close h2{font-size:58px}
  .contact-close .contact-form{margin-top:70px}
  .page-intro{padding-top:145px;padding-bottom:75px}
  .page-intro>div{display:block;margin-top:40px}
  .page-intro h1{font-size:55px}
  .page-intro>div p{margin-top:30px}
  .filters{gap:22px;overflow-x:auto}
  .project-grid-dense{grid-template-columns:1fr;gap:58px;padding-bottom:90px}
  .project-hero{min-height:650px}
  .project-hero-title{left:20px;bottom:42px}
  .project-hero-title h1{font-size:54px}
  .project-facts{grid-template-columns:1fr 1fr}
  .project-facts>div{border-bottom:1px solid var(--border)}
  .project-facts>div:last-child{grid-column:1/-1}
  .project-story{display:block;padding-block:90px}
  .project-story p{margin-top:35px;font-size:28px}
  .gallery{gap:5px}
  .gallery img,.gallery img:nth-child(3n+2),.gallery img:nth-child(3n+3){grid-column:span 12;height:58vh}
  .gallery img:nth-child(even){height:72vh}
  .materials{padding-block:90px}
  .next-project{height:60vh}
  .hospitality-grid{grid-template-columns:1fr;gap:70px;padding-block:80px}
  .hospitality-grid article:nth-child(even){margin-top:0}
  .craft-lead{grid-template-columns:1fr;padding-block:80px}
  .craft-lead img{height:60vh}
  .craft-lead div{order:-1}
  .craft-columns{grid-template-columns:1fr;padding-bottom:90px;gap:55px}
  .craft-columns img{height:55vh}
  .dubai-delivery{padding-block:90px}
  .timeline{padding-block:50px 90px}
  .timeline article{grid-template-columns:45px 1fr;padding:40px 0}
  .studio-image{height:65vh}
  .studio-copy{padding-block:90px}
  .studio-copy>h1{margin:40px 0 65px;font-size:52px}
  .studio-body{grid-template-columns:1fr;margin-left:0}
  .studio-moments{padding-block:90px}
  .studio-moments-grid{grid-template-columns:1fr;gap:5px;margin-top:50px}
  .contact-page{padding-top:150px;display:block}
  .contact-details h1{font-size:60px}
  .contact-list{margin-top:60px}
  .contact-form-wrap{padding-top:80px}
  .site-footer{padding:80px 20px 28px}
  .footer-top{display:block}
  .footer-top p{margin-top:60px;font-size:35px}
  .footer-links{grid-template-columns:1fr;padding:50px 0 80px;gap:50px}
  .footer-bottom{gap:20px}
  .whatsapp-float{display:grid}
}
@media (max-width:520px){
  .contact-form{grid-template-columns:1fr}
  .form-wide{grid-column:auto}
  .mobile-menu-foot{flex-direction:column;gap:8px}
  .contact-list{grid-template-columns:1fr}
  .hero-bottom>div{grid-template-columns:1fr}
  .hero-bottom a{width:100%}
  .home-hero{min-height:760px}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
