﻿:root{
  --la-black:#0d0c0b;
  --la-charcoal:#161412;
  --la-espresso:#2a211b;
  --la-brass:#c8a84b;
  --la-muted-gold:#b19149;
  --la-cream:#faf6f0;
  --la-parchment:#f0eae0;
  --text-dark:#201814;
  --text-soft:rgba(32,24,20,.72);
  --text-light:rgba(250,246,240,.9);
  --text-light-soft:rgba(250,246,240,.72);
  --heading-font:"Cormorant Garamond", Georgia, serif;
  --body-font:"DM Sans", Arial, sans-serif;
}

*,*::before,*::after{ box-sizing:border-box; }

html{
  overflow-x:hidden;
  scroll-behavior:smooth;
}

body{
  margin:0;
  overflow-x:hidden;
  background:linear-gradient(180deg,#fbf8f4 0%,#f1e8dd 52%,#e8dccf 100%);
  color:var(--text-dark);
  font-family:var(--body-font);
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}

a{ color:inherit; text-decoration:none; }
img{ display:block; max-width:100%; }

.fallback-nav{
  position:absolute;
  top:0;
  left:0;
  right:0;
  z-index:10;
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:24px clamp(20px,4vw,54px);
  color:#fff;
}

.fallback-nav>a{
  color:var(--la-brass);
  font-family:var(--heading-font);
  font-size:28px;
  letter-spacing:.14em;
}

.fallback-nav nav{
  display:flex;
  gap:20px;
  color:rgba(250,246,240,.76);
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.eyebrow{
  margin:0 0 12px;
  color:rgba(200,168,75,.94);
  font-size:12px;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.eyebrow.dark{ color:rgba(111,79,55,.72); }

h1,h2,h3{
  font-family:var(--heading-font);
  letter-spacing:-.02em;
}

.btn-rt,
.btn-glass{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  border-radius:999px;
  padding:12px 18px;
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  text-decoration:none;
}

.btn-rt{
  border:0;
  color:#17120d;
  background:linear-gradient(180deg,#d9bb60,#c8a84b);
  box-shadow:0 14px 34px rgba(200,168,75,.22);
}

.btn-glass{
  border:1px solid rgba(250,246,240,.22);
  background:rgba(250,246,240,.08);
  color:rgba(250,246,240,.88);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}

.city-hero{
  position:relative;
  min-height:88svh;
  display:grid;
  align-items:end;
  overflow:hidden;
  color:var(--text-light);
  background:#0d0c0b;
}

.city-hero picture,
.city-hero img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}

.city-hero img{
  object-fit:cover;
  object-position:center;
  filter:saturate(.96) contrast(1.04);
  transform:scale(1.02);
  animation:heroDrift 18s ease-in-out infinite alternate;
}

.city-hero__shade{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(13,12,11,.88) 0%,rgba(13,12,11,.66) 34%,rgba(13,12,11,.22) 72%,rgba(13,12,11,.18) 100%),
    linear-gradient(180deg,rgba(13,12,11,.08),rgba(13,12,11,.72));
}

.city-hero__content{
  position:relative;
  z-index:2;
  max-width:980px;
  padding-top:132px;
  padding-bottom:86px;
}

.city-hero h1{
  max-width:860px;
  margin:0 0 18px;
  color:#fff;
  font-size:clamp(44px,5.6vw,82px);
  font-weight:600;
  line-height:.96;
}

.city-hero p:not(.eyebrow){
  max-width:760px;
  margin:0;
  color:var(--text-light-soft);
  font-size:clamp(17px,1.45vw,21px);
  line-height:1.66;
}

.city-hero__actions{
  margin-top:30px;
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}

.city-intro,
.market-section,
.systems-section,
.local-section,
.consultation-section{
  padding:clamp(74px,9vw,122px) 0;
}

.city-intro h2,
.market-section h2,
.systems-section h2,
.feature-split h2,
.local-section h2,
.consultation-section h2,
.areas-hero h1{
  margin:0 0 14px;
  font-size:clamp(34px,4.2vw,58px);
  font-weight:600;
  line-height:1.02;
}

.city-intro p,
.market-section p,
.systems-section p,
.feature-split p,
.local-section p,
.consultation-section p{
  color:var(--text-soft);
  font-size:16px;
  line-height:1.74;
}

.lead-copy{
  color:rgba(32,24,20,.82) !important;
  font-size:clamp(17px,1.5vw,21px) !important;
}

.wireless-note{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:16px;
  align-items:start;
  margin-top:24px;
  padding:20px;
  border:1px solid rgba(200,168,75,.26);
  border-radius:10px;
  background:rgba(255,255,255,.58);
  box-shadow:0 18px 46px rgba(13,12,11,.07);
}

.wireless-note i{
  display:inline-grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:50%;
  color:#17120d;
  background:linear-gradient(180deg,#d9bb60,#c8a84b);
  box-shadow:0 12px 28px rgba(200,168,75,.2);
  font-size:19px;
}

.wireless-note p{
  margin:0;
  color:rgba(32,24,20,.76);
  font-size:15px;
  line-height:1.68;
}

.wireless-note strong{
  color:rgba(32,24,20,.92);
}

.image-band{
  position:relative;
  height:clamp(420px,58vw,720px);
  overflow:hidden;
  background:#161412;
}

.image-band img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

.market-section{
  background:
    radial-gradient(circle at 14% 18%,rgba(200,168,75,.14),transparent 30%),
    linear-gradient(180deg,#fbf8f4,#f2eadf);
}

.moment-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}

.moment-card{
  min-height:300px;
  padding:24px;
  border:1px solid rgba(111,79,55,.14);
  border-radius:10px;
  background:rgba(255,255,255,.62);
  box-shadow:0 22px 62px rgba(13,12,11,.08);
}

.moment-card i{
  display:inline-grid;
  place-items:center;
  width:42px;
  height:42px;
  margin-bottom:20px;
  border-radius:50%;
  color:#17120d;
  background:linear-gradient(180deg,#d9bb60,#c8a84b);
  box-shadow:0 12px 28px rgba(200,168,75,.22);
  font-size:19px;
}

.moment-card h3{
  margin:0 0 12px;
  font-size:29px;
  font-weight:600;
  line-height:1.06;
}

.moment-card p{
  margin:0;
  font-size:15px;
  line-height:1.66;
}

.section-head{
  max-width:820px;
  margin:0 0 36px;
}

.systems-list{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  border-top:1px solid rgba(111,79,55,.16);
}

.systems-list article{
  padding:26px 10px 0 0;
}

.systems-list span{
  color:var(--la-muted-gold);
  font-size:12px;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.systems-list h3{
  margin:10px 0;
  font-size:31px;
  font-weight:600;
  line-height:1.06;
}

.systems-list p{
  margin:0;
  font-size:15px;
}

.feature-split{
  padding:clamp(82px,10vw,132px) 0;
  background:
    radial-gradient(circle at 80% 10%,rgba(200,168,75,.18),transparent 34%),
    linear-gradient(135deg,#161412,#2a211b 58%,#0d0c0b);
  color:var(--text-light);
}

.feature-split img{
  width:100%;
  height:auto;
  aspect-ratio:1672 / 941;
  object-fit:cover;
  border-radius:10px;
  box-shadow:0 34px 90px rgba(0,0,0,.32);
}

.feature-split h2{
  color:#fff;
}

.feature-split p,
.feature-split li{
  color:var(--text-light-soft);
}

.feature-split ul{
  margin:22px 0 0;
  padding:0;
  list-style:none;
  display:grid;
  gap:12px;
}

.feature-split li{
  position:relative;
  padding-left:22px;
  line-height:1.62;
}

.feature-split li::before{
  content:"";
  position:absolute;
  left:0;
  top:.65em;
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--la-brass);
}

.considerations-section{
  padding:clamp(76px,9vw,118px) 0;
  background:
    radial-gradient(circle at 78% 16%,rgba(200,168,75,.18),transparent 32%),
    linear-gradient(135deg,#0d0c0b,#201814 54%,#2a211b);
  color:var(--text-light);
}

.considerations-panel{
  display:grid;
  grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);
  gap:clamp(32px,6vw,74px);
  align-items:start;
}

.considerations-panel h2{
  margin:0;
  color:#fff;
  font-family:var(--heading-font);
  font-size:clamp(34px,4.2vw,58px);
  font-weight:600;
  line-height:1.02;
}

.considerations-list{
  display:grid;
  gap:14px;
}

.consideration-item{
  display:grid;
  grid-template-columns:34px 1fr;
  gap:14px;
  align-items:start;
  padding:18px 0;
  border-bottom:1px solid rgba(250,246,240,.12);
}

.consideration-item i{
  display:inline-grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:50%;
  color:var(--la-brass);
  background:rgba(250,246,240,.08);
  font-size:18px;
}

.consideration-item p{
  margin:0;
  color:var(--text-light-soft);
  font-size:16px;
  line-height:1.68;
}

.local-panel{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,420px);
  gap:clamp(30px,6vw,72px);
  align-items:center;
  padding:clamp(28px,5vw,58px);
  border:1px solid rgba(111,79,55,.14);
  border-radius:10px;
  background:rgba(255,255,255,.52);
  box-shadow:0 24px 70px rgba(13,12,11,.08);
}

.local-panel img{
  width:100%;
  height:auto;
  aspect-ratio:1672 / 941;
  object-fit:cover;
  border-radius:8px;
  background:#fff;
}

.property-tags{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:24px;
}

.property-tags span{
  display:inline-flex;
  align-items:center;
  min-height:36px;
  padding:8px 12px;
  border:1px solid rgba(111,79,55,.18);
  border-radius:999px;
  color:rgba(32,24,20,.76);
  background:rgba(255,255,255,.62);
  font-size:12px;
  font-weight:700;
  letter-spacing:.04em;
}

.faq-section{
  padding:clamp(74px,9vw,120px) 0;
  background:
    radial-gradient(circle at 86% 12%,rgba(200,168,75,.12),transparent 30%),
    linear-gradient(180deg,#f1e8dd,#fbf8f4);
}

.faq-shell{
  display:grid;
  grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);
  gap:clamp(30px,6vw,74px);
  align-items:start;
}

.faq-list{
  display:grid;
  gap:12px;
}

.faq-item{
  border:1px solid rgba(111,79,55,.14);
  border-radius:10px;
  background:rgba(255,255,255,.62);
  box-shadow:0 16px 42px rgba(13,12,11,.06);
  overflow:hidden;
}

.faq-item summary{
  display:grid;
  grid-template-columns:1fr auto;
  gap:18px;
  align-items:center;
  min-height:76px;
  padding:20px 22px;
  cursor:pointer;
  list-style:none;
}

.faq-item summary::-webkit-details-marker{
  display:none;
}

.faq-item summary span{
  font-family:var(--heading-font);
  font-size:clamp(24px,2.1vw,32px);
  font-weight:600;
  line-height:1.08;
}

.faq-item summary i{
  display:inline-grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:50%;
  color:var(--la-brass);
  background:rgba(111,79,55,.08);
  transition:transform .22s ease;
}

.faq-item[open] summary i{
  transform:rotate(180deg);
}

.faq-item p{
  margin:0;
  padding:0 22px 22px;
  color:var(--text-soft);
  font-size:16px;
  line-height:1.72;
}

.consultation-section{
  text-align:center;
  background:
    radial-gradient(circle at 48% 10%,rgba(200,168,75,.14),transparent 34%),
    linear-gradient(180deg,#fbf8f4,#eee5da);
}

.consultation-section p{
  max-width:760px;
  margin:0 auto 26px;
}

.service-footer{
  padding:clamp(54px,7vw,88px) 0;
  color:var(--text-light);
  background:
    radial-gradient(circle at 12% 10%,rgba(200,168,75,.18),transparent 30%),
    linear-gradient(135deg,#0d0c0b,#1b1713 58%,#2a211b);
}

.service-footer__top{
  display:grid;
  grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);
  gap:clamp(24px,5vw,72px);
  align-items:start;
  padding-bottom:30px;
  border-bottom:1px solid rgba(250,246,240,.14);
}

.service-footer__brand{
  color:var(--la-brass);
  font-family:var(--heading-font);
  font-size:clamp(30px,4vw,48px);
  font-weight:600;
  letter-spacing:.14em;
}

.service-footer__top p{
  max-width:760px;
  margin:0;
  color:var(--text-light-soft);
  font-size:16px;
  line-height:1.72;
}

.service-footer__grid{
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(0,1.7fr) minmax(0,.8fr);
  gap:clamp(28px,5vw,64px);
  padding-top:34px;
}

.city-page + .service-footer .service-footer__grid{
  grid-template-columns:minmax(0,.85fr) minmax(0,.85fr) minmax(0,1.55fr) minmax(0,.75fr);
}

.service-footer__group h2{
  margin:0 0 16px;
  color:#fff;
  font-family:var(--body-font);
  font-size:12px;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.service-footer__links,
.service-footer__state-grid div{
  display:grid;
  gap:9px;
}

.service-footer a{
  color:rgba(250,246,240,.7);
  font-size:14px;
  line-height:1.4;
  transition:color .18s ease;
}

.service-footer a:hover,
.service-footer a:focus{
  color:var(--la-brass);
}

.service-footer__state-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:18px;
}

.service-footer__state-grid span{
  color:var(--la-brass);
  font-size:11px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.areas-hero{
  padding:150px 0 90px;
  color:#fff;
  background:
    linear-gradient(135deg,rgba(13,12,11,.95),rgba(42,33,27,.88)),
    url("../img/lautary-hero-core.jpg") center/cover;
}

.areas-hero p:not(.eyebrow){
  max-width:760px;
  color:var(--text-light-soft);
  font-size:19px;
  line-height:1.7;
}

.areas-list{
  padding:clamp(70px,9vw,120px) 0;
}

.areas-state-list{
  display:grid;
  gap:clamp(42px,6vw,72px);
}

.areas-state{
  display:grid;
  gap:20px;
}

.areas-state-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:18px;
  padding-bottom:16px;
  border-bottom:1px solid rgba(111,79,55,.16);
}

.areas-state-head span{
  color:var(--la-muted-gold);
  font-size:12px;
  font-weight:700;
  letter-spacing:.16em;
}

.areas-state-head h2{
  margin:0;
  font-family:var(--heading-font);
  font-size:clamp(32px,4vw,54px);
  font-weight:600;
  line-height:1;
}

.areas-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}

.area-link{
  display:grid;
  align-content:start;
  min-height:260px;
  padding:24px;
  border:1px solid rgba(111,79,55,.14);
  border-radius:10px;
  background:rgba(255,255,255,.58);
  box-shadow:0 20px 52px rgba(13,12,11,.08);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.area-link:hover{
  transform:translateY(-4px);
  border-color:rgba(200,168,75,.46);
  box-shadow:0 28px 70px rgba(13,12,11,.12);
}

.area-link span{
  color:var(--la-muted-gold);
  font-size:12px;
  font-weight:700;
  letter-spacing:.14em;
}

.area-link strong{
  margin:12px 0 10px;
  font-family:var(--heading-font);
  font-size:32px;
  font-weight:600;
  line-height:1.05;
}

.area-link em{
  color:var(--text-soft);
  font-style:normal;
  font-size:15px;
  line-height:1.62;
}

@keyframes heroDrift{
  from{ transform:scale(1.02) translate3d(0,0,0); }
  to{ transform:scale(1.07) translate3d(-1.2%,.8%,0); }
}

@media (max-width:991.98px){
  .moment-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .considerations-panel,
  .faq-shell{
    grid-template-columns:1fr;
  }

  .service-footer__top,
  .service-footer__grid,
  .city-page + .service-footer .service-footer__grid{
    grid-template-columns:1fr;
  }

  .service-footer__state-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .systems-list,
  .areas-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .local-panel{
    grid-template-columns:1fr;
  }
}

@media (max-width:767.98px){
  .fallback-nav{
    position:absolute;
    padding:18px 20px;
  }

  .fallback-nav nav{
    display:none;
  }

  .city-hero{
    min-height:78svh;
  }

  .city-hero__shade{
    background:linear-gradient(180deg,rgba(13,12,11,.42),rgba(13,12,11,.88));
  }

  .city-hero__content{
    padding-top:116px;
    padding-bottom:58px;
  }

  .city-hero__actions{
    flex-direction:column;
    align-items:flex-start;
  }

  .systems-list,
  .moment-grid,
  .areas-grid{
    grid-template-columns:1fr;
  }

  .service-footer__state-grid{
    grid-template-columns:1fr;
  }

  .areas-state-head{
    display:grid;
    justify-content:start;
  }

  .image-band{
    height:440px;
  }
}

.wireless-note a{
  color:#7b5a20;
  font-weight:700;
  text-decoration:underline;
  text-decoration-color:rgba(200,168,75,.42);
  text-underline-offset:3px;
}

.wireless-note a:hover{
  color:#4f3715;
  text-decoration-color:rgba(200,168,75,.78);
}
@media (min-width: 992px){
  /* local11 desktop portrait lifestyle crops */
  .feature-split img{
    width:min(100%,560px);
    height:auto;
    aspect-ratio:4 / 5;
    object-fit:cover;
    object-position:left center;
  }

  .local-panel{
    grid-template-columns:minmax(0,1fr) minmax(280px,380px);
  }

  .local-panel img{
    width:100%;
    height:auto;
    aspect-ratio:4 / 5;
    object-fit:cover;
    object-position:left center;
  }
}