:root{--graphite:#20211f;--ink:#20211f;--gold:#c99552;--warm-white:#f6f6f3;--paper:#fff;--line:#deddd8}
h1,h2,h3,.trust-list strong{font-family:Manrope,Arial,sans-serif;font-weight:600;letter-spacing:-.045em;line-height:1.12}
.site-header{background:#20211f;color:white;min-height:90px;grid-template-columns:190px 1fr auto;gap:24px}
.brand img{width:180px;height:60px}.main-nav{gap:22px;font-size:14px}.header-tools{gap:22px}.header-phone{font-size:16px;white-space:nowrap}.header-cta{background:var(--gold);color:#20211f;border:0;font-size:14px}
.hero{position:relative;display:block;min-height:690px;background:#20211f;color:white;isolation:isolate}.hero-copy{padding:90px max(5vw,24px) 50px;width:62%;min-height:690px;justify-content:center}.hero h1{font-size:clamp(48px,5.3vw,75px);line-height:1.09;letter-spacing:-.055em}.hero h1 em{font-style:normal;color:#ddb77d}.hero .eyebrow{color:#e4d9c9;font-size:13px;letter-spacing:.14em}.hero .eyebrow::after{display:none}.hero-lead{color:#e2ddd7;max-width:455px;font-size:17px;margin-top:26px}.hero .button-dark{background:var(--gold);border-color:var(--gold);color:#20211f}.hero .button-light{border-color:#ffffff70;color:white}.hero .button{font-size:14px;min-height:54px}.hero-visual{position:absolute;inset:0;z-index:-1;min-height:0}.hero-visual img{position:absolute;inset:0;object-position:center;object-fit:cover}.hero-visual::after{background:linear-gradient(90deg,rgba(20,20,18,.92),rgba(20,20,18,.67) 35%,rgba(20,20,18,.05) 77%)}.hero-visual figcaption{right:5vw;bottom:40px}.hero-visual figcaption strong{font:500 16px Manrope,Arial,sans-serif}.hero-visual figcaption span{font-size:12px}.trust-list{max-width:510px;margin-top:46px;border-top:1px solid #ffffff35;padding-top:24px}.trust-list strong{font-size:16px;letter-spacing:0}.trust-list span{font-size:13px;color:#ddd6ca}.section{padding:88px 5vw}.section h2{font-size:clamp(32px,3.7vw,56px)}.eyebrow{font-size:13px}.button,.text-link{font-size:14px}.reveal{opacity:1;transform:none}.menu-toggle{border-color:#ffffff50}.menu-toggle span{background:white}.mobile-nav{background:#20211f}.mobile-nav a{font:500 20px Manrope,Arial,sans-serif;color:white}
@media(max-width:1200px){.header-phone{display:none}.main-nav{gap:15px}.site-header{gap:16px}.hero-copy{width:70%}}
@media(max-width:800px){.site-header{grid-template-columns:1fr auto;padding:12px 20px;min-height:76px}.main-nav{display:none}.menu-toggle{display:block}.brand img{height:48px;width:165px}.header-tools{gap:10px}.hero{min-height:730px}.hero-copy{width:100%;padding:60px 24px 145px;min-height:730px;justify-content:flex-start}.hero h1{font-size:clamp(43px,8vw,64px)}.hero-visual::after{background:linear-gradient(90deg,#181815e8,#18181565),linear-gradient(0deg,#18181570,transparent)}.hero-visual img{object-position:63%}.hero-visual figcaption{left:24px;bottom:30px;right:24px}.hero .eyebrow{font-size:12px;letter-spacing:.08em}.hero-lead{max-width:430px}.trust-list{margin-top:32px;gap:10px}.trust-list strong{font-size:14px}.trust-list span{font-size:12px}.hero .button{font-size:14px}.section{padding:64px 24px}.section h2{font-size:36px}}
@media(max-width:480px){.header-cta{display:none}.hero-actions{flex-direction:column;align-items:flex-start}.hero-actions .button{width:100%}.hero-copy{padding-top:42px}.hero-lead{font-size:16px}.hero{min-height:810px}.hero-copy{min-height:810px}.hero-visual figcaption strong{font-size:14px}.contact-photo img{height:260px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
[hidden]{display:none!important}section[id]{scroll-margin-top:100px}.section-heading{flex-wrap:wrap}.section-heading>div:first-child{max-width:740px}.section-note{font-size:16px}.category-copy strong,.direction-card h3,.project-meta strong,.format-content h2,.material-card h3{font-family:Manrope,Arial,sans-serif;font-weight:600}.category-copy strong{font-size:28px;line-height:1.2}.category-copy small{font-size:14px}.category-grid{gap:16px}.category-card{border-radius:2px}.category-card-large{min-height:500px}.category-card{min-height:240px}.formats h2{font-size:clamp(32px,3vw,46px)}.format-content p,.check-list{font-size:16px}.format-content{padding:48px}.direction-grid{gap:16px}.direction-card h3{font-size:24px;letter-spacing:-.025em}.direction-card p{font-size:14px}.portfolio{background:#f6f6f3}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 22px}.project-card,.project-card-featured{grid-column:auto;grid-row:auto;height:auto;min-height:0;display:block;background:transparent;text-align:left;border:0;overflow:visible}.project-card img{width:100%;height:360px;object-fit:cover}.project-meta{position:static;display:block;color:#20211f;padding:20px 0 0;background:none}.project-meta small{font-size:13px;color:#66645f;display:block}.project-meta strong{display:block;font-size:21px;line-height:1.25;margin-top:7px;letter-spacing:-.03em}.project-card::after{display:none}.project-card:hover img{filter:brightness(.95)}.filter-button{font-size:14px;min-height:44px}.filter-button.is-active{background:#20211f;color:white}.material-card h3{font-size:28px}.material-card p{font-size:16px}.process-list h3{font-size:23px}.process-list p{font-size:15px}.about-points p{font-size:16px}.about-lead{font-size:18px}.region-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #deddd8}.region-item{padding:36px 28px 10px 0}.region-item+.region-item{border-left:1px solid #deddd8;padding-left:28px}.region-item>span{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#66645f}.region-item h3{font-size:32px;margin:30px 0 18px}.region-item p{font-size:16px;min-height:120px;color:#66645f}.region-item strong{font-size:14px;border-bottom:1px solid #c99552;padding-bottom:7px}.region-item:hover strong{color:#87582c}.faq{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;background:#f6f6f3}.faq h2{font-size:42px}.faq>div>p:last-child{font-size:16px;color:#66645f;margin-top:30px}.faq-list details{border-bottom:1px solid #cecec7;padding:24px 0}.faq-list details:first-child{border-top:1px solid #cecec7}.faq-list summary{cursor:pointer;font-size:18px;font-weight:500;line-height:1.4;padding-right:20px}.faq-list p{font-size:16px;color:#55554f;margin:18px 0 0}.request{padding:80px 5vw;gap:8vw;background:#20211f}.request-copy h2{font-size:clamp(44px,5vw,70px)}.request-copy>p{color:#d4d0c9;font-size:17px}.request-copy .button{margin-top:20px;align-self:flex-start}.contact-phone{display:block;font-size:clamp(24px,2.4vw,36px);letter-spacing:-.035em;margin:24px 0 0;font-weight:500}.map-link{font-size:14px;display:block;margin-top:24px}.brief-form label>span{font-size:14px;color:#e4e0d8}.brief-form input,.brief-form select,.brief-form textarea{font-size:16px;background:#ffffff08;border:1px solid #ffffff45;padding:13px;min-height:48px;border-radius:2px;width:100%;max-width:100%}.brief-form option{background:#20211f}.brief-form input::placeholder,.brief-form textarea::placeholder{color:#c4bfb5}.form-hint{font-size:13px;color:#c4bfb5;line-height:1.6}.copy-status{font-size:14px}.contacts{display:grid;grid-template-columns:1fr 1fr;column-gap:8vw;row-gap:clamp(20px,3vw,32px)}.contacts>div>p{max-width:480px;color:#66645f}.contact-address{border-left:1px solid #deddd8;padding-left:5vw}.contact-address h3{font-size:28px}.contact-address address{font-style:normal;font-size:20px;margin-top:20px}.contact-address>p{font-size:16px;color:#66645f}.contact-photo{grid-column:1/-1;margin:0}.contact-photo img{display:block;width:100%;height:clamp(300px,38vw,520px);object-fit:cover;border-radius:2px}.site-footer{background:#20211f;color:white}.footer-brand p,.footer-column p,.footer-bottom{color:#ccc8bf;font-size:14px}.footer-column{font-size:14px}.footer-column h2{font-size:13px}.footer-column a{padding:5px 0}.footer-bottom{border-color:#ffffff30}.dialog-visual,.dialog-visual img{min-height:0;height:100%;max-height:80vh;object-fit:cover}.dialog-copy h2{font-size:32px}.dialog-copy{padding:36px}.dialog-copy p{font-size:16px}.dialog-visual{background:var(--warm-white)}.dialog-nav span{font-size:14px}.city-intro{display:grid;grid-template-columns:1.1fr .9fr;gap:6vw;align-items:center}.city-intro h1{font-size:clamp(36px,4.5vw,64px)}.city-intro .eyebrow{margin-top:36px}.city-intro p:not(.eyebrow){font-size:18px;color:#66645f;max-width:650px}.city-intro>img{width:100%;height:580px;object-fit:cover}.city-info{display:grid;grid-template-columns:1fr 1fr;gap:8vw;background:#f6f6f3}.city-info h3{font-size:25px;margin-top:25px}.city-info h3:first-child{margin-top:0}.city-footer{padding:40px 5vw;display:flex;justify-content:space-between;background:#20211f;color:white}.city-page .site-header{position:static}.city-page .site-header>.button{font-size:14px}.city-page .brand{min-width:0}
@media(max-width:1100px){.project-card img{height:300px}.region-item h3{font-size:26px}.region-item p{min-height:170px}.main-nav{display:none}.site-header{grid-template-columns:1fr auto}.menu-toggle{display:block}.header-phone{display:block}.hero-visual figcaption{max-width:250px}.format-content{padding:32px}.city-intro h1{font-size:44px}.contact-photo img{height:420px}}
@media(max-width:800px){.header-phone{display:none}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px}.project-card img{height:300px}.project-meta strong{font-size:20px}.region-grid{grid-template-columns:1fr}.region-item,.region-item+.region-item{padding:26px 0;border-left:0;border-bottom:1px solid #deddd8}.region-item h3{margin:16px 0;font-size:30px}.region-item p{min-height:0;max-width:560px}.faq,.contacts,.city-intro,.city-info{grid-template-columns:1fr;gap:36px}.faq h2{font-size:36px}.request{padding:64px 24px;gap:36px}.request-copy h2{font-size:48px}.contact-address{border-left:0;border-top:1px solid #deddd8;padding:30px 0 0}.dialog-visual img{height:40vh}.project-dialog[open]{grid-template-columns:1fr}.dialog-copy{padding:24px}.dialog-copy h2{font-size:28px}.dialog-nav{margin-top:20px}.mobile-cta{position:fixed;bottom:0;left:0;right:0;z-index:35;display:grid;grid-template-columns:1fr 1.6fr .8fr;gap:0;padding:0 0 env(safe-area-inset-bottom);background:#20211f;transform:none;font-size:14px}.mobile-cta a{padding:17px 8px;text-align:center;color:white}.mobile-cta a:nth-child(2){background:#c99552;color:#20211f}.site-footer{padding-bottom:95px}.city-intro>img{height:420px}.city-footer{gap:20px;flex-wrap:wrap}.hero-visual figcaption{max-width:none}.format-content{padding:32px 24px}.city-page .site-header{gap:12px}.city-page .site-header>.button{padding:12px;font-size:13px}}
@media(max-width:480px){.project-grid{grid-template-columns:1fr}.project-card img{height:390px}.category-card-large{min-height:380px}.category-card{min-height:290px}.category-copy strong{font-size:25px}.direction-card h3{font-size:22px}.form-row{grid-template-columns:1fr}.city-intro h1{font-size:36px}.city-page .brand img{width:145px}.dialog-copy .eyebrow{font-size:12px}.section-heading .text-link{white-space:normal}.material-card p{font-size:16px}}
.hero h1{letter-spacing:-.055em;line-height:1.09}.project-grid{grid-auto-rows:auto}.project-card{align-self:start}.trust-list{grid-template-columns:repeat(3,minmax(0,1fr))}.trust-list li{border:0;padding:0}.brand img{height:60px;width:190px}.hero-visual{min-height:0}.hero-visual figcaption{bottom:30px}.project-dialog .dialog-close{position:absolute}.project-dialog[open]{overflow:auto}.project-card img{transition:filter .2s}.category-grid{grid-template-rows:auto}.category-card-large{min-height:500px}.category-card{height:100%}.city-page .brand img{height:auto}.brief-result{scroll-margin-bottom:90px}.site-header a:focus-visible{outline-color:#ddb77d}
@media(max-width:800px){.brand img{width:172px;height:auto}.trust-list{padding-top:22px}.hero-visual figcaption{bottom:30px}.project-grid{grid-auto-rows:auto}.category-card-large{min-height:380px}.category-grid{grid-auto-rows:300px}.category-card-large{grid-row:span 2}.hero{min-height:790px}.hero-copy{min-height:790px;padding-bottom:125px}.hero-visual figcaption span{font-size:12px;line-height:1.5}.dialog-visual,.dialog-visual img{height:42vh;min-height:0}.site-header{min-height:76px}.hero-copy{padding-top:40px}}
@media(max-width:480px){.hero h1{font-size:42px;letter-spacing:-.04em}.hero-copy{padding-left:22px;padding-right:22px}.trust-list strong{font-size:13px}.trust-list span{font-size:12px}.hero .eyebrow{font-size:12px;letter-spacing:.03em}.category-card-large{grid-row:auto;min-height:300px}.hero-actions{margin-top:25px}.hero-lead{margin-top:24px}.hero-copy{min-height:800px}.hero{min-height:800px}.project-card img{height:380px}.brief-form{padding:0}.category-grid{grid-template-rows:none;grid-auto-rows:320px}.faq-list summary{font-size:17px}.city-page .brand img{width:130px}}
@media(max-width:800px){.mobile-cta{grid-template-columns:.9fr 1.7fr .6fr}.mobile-cta a{font-size:13px;white-space:nowrap;padding:17px 4px}}

.faq-list summary {
  position: relative;
  list-style: none;
  padding-left: 28px;
}
.faq-list summary::-webkit-details-marker {
  display: none;
}
.faq-list summary::marker {
  content: "";
}
.faq-list summary::before {
  content: "+";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  font-size: 22px;
  line-height: 1;
  font-weight: 400;
  color: #20211f;
}
.faq-list details[open] > summary::before {
  content: "−";
}

.request-copy .button-gold {
  margin-right: 24px !important;
}
.request-copy .map-link {
  display: inline-flex !important;
  align-items: center;
  gap: .55rem;
  margin-left: 0 !important;
  margin-top: 20px !important;
  vertical-align: middle;
}

.brief-form select {
  -webkit-appearance: none !important;
  appearance: none !important;
  padding-right: 52px !important;
  background-color: #ffffff08 !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='8' viewBox='0 0 14 8' fill='none'%3E%3Cpath d='M1 1L7 7L13 1' stroke='%23F5F2EB' stroke-width='1.35' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 18px center !important;
  background-size: 14px 8px !important;
}
.brief-form select::-ms-expand { display: none; }

.lead-consent > input[type="checkbox"] {
  -webkit-appearance: none !important;
  appearance: none !important;
  width: 24px !important;
  min-width: 24px !important;
  max-width: 24px !important;
  height: 24px !important;
  min-height: 24px !important;
  max-height: 24px !important;
  flex: 0 0 24px !important;
  margin: .05rem 0 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(37,40,43,.48) !important;
  border-radius: 2px !important;
  background-color: #fff !important;
  background-image: none !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 16px 16px !important;
  box-shadow: none !important;
  cursor: pointer;
  transition: border-color .2s ease, background-color .2s ease !important;
}
.lead-consent > input[type="checkbox"]:hover {
  border-color: var(--gold) !important;
}
.lead-consent > input[type="checkbox"]:checked {
  border-color: var(--gold) !important;
  background-color: var(--gold) !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5.9 12.3l3.8 3.8 8.4-8.4' fill='none' stroke='%2320211f' stroke-width='1.45' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}
.lead-consent > input[type="checkbox"]:focus { outline: none !important; }
.lead-consent > input[type="checkbox"]:focus-visible {
  outline: 2px solid rgba(201,149,82,.30) !important;
  outline-offset: 2px !important;
}
.brief-form .lead-consent > input[type="checkbox"],
.sales-calc-form .lead-consent > input[type="checkbox"] {
  border-color: rgba(255,255,255,.28) !important;
  background-color: transparent !important;
}
.brief-form .lead-consent > input[type="checkbox"]:hover,
.sales-calc-form .lead-consent > input[type="checkbox"]:hover {
  border-color: var(--gold) !important;
}
.brief-form .lead-consent > input[type="checkbox"]:checked,
.sales-calc-form .lead-consent > input[type="checkbox"]:checked {
  border-color: var(--gold) !important;
  background-color: var(--gold) !important;
}

@media (max-width: 800px) {
  .request-copy .button-gold { margin-right: 0 !important; }
  .request-copy .map-link { margin-top: 16px !important; }
}

@media (min-width: 801px) {
  .formats .format-card:first-child .format-content {
    padding-left: 5vw;
  }
}

.lead-dialog .lead-form input:not([type="checkbox"]):not([type="hidden"]):not([type="submit"]),
.lead-dialog .lead-form input[type="text"],
.lead-dialog .lead-form input[type="tel"] {
  min-height: 48px !important;
  height: 48px;
  padding: 13px !important;
  font-size: 16px !important;
  line-height: 1.35;
  box-sizing: border-box;
}

@media (max-width: 800px) {
  .request .brief-form {
    padding: 24px !important;
    gap: 24px !important;
  }

  .request .brief-form label {
    gap: 10px !important;
    margin: 0 !important;
  }

  .request .brief-form .form-row {
    gap: 24px !important;
  }

  .request .brief-form input,
  .request .brief-form select,
  .request .brief-form textarea {
    margin: 0 !important;
  }

  .request .brief-form textarea {
    min-height: 128px;
  }

  .request .brief-form > .button {
    margin-top: 2px !important;
  }

  .request .brief-form .form-hint,
  .request .brief-form .lead-consent,
  .request .brief-form .lead-form-status {
    margin-top: -2px;
  }
}

@media (max-width: 480px) {
  .request .brief-form {
    padding: 20px !important;
    gap: 22px !important;
  }

  .request .brief-form .form-row {
    gap: 22px !important;
  }
}

@media (max-width: 800px) {
  .mobile-cta {
    grid-template-columns: .8fr 1fr .6fr !important;
  }
}

@media (min-width: 801px) {
  .site-header {
    padding-left: 5vw !important;
    padding-right: 5vw !important;
  }
}

.eyebrow,
.hero .eyebrow,
.dialog-copy .eyebrow,
.city-intro .eyebrow,
.project-cta-copy .eyebrow{
  font-size:14px !important;
}

@media (min-width: 801px) {
  .faq h2,
  .request-copy h2 {
    font-size: 56px !important;
  }
}

.main-nav,
.main-nav a,
.header-cta,
.button,
.text-link,
.filter-button,
.region-item strong,
.map-link,
.dialog-detail-link,
.dialog-nav a,
.dialog-nav button,
.city-page .site-header > .button,
.mobile-cta,
.mobile-cta a,
.footer-column a,
.social-links a {
  font-size:15px !important;
}

.process-list > li:first-child > div{
  left:0 !important;
  right:auto !important;
}

@media (max-width:800px){
  .section h2,
  .faq h2,
  .request-copy h2,
  .formats h2,
  .format-content h2,
  .city-intro h1{
    font-size:36px !important;
  }
}

@media (max-width:1024px){
  .request-copy h2{
    font-size:36px !important;
    line-height:1.08 !important;
  }
}

@media (max-width: 800px){
  .contact-photo img{
    height:320px !important;
  }
}
@media (max-width: 480px){
  .contact-photo img{
    height:260px !important;
  }
}

.messenger-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.messenger-icon{
  display:block;
  width:18px;
  height:18px;
  flex:0 0 18px;
  color:currentColor;
}
.social-links .messenger-link{
  align-items:center;
}
.social-links .messenger-link .site-arrow{
  margin-left:1px;
}
.drawer-messenger-label{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-width:0;
}
.site-drawer .drawer-messengers .drawer-arrow-link{
  align-items:center;
}
.site-drawer .drawer-messengers .drawer-arrow-link > .site-arrow{
  margin-top:0;
}

.preserve-lines{white-space:pre-line}.empty-portfolio{grid-column:1/-1;padding:40px 0}.region-grid:empty{display:none}.project-detail{max-width:1440px;margin:auto}.project-detail>.eyebrow{margin-top:48px}.project-detail h1{max-width:1000px;font-size:clamp(34px,5vw,68px)}.project-description{max-width:800px;line-height:1.8;margin:30px 0 50px;font-size:18px}.project-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:40px}.gallery-item{padding:0;background:transparent;border:0;cursor:zoom-in}.gallery-item img{width:100%;height:540px;object-fit:cover;display:block}.gallery-item:first-child{grid-column:1/-1}.gallery-item:first-child img{height:min(70vw,780px);object-fit:contain;background:#eeeee9}.gallery-dialog{border:0;background:#1e211e;color:#fff;padding:40px;width:min(1200px,96vw);max-height:94vh}.gallery-dialog::backdrop{background:#000c}.gallery-dialog>[data-gallery-image]{width:100%;height:72vh;object-fit:contain}.gallery-close{position:absolute;top:7px;right:15px;background:none;color:white;border:0;font-size:36px;cursor:pointer}.gallery-controls{display:flex;gap:25px;justify-content:center;align-items:center}.gallery-controls button,.album-nav button{border:1px solid #aaa;padding:8px 20px;background:transparent;color:inherit;cursor:pointer}.album-nav{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;width:100%;margin:16px 0;color:#20211f}.album-nav span{text-align:center}.album-nav[hidden]{display:none}.dialog-detail-link{display:inline-block;margin:12px 0;text-decoration:underline}#dialog-description{white-space:pre-line}
@media(max-width:767px){.project-gallery{grid-template-columns:1fr;gap:16px}.gallery-item img{height:auto;max-height:560px;object-fit:contain}.gallery-item:first-child img{height:auto}.project-description{font-size:16px}.gallery-dialog{padding:35px 12px 16px}.gallery-dialog>[data-gallery-image]{height:65vh}.city-footer{gap:20px;flex-wrap:wrap}.region-item p{min-height:0}}

.gallery-controls button>.site-arrow,.album-nav button>.site-arrow{display:block}
.arrow-link.dialog-detail-link{display:inline-flex;align-items:center;gap:.45rem}
.map-link{display:inline-flex;align-items:center;gap:.45rem}
.mobile-cta .arrow-link{justify-content:center}

body{background:var(--paper);color:var(--graphite)}
.site-header,.city-page .site-header{position:var(--kvd-header-position);background:var(--kvd-header);color:var(--kvd-header-text);grid-template-columns:var(--kvd-logo) minmax(0,1fr) auto}
.brand img,.city-page .brand img{width:var(--kvd-logo);height:auto;max-height:70px}.main-nav{flex-wrap:wrap;gap:5px 18px}.main-nav a{white-space:nowrap}.main-nav a[aria-current=page]{text-decoration:underline;text-underline-offset:7px}
.mobile-nav{background:var(--kvd-header);color:var(--kvd-header-text);max-height:calc(100dvh - 90px);overflow-y:auto}.menu-toggle span{background:var(--kvd-header-text)}
.section{padding-top:var(--kvd-spacing);padding-bottom:var(--kvd-spacing)}.project-grid{grid-template-columns:repeat(var(--kvd-columns),minmax(0,1fr))}
.hero h1 em{color:var(--gold)}.mobile-cta a:nth-child(2){background:var(--gold)}
.site-footer{background:var(--kvd-footer);color:var(--kvd-footer-text)}.footer-brand p,.footer-column p,.footer-bottom{color:inherit;opacity:.85}.social-links{display:flex;flex-wrap:wrap;gap:12px 18px;margin-top:18px;font-size:14px}.social-links a{text-decoration:underline;text-underline-offset:4px}
.custom-page{width:min(860px,90%);margin:0 auto;padding:70px 0 30px}.custom-page-wide{width:min(1280px,90%)}.page-title{margin:42px 0 35px}.page-title h1{font-size:clamp(36px,5vw,68px);max-width:1100px;overflow-wrap:anywhere}.page-intro{font-size:clamp(18px,2vw,23px);max-width:900px;margin:26px 0 0;line-height:1.6}.page-cover{margin:35px 0}.page-cover img{width:100%;height:auto;max-height:680px;object-fit:cover}.page-text{font-size:18px;line-height:1.8;overflow-wrap:anywhere}.page-text p{margin:0 0 1.3em}.page-blocks{padding-top:10px;padding-bottom:70px}.page-blocks>h2{font-size:clamp(28px,4vw,44px);margin:48px 0 22px}.page-blocks>.page-text,.page-image,.page-gallery,.page-button{margin:28px 0}.page-image{margin-inline:0}.page-image .gallery-item{width:100%}.page-image .gallery-item img{width:100%;height:auto;max-height:900px;object-fit:contain}.page-image figcaption{font-size:14px;margin:12px 0;color:#73736b}.page-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.page-gallery .gallery-item{grid-column:auto}.page-gallery .gallery-item img{height:350px;object-fit:cover}.page-contact{width:min(1100px,90%);margin:30px auto 80px;padding:40px 0;border-top:1px solid var(--line)}.page-contact h2{font-size:clamp(28px,4vw,44px)}.city-intro.without-cover{grid-template-columns:1fr}.preview-banner{padding:15px 5vw;background:#fff0d1;color:#372c13;display:flex;flex-wrap:wrap;justify-content:space-between;gap:15px}.preview-banner a{text-decoration:underline}
@media(max-width:1200px){.site-header,.city-page .site-header{grid-template-columns:1fr auto}.main-nav{display:none}.menu-toggle{display:block}}
@media(max-width:800px){.brand img,.city-page .brand img{width:min(var(--kvd-logo),162px)}.site-header{gap:14px}.header-cta{max-width:210px;text-align:center}.section{padding-top:min(var(--kvd-spacing),64px);padding-bottom:min(var(--kvd-spacing),64px)}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.custom-page{padding-top:40px}.page-blocks{padding-top:0}.page-text{font-size:16px}.page-gallery .gallery-item img{height:240px}.page-contact{margin-bottom:60px}.mobile-cta a{white-space:normal;display:flex;align-items:center;justify-content:center}.site-footer{padding-bottom:100px}}
@media(max-width:480px){.project-grid,.page-gallery{grid-template-columns:1fr}.header-cta{max-width:150px;font-size:12px;padding:10px}.brand img,.city-page .brand img{width:min(var(--kvd-logo),162px)}.header-tools{gap:8px}.page-gallery .gallery-item img{height:auto;max-height:500px;object-fit:contain}.page-title h1{font-size:34px}.page-title{margin-top:30px}}

.page-text h2{font-size:clamp(28px,4vw,44px);line-height:1.12;margin:1.35em 0 .55em}
.page-text h3{font-size:clamp(23px,3vw,32px);line-height:1.2;margin:1.25em 0 .5em}
.page-text ul,.page-text ol{margin:0 0 1.3em;padding-left:1.4em}
.page-text li{margin:.35em 0}
.page-text blockquote{margin:1.5em 0;padding-left:1.25em;border-left:2px solid var(--gold);color:#686860}
.page-text a{color:inherit;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;transition:color .2s ease,text-decoration-color .2s ease}
.page-text a:hover{color:var(--gold);text-decoration-color:var(--gold)}

