/* =========================================================
   A WALD STUDIO — FINAL HERO ALIGNMENT + LIQUID GLASS LOCK
   18 July 2026
   This stylesheet is intentionally loaded last.
   ========================================================= */
:root{
  --aw-edge:clamp(32px,3.5vw,54px);
  --aw-hero-ink:#f4efe7;
  --aw-muted:#c6c0b8;
  --aw-bronze:#c7ad87;
}

/* One shared left edge for the visible logo and all hero copy. */
header{
  height:100px!important;
  padding:14px var(--aw-edge)!important;
  grid-template-columns:minmax(160px,1fr) auto minmax(160px,1fr)!important;
}
header.scrolled{height:82px!important}
.brand{
  display:flex!important;
  align-items:center!important;
  justify-self:start!important;
  margin:0!important;
  transform:none!important;
}
.brand img{
  display:block!important;
  width:auto!important;
  height:80px!important;
  max-height:80px!important;
  object-fit:contain!important;
}

.hero.hero-static-background{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:100px var(--aw-edge) 18px!important;
  grid-template-rows:minmax(0,1fr) 52px!important;
}
.hero.hero-static-background .hero-main{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:clamp(114px,15vh,154px) 0 clamp(54px,7vh,74px)!important;
  display:grid!important;
  grid-template-columns:minmax(600px,46%) minmax(430px,54%)!important;
  gap:clamp(18px,2vw,34px)!important;
  align-items:flex-start!important;
  justify-items:start!important;
}
.hero.hero-static-background .hero-copy{
  width:660px!important;
  max-width:46vw!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  align-self:flex-start!important;
  justify-self:start!important;
}
.hero.hero-static-background .hero-copy .eyebrow{
  margin:0 0 10px!important;
  font-size:10px!important;
  line-height:1.12!important;
  letter-spacing:.255em!important;
  color:var(--aw-bronze)!important;
}
.hero.hero-static-background .hero-copy h1,
.hero.hero-static-background .hero-copy h1 span{
  font-family:"DM Serif Display",Georgia,"Times New Roman",serif!important;
  font-weight:400!important;
  font-style:normal!important;
  color:var(--aw-hero-ink)!important;
  font-synthesis:none!important;
  text-rendering:optimizeLegibility!important;
  -webkit-font-smoothing:antialiased!important;
}
.hero.hero-static-background .hero-copy h1{
  width:100%!important;
  max-width:650px!important;
  margin:0!important;
  font-size:clamp(72px,5.7vw,96px)!important;
  line-height:.89!important;
  letter-spacing:-.045em!important;
  text-wrap:initial!important;
  white-space:normal!important;
  text-shadow:0 10px 30px rgba(0,0,0,.22)!important;
}
.hero.hero-static-background .hero-copy h1 span{
  display:block!important;
  width:max-content!important;
  max-width:100%!important;
  margin:0!important;
  white-space:nowrap!important;
}
.hero.hero-static-background .hero-copy h1 span + span{
  margin-top:-.025em!important;
}
.hero.hero-static-background .hero-copy .lead{
  max-width:560px!important;
  margin:18px 0 22px!important;
  font-size:15.8px!important;
  line-height:1.62!important;
  color:var(--aw-muted)!important;
}
.hero.hero-static-background .hero-actions{
  display:flex!important;
  align-items:center!important;
  gap:20px!important;
  margin:0!important;
}
.hero.hero-static-background .hero-actions .glass-btn{
  padding:12px 18px!important;
}
.hero.hero-static-background .hero-actions .text-link{
  font-size:10.5px!important;
  letter-spacing:.17em!important;
}
.hero-art-background img{
  object-position:58% 50%!important;
  transform:scale(1)!important;
}
.hero.hero-static-background .designed-row{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:10px 0 0 215px!important;
  min-height:42px!important;
  grid-template-columns:130px repeat(5,minmax(86px,1fr))!important;
  gap:14px!important;
  font-size:10px!important;
  letter-spacing:.165em!important;
}

/* iPhone-style liquid glass: mostly transparent, with restrained edges. */
.glass-btn,
.contact-float,
.aw-concierge-launcher{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.085)!important;
  background:
    radial-gradient(120% 160% at 18% -24%,rgba(255,255,255,.095),transparent 46%),
    linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.018))!important;
  backdrop-filter:blur(20px) saturate(185%) brightness(1.08)!important;
  -webkit-backdrop-filter:blur(20px) saturate(185%) brightness(1.08)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.22),
    inset 0 -1px 0 rgba(255,255,255,.025),
    0 14px 36px rgba(0,0,0,.22)!important;
}
.glass-btn::before,
.contact-float::before,
.aw-concierge-launcher::before{
  content:""!important;
  position:absolute!important;
  z-index:-1!important;
  inset:1px!important;
  border-radius:inherit!important;
  pointer-events:none!important;
  background:linear-gradient(115deg,transparent 18%,rgba(255,255,255,.08) 42%,transparent 64%)!important;
  opacity:.22!important;
}
.glass-btn:hover,
.contact-float:hover,
.aw-concierge-launcher:hover{
  border-color:rgba(255,255,255,.13)!important;
  background:
    radial-gradient(120% 160% at 18% -24%,rgba(255,255,255,.12),transparent 46%),
    linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.025))!important;
}
.glass-btn.primary,
.header-cta,
.whatsapp-float,
.email-float{
  background:
    radial-gradient(120% 160% at 18% -24%,rgba(255,255,255,.095),transparent 46%),
    linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.018))!important;
}
.contact-float-stack{
  right:18px!important;
  bottom:18px!important;
  gap:10px!important;
}
.contact-float{
  min-height:50px!important;
  padding:8px 14px 8px 8px!important;
  color:#f1ebe2!important;
}
.contact-icon,
.aw-concierge-launcher-mark{
  border:1px solid rgba(255,255,255,.075)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.018))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16)!important;
}
.contact-icon{width:33px!important;height:33px!important}
.email-float .contact-icon{
  color:#e8d8c1!important;
  border-color:rgba(255,255,255,.075)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.018))!important;
}
.whatsapp-float .whatsapp-icon{
  color:#83dfa6!important;
  border-color:rgba(255,255,255,.075)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.018))!important;
}
.whatsapp-float .whatsapp-icon .wa-bubble{fill:rgba(131,223,166,.045)!important}
.contact-label{
  font-size:8.8px!important;
  letter-spacing:.145em!important;
  color:#f1ebe2!important;
}
.aw-concierge-launcher{
  left:18px!important;
  bottom:18px!important;
  min-height:50px!important;
  padding:8px 15px 8px 8px!important;
  border-radius:999px!important;
}
.aw-concierge-launcher-copy strong{
  font-size:13px!important;
  letter-spacing:.012em!important;
  color:#f1ebe2!important;
}
.aw-concierge-launcher-mark img{width:24px!important;height:24px!important}

@media (max-width:1400px) and (min-width:921px){
  .hero.hero-static-background .hero-main{
    grid-template-columns:minmax(550px,46%) minmax(380px,54%)!important;
  }
  .hero.hero-static-background .hero-copy{
    width:620px!important;
    max-width:46vw!important;
  }
  .hero.hero-static-background .hero-copy h1{
    max-width:600px!important;
    font-size:clamp(66px,5.45vw,88px)!important;
  }
  .hero.hero-static-background .hero-copy .lead{
    max-width:525px!important;
    font-size:15.2px!important;
  }
}
@media (max-width:1120px) and (min-width:921px){
  .hero.hero-static-background .hero-main{
    padding-top:clamp(100px,14vh,126px)!important;
    grid-template-columns:minmax(470px,47%) minmax(330px,53%)!important;
  }
  .hero.hero-static-background .hero-copy{width:520px!important;max-width:47vw!important}
  .hero.hero-static-background .hero-copy h1{
    max-width:510px!important;
    font-size:clamp(57px,5vw,74px)!important;
  }
  .hero.hero-static-background .hero-copy .lead{
    max-width:470px!important;
    font-size:14.8px!important;
  }
  .hero.hero-static-background .designed-row{
    padding-left:180px!important;
    grid-template-columns:112px repeat(5,minmax(72px,1fr))!important;
  }
}
@media (max-width:920px){
  header{height:82px!important;padding:10px 4vw!important}
  .brand img{height:62px!important;max-height:62px!important}
  .hero.hero-static-background{
    padding:92px 4vw 20px!important;
  }
  .hero.hero-static-background .hero-main{
    padding:74px 0 48px!important;
    grid-template-columns:1fr!important;
  }
  .hero.hero-static-background .hero-copy{
    width:100%!important;
    max-width:100%!important;
  }
  .hero.hero-static-background .hero-copy h1{
    font-size:clamp(48px,11vw,68px)!important;
    line-height:.91!important;
  }
  .hero.hero-static-background .hero-copy h1 span{
    width:auto!important;
    white-space:normal!important;
  }
  .hero.hero-static-background .designed-row{
    padding-left:0!important;
  }
  .contact-float-stack{right:12px!important;bottom:12px!important}
  .aw-concierge-launcher{left:12px!important;bottom:12px!important}
}

/* Chatbot position lock — keep launcher pinned to viewport */
.aw-concierge-launcher{
  position:fixed!important;
  z-index:1200!important;
}
.aw-concierge-panel{
  position:fixed!important;
  z-index:1210!important;
}

/* =========================================================
   v3.26 — QA refinement pass based on visual review
   ========================================================= */

body:not(.inner-page) .brand img{
  height:92px!important;
  max-height:92px!important;
}
body:not(.inner-page) header.scrolled .brand img{
  height:76px!important;
  max-height:76px!important;
}

.hero.hero-static-background .designed-row{
  padding:10px 0 0 clamp(260px,19vw,320px)!important;
  grid-template-columns:118px repeat(5,minmax(88px,1fr))!important;
  gap:16px!important;
}
.hero.hero-static-background .designed-row span{
  white-space:nowrap;
}

.kinetic-window{overflow:hidden!important}
.kinetic-track{
  gap:0!important;
  animation:marqueeContinuous 38s linear infinite!important;
  will-change:transform;
}
.kinetic-group{padding-right:34px!important}
@keyframes marqueeContinuous{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-33.333%,0,0)}
}

.world-section{
  --world-backdrop-image:url('assets/hospitality.jpg');
  isolation:isolate;
}
.world-section::before{
  content:"";
  position:absolute;
  inset:2% 0 6%;
  z-index:0;
  pointer-events:none;
  background-image:var(--world-backdrop-image);
  background-size:cover;
  background-position:center;
  filter:blur(52px) saturate(.9);
  opacity:.18;
  transform:scale(1.08);
  transition:background-image .45s ease, opacity .35s ease;
}
.world-section::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(5,6,8,.38),rgba(5,6,8,.72) 28%,rgba(5,6,8,.86) 100%);
}
.world-section > *{position:relative;z-index:1}
.sticky-world,.world-canvas,.world-steps article,.value-card,.project-media,.floating-frame,.contact-shell,.system-visual,.service-tier{
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  transform:translateZ(0);
}

.value-card{
  will-change:transform;
  transition:transform .28s ease, background .28s ease, border-color .28s ease!important;
}
.value-card:hover{transform:translateY(-5px)!important}

.architectural-system .architecture-link{
  display:none!important;
}
.architectural-system .architecture-grid{opacity:.35!important}
.architectural-system .architecture-scene,
.architectural-system .glass-slab,
.architectural-system .architecture-core,
.architectural-system .architecture-node{
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}
.system-visual,
.contact-shell,
.project-form,
.project-form label,
.glass-select,
.project-form input,
.project-form textarea,
.project-form select{
  background-clip:padding-box;
}
.contact-shell{
  overflow:hidden!important;
  background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.022))!important;
  box-shadow:0 36px 100px rgba(0,0,0,.26)!important;
}
.project-form{
  position:relative;
  isolation:isolate;
}
.project-form input,
.project-form textarea,
.project-form select,
.glass-select{
  box-shadow:none!important;
}

.work-hero .lens-mini{
  width:208px!important;
  height:208px!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-46%)!important;
  z-index:3!important;
}
.work-hero .lens-mini img{width:66px!important}
.work-hero .ff3{right:10%!important;bottom:4%!important}
.project-media,
.work-card,
.work-image,
.floating-frame{
  overflow:hidden!important;
}
.project-media::after,
.work-card::before,
.floating-frame::before{
  border-radius:inherit!important;
}

.services-hero{position:relative;isolation:isolate;overflow:hidden}
.services-hero::before{
  content:"";
  position:absolute;
  inset:10% 0 4% 44%;
  z-index:0;
  pointer-events:none;
  background:url('assets/hero-signature.jpg') center/cover no-repeat;
  opacity:.14;
  filter:blur(34px) saturate(.82);
  border-radius:42px;
}
.services-hero > *{position:relative;z-index:1}
.service-orbit::before{
  content:"";
  position:absolute;
  inset:12%;
  border-radius:50%;
  background:radial-gradient(circle at 50% 50%,rgba(198,161,107,.10),transparent 58%);
  filter:blur(18px);
  pointer-events:none;
}
.service-tier{
  transform:none!important;
  transform-style:flat!important;
  will-change:auto!important;
  transition:transform .22s ease, border-color .24s ease, box-shadow .24s ease, background .24s ease!important;
}
.service-tier.featured{transform:none!important}
.service-tier:hover{
  transform:translateY(-6px)!important;
}
.service-tier > *{transform:none!important}

.service-detail-panel{padding-top:24px!important}
.detail-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  margin-top:28px;
}
.detail-card{
  padding:28px;
  border-radius:30px;
  border:1px solid rgba(255,255,255,.11);
  background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.022));
  box-shadow:0 24px 72px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.12);
}
.detail-card span{
  display:block;
  margin-bottom:12px;
  font-size:10px;
  letter-spacing:.17em;
  text-transform:uppercase;
  color:#c7ad87;
}
.detail-card h3{margin:0 0 18px}
.detail-card ul{margin:0;padding-left:18px;display:grid;gap:10px}
.detail-card li{color:#bdb8b0;line-height:1.65}
.detail-note{
  margin-top:18px;
  padding:18px 22px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:20px;
  background:rgba(255,255,255,.03);
}
.detail-note p{margin:0;color:#c6c0b8;line-height:1.7}

.process-dial{
  animation:processDialSpin 24s linear infinite!important;
  transform-origin:50% 50%;
  border-color:rgba(255,255,255,.18)!important;
}
.dial-core{
  background:linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.03))!important;
  box-shadow:0 18px 52px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.16)!important;
}
.dial-core img{
  width:64px;
  height:64px;
  object-fit:contain;
  filter:drop-shadow(0 2px 8px rgba(0,0,0,.28));
}
@keyframes processDialSpin{
  from{transform:rotate(0deg)}
  to{transform:rotate(360deg)}
}

.aw-concierge-launcher{
  min-width:208px!important;
}
.aw-concierge-launcher-mark,
.aw-concierge-mark{
  display:grid!important;
  place-items:center!important;
}
.aw-concierge-launcher-mark img,
.aw-concierge-mark img{
  display:block!important;
  margin:auto!important;
}
.aw-concierge-brand small{
  font-size:9.5px!important;
  letter-spacing:.02em!important;
  color:#ddd5ca!important;
}
.aw-concierge-close{
  width:36px!important;
  height:36px!important;
  border:1px solid rgba(255,255,255,.10)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.025))!important;
  font-size:23px!important;
  line-height:1!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 8px 20px rgba(0,0,0,.12)!important;
}
.aw-concierge-input-label{display:none!important}
.aw-concierge-form{
  min-height:56px!important;
  padding:7px 7px 7px 14px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.095),rgba(6,9,13,.12))!important;
}
.aw-concierge-form::before{opacity:.32!important}
.aw-concierge-input-shell{min-height:42px!important}
.aw-concierge-form textarea{
  height:42px!important;
  min-height:42px!important;
  max-height:88px!important;
  padding:11px 2px 11px 2px!important;
  font-size:11px!important;
  line-height:1.48!important;
}
.aw-concierge-form.is-active textarea{padding-left:2px!important}
.aw-concierge-form textarea::placeholder{opacity:.62!important}
.aw-concierge-form button{
  width:40px!important;
  height:40px!important;
}
.aw-concierge-panel{
  height:min(488px,calc(100dvh - 32px))!important;
}

@media (max-width:1100px){
  .detail-grid{grid-template-columns:1fr!important}
}
@media (max-width:920px){
  body:not(.inner-page) .brand img{height:70px!important;max-height:70px!important}
  .hero.hero-static-background .designed-row{
    padding-left:0!important;
    grid-template-columns:repeat(2,1fr)!important;
    gap:12px!important;
  }
}
