@font-face{
  font-family:Manrope;
  src:url('/fonts/manrope-latin.woff2') format('woff2');
  font-weight:200 800;
  font-display:swap}
@font-face{
  font-family:Manrope;
  src:url('/fonts/manrope-latin-ext.woff2') format('woff2');
  font-weight:200 800;
  font-display:swap;
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{
  font-family:Cormorant;
  src:url('/fonts/cormorant-latin.woff2') format('woff2');
  font-weight:300 700;
  font-display:swap}
@font-face{
  font-family:Cormorant;
  src:url('/fonts/cormorant-latin-ext.woff2') format('woff2');
  font-weight:300 700;
  font-display:swap;
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root{
  --forest:#142d23;
  --deep:#0b2119;
  --ivory:#f5f3ec;
  --sand:#e6e1d5;
  --gold:#b7a77e;
  --ink:#222923;
  --muted:#59655d;
  --line:rgba(20,45,35,.17);
  --serif:Cormorant,Georgia,serif;
  --sans:Manrope,Arial,sans-serif}
*{
  box-sizing:border-box}
html{
  scroll-behavior:smooth;
  scroll-padding-top:100px}
body{
  margin:0;
  background:var(--ivory);
  color:var(--ink);
  font-family:var(--sans);
  font-size:14px;
  line-height:1.7}
a{
  color:inherit;
  text-decoration:none}
button,input,textarea,select{
  font:inherit}
button,a{
  -webkit-tap-highlight-color:transparent}
button{
  cursor:pointer}
img{
  object-fit:cover}
::selection{
  background:var(--forest);
  color:var(--ivory)}
:focus-visible{
  outline:2px solid #947b41;
  outline-offset:5px}
h1,h2,h3,p{
  margin:0}
h1,h2{
  font-family:var(--serif);
  font-weight:500;
  line-height:1.04;
  letter-spacing:-.035em}
h1{
  font-size:clamp(46px,5.8vw,90px)}
h2{
  font-size:clamp(38px,4vw,65px)}
h3{
  font-weight:500;
  line-height:1.3}
p{
  color:var(--muted)}
.container{
  width:min(1280px,calc(100% - 112px));
  margin-inline:auto}
.section-space{
  padding-block:112px}
.section-bottom{
  padding-bottom:100px}
.eyebrow{
  display:block;
  font-size:10px;
  letter-spacing:.16em;
  font-weight:650;
  line-height:1.5;
  text-transform:uppercase}
.tiny-label{
  font-size:9px;
  letter-spacing:.1em;
  color:var(--muted)}
.header{
  position:relative;
  z-index:50;
  background:var(--ivory);
  border-bottom:1px solid var(--line)}
.header-inner{
  max-width:1480px;
  margin:auto;
  padding:24px 48px;
  display:flex;
  align-items:center;
  gap:32px;
  min-height:94px}
.brand{
  display:inline-flex;
  align-items:center;
  gap:15px;
  color:var(--forest);
  flex-shrink:0}
.brand-word{
  font-size:42px;
  letter-spacing:-.06em;
  line-height:1;
  font-weight:700}
.brand-dot{
  color:#927d4e}
.brand-caption{
  border-left:1px solid var(--line);
  padding-left:14px;
  font-size:8px;
  letter-spacing:.15em;
  line-height:1.6;
  font-weight:700}
.brand-light{
  color:var(--ivory)}
.brand-light .brand-caption{
  border-color:#ffffff40}
.desktop-nav{
  display:flex;
  gap:26px;
  align-items:center;
  margin-left:auto}
.desktop-nav a{
  font-size:11px;
  font-weight:600;
  position:relative;
  padding-block:6px;
  white-space:nowrap}
.desktop-nav a:after{
  content:'';
  position:absolute;
  bottom:0;
  left:0;
  height:1px;
  width:0;
  background:var(--forest);
  transition:width .2s}
.desktop-nav a:hover:after,.desktop-nav a[aria-current=page]:after{
  width:100%}
.header-cta{
  display:flex;
  align-items:center;
  gap:22px;
  background:var(--forest);
  color:var(--ivory);
  padding:12px 20px;
  font-size:11px;
  white-space:nowrap}
.menu-toggle{
  display:none;
  background:none;
  border:none;
  color:var(--forest);
  padding:10px}
.mobile-menu{
  position:absolute;
  top:100%;
  left:0;
  right:0;
  background:var(--ivory);
  padding:24px;
  box-shadow:0 20px 30px #0002}
.mobile-menu a{
  display:flex;
  align-items:center;
  gap:18px;
  padding:18px 0;
  border-bottom:1px solid var(--line);
  font-size:19px}
.mobile-menu a span{
  font-size:10px;
  color:var(--muted)}
.mobile-menu a svg{
  margin-left:auto}
.mobile-menu p{
  padding-block:24px;
  font-size:11px}
.hero{
  position:relative;
  height:min(780px,calc(100svh - 94px));
  min-height:580px;
  background:var(--forest);
  color:var(--ivory);
  isolation:isolate}
.hero-image{
  z-index:-2;
  object-position:center 56%}
.hero-shade{
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(90deg,rgba(7,25,18,.82) 0%,rgba(7,25,18,.46) 50%,rgba(7,25,18,.04) 100%),linear-gradient(0deg,rgba(7,25,18,.65),transparent 40%)}
.hero-content{
  padding-top:clamp(90px,10vh,140px)}
.hero .eyebrow{
  display:flex;
  align-items:center;
  gap:15px;
  color:#e2dbc8}
.gold-line{
  width:34px;
  height:1px;
  background:var(--gold)}
.hero h1{
  max-width:690px;
  margin-top:28px;
  margin-bottom:24px;
  font-size:clamp(56px,6.4vw,94px);
  line-height:1.03}
.hero p{
  max-width:365px;
  color:#e9ece5;
  font-size:14px;
  line-height:1.9}
.actions{
  display:flex;
  align-items:center;
  gap:28px;
  flex-wrap:wrap;
  margin-top:32px}
.button{
  display:inline-flex;
  gap:24px;
  align-items:center;
  justify-content:center;
  padding:16px 24px;
  min-height:52px;
  font-size:11px;
  font-weight:650;
  border:1px solid transparent;
  transition:background .2s,transform .2s}
.button:hover{
  transform:translateY(-2px)}
.button.ivory{
  background:var(--ivory);
  color:var(--forest)}
.button.green{
  background:var(--forest);
  color:var(--ivory)}
.button.outline{
  border-color:#ffffff60;
  color:var(--ivory)}
.button.bordered{
  border-color:var(--line);
  color:var(--forest)}
.hero-secondary{
  display:inline-flex;
  align-items:center;
  gap:18px;
  font-size:11px;
  padding:15px 0;
  border-bottom:1px solid #ffffff60}
.hero-bottom{
  position:absolute;
  bottom:37px;
  left:0;
  right:0;
  display:flex;
  justify-content:space-between;
  font-size:9px;
  letter-spacing:.15em;
  color:#f1efdf}
.hero-bottom a{
  display:flex;
  align-items:center;
  gap:14px}
.section-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-bottom:44px}
.philosophy-grid{
  display:grid;
  grid-template-columns:1.3fr 1fr;
  gap:100px;
  align-items:center}
.philosophy h2{
  max-width:610px}
.lead{
  font-size:15px;
  line-height:2}
.text-link{
  display:inline-flex;
  align-items:center;
  gap:28px;
  font-size:11px;
  font-weight:650;
  border-bottom:1px solid var(--line);
  padding-block:10px;
  color:var(--forest)}
.philosophy .text-link{
  margin-top:22px}
.principles{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:25px;
  margin-top:68px}
.principles>div{
  border-top:1px solid var(--line);
  padding-top:18px}
.principles span{
  font-size:9px;
  color:#826f42}
.principles p{
  margin-top:11px;
  color:var(--forest);
  font-size:11px;
  font-weight:600;
  max-width:130px}
.services-section{
  background:#ebe9e0}
.section-heading{
  display:flex;
  gap:80px;
  justify-content:space-between;
  align-items:center;
  margin-bottom:52px}
.section-heading h2{
  max-width:630px}
.section-heading>p{
  max-width:300px;
  line-height:1.9;
  font-size:12px}
.service-list{
  border-top:1px solid var(--line)}
.service-row{
  display:flex;
  align-items:center;
  gap:32px;
  padding:27px 5px;
  border-bottom:1px solid var(--line);
  transition:padding .25s,background .25s}
.service-row:hover{
  padding-inline:18px;
  background:#ffffff50}
.service-num{
  font-size:10px;
  color:var(--muted);
  width:24px}
.service-icon{
  color:#4a6151;
  flex-shrink:0}
.service-row h3{
  font-size:20px;
  letter-spacing:-.03em}
.service-row p{
  margin-top:6px;
  font-size:11px}
.circle-arrow{
  margin-left:auto;
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border:1px solid var(--line);
  border-radius:50%;
  flex-shrink:0}
.project-row{
  display:grid;
  grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr);
  gap:70px;
  align-items:center;
  padding-top:40px;
  padding-bottom:60px}
.project-row>*{
  min-width:0}
.project-copy h3{
  font-family:var(--serif);
  font-size:clamp(35px,3.2vw,50px);
  margin-top:22px;
  margin-bottom:18px;
  letter-spacing:-.03em;
  max-width:310px;
  line-height:1.05}
.project-copy>p{
  font-size:12px;
  max-width:300px}
.project-visual{
  position:relative;
  width:100%;
  height:490px;
  background:#deded3;
  overflow:hidden;
  isolation:isolate}
.project-visual img{
  transition:transform .6s}
.project-visual:hover img{
  transform:scale(1.025)}
.project-row .project-visual.visual-photo,.project-full .project-visual.visual-photo{
  height:auto;
  aspect-ratio:16/9}
.project-row .project-visual.visual-plan,.project-full .project-visual.visual-plan{
  aspect-ratio:1600/938}
.project-row .project-visual.visual-square,.project-full .project-visual.visual-square{
  aspect-ratio:1}
.project-visual.visual-plan:hover img{
  transform:none}
.visual-tower{
  background:#d5d9cf}
.project-overlay-label{
  position:absolute;
  bottom:25px;
  left:25px;
  font-size:9px;
  letter-spacing:.12em;
  background:#f5f3ecdf;
  color:var(--forest);
  padding:7px 13px}
.placeholder-label{
  position:absolute;
  left:0;
  right:0;
  top:25px;
  text-align:center;
  font-size:9px;
  letter-spacing:.18em;
  color:#506055}
.architectural-drawing{
  position:absolute;
  inset:18% 7% 0;
  display:flex;
  gap:7%;
  justify-content:center;
  align-items:flex-end;
  transform:skewY(-4deg)}
.architectural-drawing span{
  display:block;
  height:65%;
  width:24%;
  border:1px solid #657b6955;
  background:repeating-linear-gradient(0deg,transparent 0 24px,#7386754a 25px 26px),repeating-linear-gradient(90deg,transparent 0 20px,#73867533 21px 22px);
  box-shadow:14px -10px 0 -1px #ccd1c5,14px -10px 0 #657b6955}
.architectural-drawing span:nth-child(2){
  height:89%}
.architectural-drawing span:nth-child(3){
  height:72%}
.architectural-drawing span:nth-child(4),.architectural-drawing span:nth-child(5){
  display:none}
.visual-tower .architectural-drawing span{
  display:none}
.visual-tower .architectural-drawing span:nth-child(1){
  display:block;
  width:45%;
  height:95%;
  box-shadow:30px -12px 0 -1px #c3cebf,30px -12px 0 #657b6955}
.project-stats{
  display:flex;
  gap:28px;
  margin:28px 0 30px}
.project-stats>div{
  display:flex;
  flex-direction:column-reverse;
  gap:6px}
.project-stats dt{
  font-size:9px;
  color:var(--muted)}
.project-stats dd{
  margin:0;
  font-size:24px;
  letter-spacing:-.045em;
  color:var(--forest);
  white-space:nowrap}
.project-copy .project-stats{
  flex-wrap:wrap;
  gap:22px}
.project-copy .project-stats dd{
  font-size:22px}
.project-all{
  display:flex;
  justify-content:center;
  width:fit-content;
  margin:auto}
.process-section{
  background:var(--forest);
  color:var(--ivory)}
.process-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:110px}
.process-grid h2{
  margin:25px 0;
  max-width:520px}
.process-grid p{
  max-width:310px;
  color:#c8d2c9;
  font-size:12px}
.process-list{
  list-style:none;
  margin:0;
  padding:0}
.process-list li{
  display:flex;
  align-items:center;
  gap:24px;
  padding:25px 0;
  border-bottom:1px solid #ffffff25}
.process-list li:first-child{
  border-top:1px solid #ffffff25}
.process-list span{
  font-size:10px;
  color:var(--gold)}
.process-list h3{
  font-size:15px;
  font-weight:450}
.process-list svg{
  margin-left:auto;
  flex-shrink:0;
  color:var(--gold)}
.property-section{
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:center;
  gap:100px}
.property-section h2{
  margin:26px 0}
.property-section p{
  max-width:340px;
  font-size:13px}
.property-section .text-link{
  margin-top:25px}
.property-image{
  position:relative;
  width:100%;
  overflow:hidden;
  aspect-ratio:4/5;
  background:var(--sand)}
.property-image.tall{
  height:auto}
.property-art{
  height:330px;
  position:relative;
  overflow:hidden;
  background:var(--sand);
  border:1px solid var(--line)}
.property-art:before,.property-art:after{
  content:'';
  position:absolute;
  background:#7b816d33}
.property-art:before{
  left:25%;
  width:1px;
  top:0;
  bottom:0}
.property-art:after{
  left:0;
  right:0;
  height:1px;
  top:70%}
.plan-square{
  position:absolute;
  inset:40px 20% 75px 22%;
  border:1px solid #8c927c;
  box-shadow:16px 16px 0 -1px var(--sand),16px 16px 0 #8c927c}
.plan-circle{
  position:absolute;
  width:210px;
  height:210px;
  border-radius:50%;
  border:1px solid #8c927c;
  left:35%;
  top:70px}
.property-art>span{
  position:absolute;
  bottom:20px;
  left:20px;
  font-size:8px;
  letter-spacing:.16em;
  color:var(--forest)}
.contact-band{
  position:relative;
  background:var(--deep);
  color:var(--ivory);
  padding:94px 0 105px;
  overflow:hidden;
  border-bottom:1px solid #ffffff20}
.contact-band h2{
  font-size:clamp(45px,5vw,76px);
  max-width:760px;
  margin-top:28px;
  position:relative;
  z-index:1}
.contact-band .eyebrow{
  color:var(--gold)}
.band-mark{
  position:absolute;
  right:0;
  bottom:-140px;
  font-family:var(--serif);
  font-size:500px;
  line-height:1;
  color:#ffffff04;
  pointer-events:none}
.footer{
  background:var(--deep);
  color:var(--ivory);
  padding-top:65px}
.footer-grid{
  display:grid;
  grid-template-columns:1.3fr .7fr 1fr;
  gap:90px;
  padding-bottom:55px}
.footer p{
  max-width:260px;
  color:#a9b9ad;
  font-size:11px;
  margin-top:25px;
  line-height:1.9}
.footer-grid>div>a:not(.brand){
  display:flex;
  align-items:center;
  gap:12px;
  width:fit-content;
  font-size:11px;
  margin-top:12px;
  color:#dce3da}
.footer .eyebrow{
  color:var(--gold);
  margin:4px 0 22px}
.footer-grid>div .footer-phone{
  font-size:21px!important;
  font-weight:500;
  letter-spacing:-.02em}
.footer-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-top:1px solid #ffffff20;
  padding:25px 0;
  font-size:9px;
  color:#a9b9ad;
  gap:20px}
.mobile-contact{
  display:none}
.page-intro{
  padding-top:42px;
  padding-bottom:65px}
.breadcrumbs{
  display:flex;
  align-items:center;
  gap:12px;
  font-size:10px;
  color:var(--muted);
  margin-bottom:60px}
.page-intro h1{
  max-width:950px;
  margin:25px 0}
.page-intro>p{
  font-size:15px;
  max-width:590px;
  line-height:1.9}
.editorial-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:90px;
  align-items:start}
.editorial-image{
  height:570px;
  position:relative}
.editorial-image span{
  position:absolute;
  bottom:20px;
  left:20px;
  background:var(--ivory);
  padding:5px 10px;
  font-size:9px}
.prose p{
  font-size:15px;
  line-height:2;
  margin-bottom:30px}
.prose h2{
  font-size:45px;
  margin-bottom:25px}
.prose h3{
  font-size:20px;
  margin-bottom:20px}
.prose .eyebrow{
  margin-bottom:28px}
.manifesto{
  padding:110px 0;
  background:var(--sand)}
.manifesto h2{
  font-size:clamp(45px,6vw,90px);
  margin-top:36px}
.manifesto em{
  font-weight:400;
  color:#6b765f}
.tall{
  height:450px}
.contact-grid{
  display:grid;
  grid-template-columns:1.5fr 1fr;
  gap:80px}
.contact-main{
  border-top:1px solid var(--line);
  padding-top:35px}
.large-phone{
  font-size:clamp(24px,3vw,43px);
  letter-spacing:-.04em;
  display:flex;
  align-items:center;
  gap:25px;
  margin:20px 0}
.contact-main p{
  max-width:400px}
.contact-aside{
  background:var(--sand);
  padding:40px}
.contact-aside h2{
  font-size:45px;
  margin:30px 0}
.project-full .project-visual{
  height:clamp(340px,55vw,740px)}
.project-full .architectural-drawing{
  max-width:850px;
  margin:auto}
.project-description{
  margin-top:65px}
.project-description h2{
  font-size:40px;
  margin-bottom:25px}
.project-gallery{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:25px;
  margin-top:55px}
.project-gallery>div{
  height:380px;
  position:relative}
.project-navigation{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:25px;
  margin-top:60px;
  border-top:1px solid var(--line);
  padding-top:25px;
  font-size:11px}
.project-navigation a{
  display:flex;
  gap:15px;
  align-items:center}
.service-aside{
  padding:45px;
  background:var(--sand)}
.service-aside h2{
  font-size:44px;
  margin-top:35px}
.skip-link{
  position:fixed;
  left:20px;
  top:-100px;
  z-index:200;
  background:var(--forest);
  color:white;
  padding:10px 20px}
.skip-link:focus{
  top:15px}
.connection-error{
  padding:15px;
  background:#fff0df;
  text-align:center;
  color:#6e411f}
.reveal{
  transition:opacity .7s,translate .7s}
.reveal.visible{
  animation:reveal .7s ease both}
@keyframes reveal{
  from{
  opacity:.65;
  translate:0 12px}
to{
  opacity:1;
  translate:0 0}
}

.contact-grid>*,.editorial-grid>*,.philosophy-grid>*,.process-grid>*,.property-section>*{
  min-width:0}
.contact-aside .text-link{
  display:flex;
  gap:12px;
  max-width:100%;
  font-size:10px}
.contact-aside .text-link svg{
  flex-shrink:0}

@media(min-width:1600px){
  .hero-content{
  padding-top:125px}
}
@media(max-width:1180px){
  .container{
  width:calc(100% - 72px)}
.header-inner{
  padding-inline:30px;
  gap:20px}
.desktop-nav{
  gap:17px}
.brand-caption{
  display:none}
.philosophy-grid,.process-grid,.property-section,.editorial-grid{
  gap:55px}
.project-row{
  gap:40px}
.project-visual{
  height:420px}
.footer-grid{
  gap:50px}
.project-copy .project-stats{
  gap:17px}
.project-copy .project-stats dd{
  font-size:20px}
}
@media(max-width:900px){
  .desktop-nav{
  display:none}
.header-cta{
  margin-left:auto}
.menu-toggle{
  display:block}
.header-inner{
  padding-block:18px;
  min-height:80px}
.hero{
  height:740px;
  min-height:0}
.hero h1{
  max-width:560px;
  font-size:76px}
.philosophy-grid{
  gap:40px}
.project-row{
  grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);
  gap:30px}
.section-heading{
  gap:40px}
.footer-grid{
  gap:30px}
.brand-caption{
  display:block}
.project-copy h3{
  font-size:38px}
.project-visual{
  height:420px}
.process-grid{
  gap:40px}
.contact-grid{
  gap:40px}
}
@media(max-width:767px){
  body{
  font-size:13px}
.container{
  width:calc(100% - 40px)}
.header-inner{
  padding:18px 20px;
  gap:10px}
.brand-word{
  font-size:35px}
.brand-caption{
  font-size:6px;
  padding-left:10px}
.brand{
  gap:10px}
.header-cta{
  padding:10px 12px;
  font-size:10px;
  gap:10px}
.menu-toggle{
  padding:7px}
.hero{
  height:calc(100svh - 80px);
  min-height:680px;
  max-height:850px}
.hero-content{
  padding-top:clamp(110px,16svh,140px)}
.hero h1{
  font-size:clamp(54px,12.6vw,75px);
  max-width:530px;
  margin-top:25px}
.hero p{
  font-size:14px;
  max-width:320px}
.hero-shade{
  background:linear-gradient(90deg,#071912bd,#07191248),linear-gradient(0deg,#0719129e,transparent 60%)}
.hero-image{
  object-position:61% center}
.hero .actions{
  gap:10px 23px;
  margin-top:26px}
.hero .button{
  padding:14px 17px;
  gap:16px}
.hero-secondary{
  font-size:10px}
.hero-bottom{
  bottom:39px;
  font-size:8px}
.hero-bottom>span{
  display:none}
.section-space{
  padding-block:65px}
.section-bottom{
  padding-bottom:65px}
.section-top{
  margin-bottom:30px}
.tiny-label{
  display:none}
.eyebrow{
  font-size:9px;
  letter-spacing:.13em}
.philosophy-grid,.property-section,.process-grid,.editorial-grid,.contact-grid{
  grid-template-columns:1fr;
  gap:35px}
.philosophy h2{
  font-size:47px;
  max-width:540px}
.lead{
  font-size:13px;
  line-height:1.95}
.principles{
  grid-template-columns:1fr 1fr;
  gap:20px;
  margin-top:40px}
.principles p{
  max-width:none}
.section-heading{
  display:block;
  margin-bottom:34px}
.section-heading h2{
  font-size:47px}
.section-heading>p{
  margin-top:20px;
  max-width:350px}
.service-row{
  gap:15px;
  padding:24px 0}
.service-row:hover{
  padding-inline:5px}
.service-num{
  font-size:9px;
  width:16px;
  flex-shrink:0}
.service-icon{
  width:22px}
.service-row h3{
  font-size:16px;
  letter-spacing:-.02em}
.service-row p{
  font-size:10px;
  line-height:1.65;
  padding-right:10px}
.circle-arrow{
  width:31px;
  height:31px}
.circle-arrow svg{
  width:16px}
.project-row{
  grid-template-columns:minmax(0,1fr);
  gap:26px;
  padding-top:25px;
  padding-bottom:45px}
.project-copy h3{
  font-size:42px;
  max-width:100%;
  margin-top:18px}
.project-copy p{
  max-width:380px}
.project-copy .project-stats{
  gap:25px}
.project-copy .project-stats dd{
  font-size:24px}
.project-copy .text-link{
  margin-top:0}
.project-visual{
  height:400px}
.project-row:nth-of-type(2) .project-visual:not(.visual-photo){
  height:350px}
.process-grid h2{
  font-size:47px}
.process-list li{
  gap:20px;
  padding:22px 0}
.process-list h3{
  font-size:14px}
.property-section{
  gap:30px}
.property-art{
  height:300px}
.property-section h2{
  font-size:47px}
.contact-band{
  padding:65px 0 70px}
.contact-band h2{
  font-size:52px}
.contact-band .actions{
  gap:15px}
.footer{
  padding-top:45px;
  padding-bottom:58px}
.footer-grid{
  grid-template-columns:1fr 1fr;
  gap:40px 20px;
  padding-bottom:40px}
.footer-grid>div:first-child{
  grid-column:1/-1}
.footer p{
  max-width:300px;
  margin-top:20px}
.footer-grid .brand-word{
  font-size:40px}
.footer-grid>div .footer-phone{
  font-size:16px!important;
  white-space:nowrap}
.footer-bottom{
  flex-wrap:wrap;
  justify-content:flex-start;
  font-size:8px;
  gap:12px 30px;
  padding-block:20px}
.footer-bottom span:nth-child(2){
  display:none}
.mobile-contact{
  display:flex;
  position:fixed;
  z-index:45;
  bottom:0;
  left:0;
  right:0;
  min-height:54px;
  background:var(--ivory);
  border-top:1px solid var(--line);
  box-shadow:0 -3px 20px #0001;
  padding-bottom:env(safe-area-inset-bottom)}
.mobile-contact a{
  flex:1;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  font-size:11px;
  color:var(--forest);
  padding:15px}
.mobile-contact .mobile-whatsapp{
  border-left:1px solid var(--line)}
.page-intro{
  padding-top:25px;
  padding-bottom:40px}
.breadcrumbs{
  margin-bottom:35px;
  font-size:9px}
.page-intro h1{
  font-size:clamp(46px,10vw,72px);
  margin-top:20px}
.page-intro>p{
  font-size:13px}
.editorial-image{
  height:430px}
.prose p{
  font-size:14px}
.manifesto{
  padding:70px 0}
.manifesto h2{
  font-size:54px}
.large-phone{
  font-size:30px;
  gap:15px}
.contact-aside{
  padding:30px}
.contact-aside h2{
  font-size:44px}
.project-full .project-visual{
  height:420px}
.project-stats{
  gap:25px;
  flex-wrap:wrap}
.project-stats dd{
  font-size:31px}
.project-description{
  margin-top:40px}
.project-gallery{
  grid-template-columns:1fr}
.project-gallery>div{
  height:350px}
.project-navigation{
  flex-wrap:wrap;
  gap:20px}
.service-aside{
  padding:30px}
.service-aside h2{
  font-size:41px}
}
@media(max-width:359px){
  .brand-caption{
  display:none}
.header-cta{
  font-size:9px}
.hero h1{
  font-size:51px}
.hero-content{
  padding-top:95px}
.hero .actions{
  display:block}
.hero-secondary{
  margin-top:12px}
.service-icon{
  display:none}
.service-row{
  gap:10px}
.project-copy .project-stats{
  gap:18px}
.project-copy .project-stats dd{
  font-size:20px}
.footer-grid{
  grid-template-columns:1fr}
.footer-grid>div:first-child{
  grid-column:auto}
.large-phone{
  font-size:25px;
  flex-wrap:wrap}
.philosophy h2,.section-heading h2,.property-section h2{
  font-size:41px}
.contact-band h2{
  font-size:45px}
}
@media(prefers-reduced-motion:reduce){
  html{
  scroll-behavior:auto}
*,*:before,*:after{
  animation:none!important;
  transition:none!important}
}

/* ---------------------------------------------------------------
   Ek (Ekim 2026): Ana sayfa referans bilgisi — "Rakamlarla NED".
   1181 px ve üzerinde hero görselinin üzerinde panel; daha dar
   ekranlarda görselin hemen altında aynı renkte şerit.
   --------------------------------------------------------------- */
.hero-wrap{
  position:relative}
.hero-stats-layer{
  position:absolute;
  inset:0;
  z-index:1;
  display:flex;
  align-items:center;
  pointer-events:none}
.hero-stats-layer .container{
  display:flex;
  justify-content:flex-end}
.hero-stats{
  pointer-events:auto;
  width:256px;
  padding:24px 28px 8px;
  color:var(--ivory);
  background:rgba(7,25,18,.6);
  border:1px solid #ffffff1f;
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px)}
.hero-stats .eyebrow{
  display:flex;
  align-items:center;
  gap:12px;
  color:#e2dbc8;
  font-size:9px;
  margin-bottom:6px}
.hero-stats .gold-line{
  width:22px}
.hero-stats ul{
  list-style:none;
  margin:0;
  padding:0}
.hero-stats li{
  display:flex;
  align-items:center;
  gap:16px;
  padding:18px 0;
  border-top:1px solid #ffffff1f}
.hero-stats li:first-child{
  border-top:0}
.hero-stat-icon{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  flex-shrink:0;
  border:1px solid #b7a77e70;
  border-radius:50%;
  color:var(--gold)}
.hero-stat-text{
  min-width:0}
.hero-stats strong{
  display:block;
  font-size:30px;
  font-weight:400;
  line-height:1;
  letter-spacing:-.045em;
  white-space:nowrap}
.hero-stat-unit{
  font-size:.5em;
  letter-spacing:0;
  margin-left:3px}
.hero-stat-plus{
  color:var(--gold)}
.hero-stat-text>span{
  display:block;
  margin-top:8px;
  font-size:9px;
  font-weight:600;
  letter-spacing:.14em;
  line-height:1.4;
  text-transform:uppercase;
  color:#d6ddd3}
@media(max-width:1180px){
  .hero-stats-layer{
  position:static;
  display:block;
  background:var(--forest)}
.hero-stats-layer .container{
  display:block}
.hero-stats{
  width:auto;
  padding:28px 0 32px;
  background:none;
  border:0;
  -webkit-backdrop-filter:none;
  backdrop-filter:none}
.hero-stats .eyebrow{
  margin-bottom:18px}
.hero-stats ul{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px}
.hero-stats li,.hero-stats li:first-child{
  padding:18px 0 0;
  border-top:1px solid #ffffff25}
}
@media(max-width:600px){
  .hero-stats ul{
  gap:14px}
.hero-stats li,.hero-stats li:first-child{
  flex-direction:column;
  align-items:flex-start;
  gap:12px;
  padding-top:16px}
.hero-stat-icon{
  width:34px;
  height:34px}
.hero-stat-icon svg{
  width:17px;
  height:17px}
.hero-stats strong{
  font-size:clamp(18px,5.2vw,30px)}
}
@media(max-width:359px){
  .hero-stats ul{
  gap:10px}
.hero-stat-text>span{
  font-size:8px;
  letter-spacing:.08em}
}
/* ---------------------------------------------------------------
   Ek (24 Ekim 2026): metin içi madde listeleri, hizmet/mevzuat
   detayında kırpılmayan yatay görseller, Mevzuat boş durumu.
   --------------------------------------------------------------- */
.prose-list{
  list-style:none;
  margin:0 0 34px;
  padding:0;
  border-top:1px solid var(--line);
  counter-reset:prose-item}
.prose-list li{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  padding:20px 0;
  border-bottom:1px solid var(--line);
  font-size:14px;
  line-height:1.85;
  color:var(--muted);
  counter-increment:prose-item}
.prose-list li:before{
  content:counter(prose-item,decimal-leading-zero);
  grid-row:1/span 2;
  padding-top:5px;
  font-size:9px;
  color:#826f42}
.prose-list strong{
  display:block;
  margin-bottom:4px;
  font-size:15px;
  font-weight:600;
  letter-spacing:-.01em;
  color:var(--forest)}
.editorial-image.natural{
  height:auto;
  overflow:hidden}
.regulation-empty{
  max-width:620px;
  border-top:1px solid var(--line);
  padding-top:35px}
.regulation-empty .eyebrow{
  margin-bottom:22px}
@media(max-width:767px){
  .prose-list li{
  grid-template-columns:28px minmax(0,1fr);
  font-size:13px}
.prose-list strong{
  font-size:14px}
.editorial-image.natural{
  height:auto}
}
