/* Visual direction for the three standalone portfolio concepts.
   The exported pages keep their original inline styles; scoped overrides live here. */
html { scroll-behavior: smooth; }
body { --ink: #243e34; --accent: #466951; --paper: #f8f9f5; --line: #d7dfd4; }
body.demo-residence { --ink: #272923; --accent: #8f6749; --paper: #f5f3ed; --line: #d9d8ce; }
body.demo-clay { --ink: #392a20; --accent: #994b30; --paper: #f7f2e9; --line: #dfd4c4; }
:focus-visible { outline: 2px solid var(--accent); outline-offset: 5px; }
::selection { background: var(--accent); color: white; }
section { scroll-margin-top: 32px; }
h1, h2, h3 { text-wrap: balance; }
p { text-wrap: pretty; }
button, a { -webkit-tap-highlight-color: transparent; }
a, button { transition: background-color .2s, color .2s, border-color .2s; }
body .d-hero { min-height: 0 !important; display: block !important; border-bottom: 0 !important; }
body .d-padx, body .d-pad, body .d-pad-b { padding-left: clamp(24px, 5vw, 100px) !important; padding-right: clamp(24px, 5vw, 100px) !important; max-width: 1600px !important; }
body .d-pad { padding-top: 110px !important; }
body .d-pad-b { padding-top: 100px !important; padding-bottom: 100px !important; }
body .d-mt { margin-top: 110px !important; }
body .d-nav { padding-top: 26px !important; padding-bottom: 26px !important; gap: 30px !important; z-index: 10; border-bottom: 1px solid var(--line) !important; }
body .d-nav-links { gap: 25px !important; font-size: 14px !important; }
body .d-nav > div:first-child > span + span { display: none; }
body .d-nav > div:first-child > span:first-child { font-size: 25px !important; }
body .d-nav-links > a:hover { color: var(--accent) !important; }
body .d-nav-actions { flex-shrink: 0; }
body .d-nav-cta { font-size: 13px !important; }
body .d-row { gap: 36px !important; }
body h2 { font-size: clamp(32px, 3.3vw, 52px) !important; line-height: 1.12 !important; font-weight: 500 !important; }
body h3 { line-height: 1.25; }
.eyebrow { display: block; font-size: 11px; line-height: 1.6; font-weight: 500; letter-spacing: .15em; text-transform: uppercase; }
.design-button { display: inline-flex; align-items: center; justify-content: space-between; gap: 32px; min-height: 54px; padding: 17px 24px; color: white; background: var(--ink); font-size: 14px; font-weight: 500; }
.design-button:hover { color: white; background: var(--accent); }
.design-button > span { font-size: 22px; line-height: 1; }
.hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 25px; }
.text-link { font-size: 14px; display: inline-flex; align-items: center; gap: 16px; padding: 12px 0; border-bottom: 1px solid var(--line); }

/* Kostelní 9: calm editorial typography, warm whites and a single generous image. */
.demo-dental > x-dc > div, .demo-dental .d-hero { background: var(--paper) !important; color: var(--ink) !important; }
.demo-dental .d-nav > div:first-child { position: relative; padding-left: 36px; }
.demo-dental .d-nav > div:first-child::before { content: '✳'; position: absolute; left: 0; top: -4px; font-size: 32px; color: var(--accent); }
.dent-hero { max-width: 1600px; margin: auto; padding: 60px clamp(24px, 5vw, 100px) 52px; display: grid; grid-template-columns: 1fr 1fr; gap: 7%; align-items: center; }
.dent-copy .eyebrow { color: #67776b; margin-bottom: 25px; }
.dent-copy h1 { font-family: 'Source Serif 4', Georgia, serif; font-size: clamp(64px, 6.5vw, 102px) !important; line-height: .99; letter-spacing: -.055em; font-weight: 400; margin: 0 0 28px; }
.dent-copy h1 em { color: #6e8461; font-weight: 400; }
.dent-copy > p { max-width: 410px; font-size: 16px; line-height: 1.8; color: #627065; margin: 0 0 28px; }
.dent-copy .design-button { border-radius: 50px; }
.dent-availability { display: flex; align-items: center; flex-wrap: wrap; gap: 9px; margin-top: 30px; font-size: 12px; color: #57665b; }
.dent-availability > span:first-child { width: 6px; height: 6px; border-radius: 50%; background: #73916b; }
.dent-availability small { font-size: 12px; color: #657163; }
.availability-divider { opacity: .4; padding: 0 4px; }
.dent-visual { position: relative; padding-bottom: 26px; }
.photo-caption { display: flex; justify-content: space-between; gap: 16px; margin-bottom: 17px; color: #69786d; font-size: 11px; }
.dent-main-photo { display: block; width: 100%; height: clamp(460px, 39vw, 610px); object-fit: cover; object-position: 55% center; border-radius: 160px 12px 12px 12px; }
.dent-photo-note { position: absolute; bottom: 0; left: -30px; display: flex; align-items: center; gap: 18px; padding: 23px 28px; border: 1px solid #e0e5db; border-radius: 8px; background: #fffef8; box-shadow: 0 14px 35px #233d3010; }
.note-symbol { color: #879b75; font-size: 40px; line-height: 1; }
.dent-photo-note strong { display: block; font: 400 20px/1.3 'Source Serif 4', serif; }
.dent-photo-note div > span { display: block; margin-top: 5px; font-size: 12px; color: #6b7568; }
.dent-proof { max-width: 1600px; margin: auto; padding: 28px clamp(24px, 5vw, 100px); display: grid; grid-template-columns: 1fr .8fr 1.2fr 1fr; align-items: center; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); gap: 24px; }
.dent-proof > div { display: flex; flex-direction: column; gap: 5px; }
.dent-proof strong { font: 400 22px/1.4 'Source Serif 4', serif; }
.dent-proof > div > span { color: #667367; font-size: 11px; }
.rating-stars { font: 12px sans-serif; letter-spacing: 2px; color: #80916c; margin-left: 9px; }
.dent-proof > a { font-size: 13px; display: flex; gap: 16px; justify-content: flex-end; }
.demo-dental .services-section > .d-grid { border: 0 !important; background: transparent !important; gap: 0 !important; }
.demo-dental .services-section > .d-grid > div { border-top: 1px solid var(--line); background: transparent !important; padding: 32px 32px 40px 0 !important; }
.demo-dental .services-section > .d-grid > div > div:first-child { font-size: 12px !important; color: #8b9d82 !important; }
.demo-dental .services-section h3 { font-weight: 400 !important; font-size: 26px !important; }
.demo-dental #prubeh { background: #e9eee4 !important; border: 0 !important; }
.demo-dental #prubeh > .d-grid { grid-template-columns: .9fr 1.1fr !important; gap: 80px !important; }
.demo-dental #prubeh .d-grid .d-grid { grid-template-columns: 36px minmax(0, 1fr) !important; gap: 20px !important; }
.demo-dental #prubeh .d-grid .d-grid > :first-child { font-size: 30px !important; }
.demo-dental #prubeh .d-grid .d-grid > :last-child { grid-column: 2; text-align: left !important; padding: 0 !important; }
.demo-dental #tym > .d-grid { gap: 36px !important; }
.demo-dental #tym > .d-grid > div > div:first-child { border-radius: 6px !important; height: 360px !important; }
.demo-dental #tym > .d-grid > div:nth-child(2) { padding-top: 48px; }
.demo-dental #tym img { filter: saturate(.65); }
.demo-dental .contact-card { background: #edf0e7 !important; box-shadow: none; border: 0 !important; }

/* Kamenná Čtvrť: architectural grid, quiet stone colours and large photographic space. */
.demo-residence > x-dc > div, .demo-residence .d-hero { background: var(--paper) !important; }
.demo-residence .d-nav > div:first-child > span:first-child { font-size: 17px !important; letter-spacing: .09em !important; }
.demo-residence .d-nav > div:first-child::before { content: ''; width: 25px; height: 28px; display: block; border: 1px solid var(--ink); border-top-width: 5px; box-shadow: inset 7px 0 var(--paper), inset 8px 0 var(--ink); transform: skewY(-10deg); align-self: center; }
.demo-residence .d-nav-cta { background: var(--ink); color: #faf8f2; padding: 14px 22px !important; border: 0 !important; }
.residence-hero { min-height: 720px; height: min(850px, calc(100svh - 90px)); position: relative; isolation: isolate; color: #fff; overflow: hidden; }
.residence-photo, .residence-shade { position: absolute; width: 100%; height: 100%; inset: 0; }
.residence-photo { object-fit: cover; object-position: center 52%; }
.residence-shade { background: linear-gradient(90deg, #17241deb, #17241d66 55%, #17241d0d), linear-gradient(0deg, #17241d80, transparent 50%); }
.residence-copy { position: relative; max-width: 1600px; margin: auto; padding: clamp(95px, 10vh, 150px) clamp(24px, 5vw, 100px) 130px; }
.residence-copy .eyebrow { color: #e4e4d7; margin-bottom: 35px; letter-spacing: .17em; }
.residence-copy h1 { font: 400 clamp(60px, 6vw, 96px)/1.05 'Archivo', sans-serif !important; letter-spacing: -.055em; margin: 0 0 26px; }
.residence-copy h1 em { font-style: normal; color: #d0d4bd; }
.residence-copy p { font-size: 16px; line-height: 1.8; color: #e1e5dd; margin-bottom: 34px; }
.residence-copy .design-button { background: #efeee5; color: #263329; min-width: 215px; }
.residence-copy .design-button:hover { background: #d3d8c6; }
.residence-availability { position: absolute; right: max(5vw, calc((100vw - 1400px)/2)); bottom: 104px; width: 300px; background: #f7f5ed; color: #2e372d; padding: 26px; }
.residence-availability:hover { color: #2e372d; background: #fffdf5; }
.residence-availability > .eyebrow { color: #65735e; font-size: 10px; letter-spacing: .14em; }
.residence-availability > div { display: flex; align-items: center; gap: 18px; margin: 15px 0 18px; }
.residence-availability strong { font: 400 64px/1 'Archivo', sans-serif; letter-spacing: -.07em; }
.residence-availability > div > span { font-size: 12px; line-height: 1.5; }
.residence-availability .availability-arrow { margin-left: auto; font-size: 25px; }
.availability-track { display: block; height: 3px; background: #dce1d4; }
.availability-track > span { display: block; height: 3px; width: 56.45%; background: #738562; }
.availability-foot { display: flex; justify-content: space-between; gap: 12px; font-size: 10px; margin-top: 12px; }
.residence-caption { position: absolute; bottom: 0; left: 0; right: 0; display: flex; justify-content: space-between; border-top: 1px solid #ffffff40; padding: 22px 5vw; font-size: 11px; letter-spacing: .05em; }
.residence-caption a { color: white; display: flex; gap: 25px; }
.residence-facts { display: grid; grid-template-columns: repeat(4, 1fr); max-width: 1600px; margin: auto; padding: 34px clamp(24px, 5vw, 100px); gap: 35px; border-bottom: 1px solid var(--line); }
.residence-facts > div { display: grid; gap: 12px; }
.residence-facts > div + div { border-left: 1px solid var(--line); padding-left: 30px; }
.residence-facts span { font-size: 10px; letter-spacing: .1em; color: #73786c; text-transform: uppercase; }
.residence-facts strong { font-weight: 400; font-size: clamp(16px, 1.5vw, 23px); }
.demo-residence #o-projektu > .d-grid { gap: 80px !important; }
.demo-residence #o-projektu p { font-size: 15px; font-weight: 400; }
.demo-residence #o-projektu > .d-grid > div:last-child > div:first-child { background-position: center 60% !important; }
.demo-residence #byty { background: #eaece3 !important; border: 0 !important; }
.demo-residence #byty h2 { max-width: 680px; }
.demo-residence .d-table { border: 0 !important; background: #fdfcf8 !important; }
.demo-residence .d-trow { padding-top: 24px !important; padding-bottom: 24px !important; font-size: 14px !important; }
.demo-residence .d-trow:first-child { background: #303c30 !important; font-size: 10px !important; }
.demo-residence .d-trow:not(:first-child):hover { background: #f2f4ec; }
.demo-residence .d-trow > :last-child > span { border: 0 !important; box-shadow: none !important; border-radius: 2px !important; }
.demo-residence #kontakt { background: #e9ece3 !important; }
.demo-residence .contact-card { background: #fbfcf6 !important; border: 0 !important; }

/* Hlína a Klid: tactile paper tones, a generous product still life and open product cards. */
.demo-clay > x-dc > div, .demo-clay .d-hero { background: var(--paper) !important; }
.demo-clay .d-topbar { justify-content: center !important; padding-top: 9px !important; padding-bottom: 9px !important; font-size: 11px !important; letter-spacing: .07em !important; }
.demo-clay .d-topbar > span + span { display: none; }
.demo-clay .d-hero > div:first-child { background: #615743 !important; }
.demo-clay .d-nav > div:first-child > span:first-child { font-size: 31px !important; }
.demo-clay .d-nav-cta { background: transparent !important; color: var(--ink) !important; border: 1px solid var(--line); border-radius: 0 !important; }
.demo-clay .d-nav-cta > span:last-child { display: none; }
.clay-hero { max-width: 1600px; margin: auto; padding: 40px clamp(24px, 5vw, 100px) 42px; }
.clay-heading { text-align: center; margin: 0 0 32px; }
.clay-heading .eyebrow { color: #826c56; font-size: 10px; letter-spacing: .13em; margin-bottom: 20px; }
.clay-heading h1 { font: 400 clamp(72px, 7vw, 106px)/.92 "Newsreader", Georgia, serif !important; letter-spacing: -.05em; margin: 0; }
.clay-heading h1 em { font-weight: 400; color: #994b30; }
.clay-editorial { display: grid; grid-template-columns: .7fr 2fr; gap: 60px; align-items: center; }
.clay-edition { display: flex; align-items: center; gap: 16px; margin-bottom: 24px; font: 36px "Newsreader", Georgia, serif; }
.clay-edition > span { font: 10px "Karla", sans-serif; letter-spacing: .08em; text-transform: uppercase; color: #8c7964; }
.clay-copy p { max-width: 350px; font-size: 16px; line-height: 1.8; color: #7c6b57; margin: 0 0 30px; }
.clay-copy .design-button { background: #994b30; width: 100%; min-width: 0; font-size: 13px; padding: 17px 20px; gap: 16px; }
.clay-copy .design-button:hover { background: #713b29; }
.clay-signature { display: grid; gap: 12px; margin-top: 34px; padding-top: 23px; border-top: 1px solid var(--line); max-width: 350px; }
.clay-signature > span:first-child { font-size: 11px; color: #82715d; }
.clay-signature > span:last-child { font: italic 25px 'Newsreader', Georgia, serif; color: #635442; }
.clay-visual { position: relative; align-self: stretch; min-width: 0; padding-bottom: 30px; }
.clay-main-photo { width: 100%; height: 400px; display: block; object-fit: cover; object-position: center 57%; border-radius: 2px; }
.clay-stamp { position: absolute; z-index: 1; right: -22px; top: 24px; width: 105px; height: 105px; display: flex; align-items: center; flex-direction: column; justify-content: center; gap: 7px; background: #f6efd9; border: 1px solid #d2bf9e; outline: 6px solid #f6efd9; border-radius: 50%; color: #81634b; transform: rotate(12deg); }
.clay-stamp span { font-size: 9px; letter-spacing: .13em; }
.clay-stamp strong { font-size: 31px; font-weight: 400; line-height: 1; }
.clay-product-caption { position: absolute; left: auto; right: 22px; min-width: 300px; bottom: 52px; padding: 22px 24px; background: #fffdf4ee; backdrop-filter: blur(12px); display: flex; justify-content: space-between; align-items: center; gap: 18px; }
.clay-product-caption small { display: block; font-size: 10px; color: #81715d; margin-bottom: 8px; }
.clay-product-caption strong { font: 400 25px 'Newsreader', Georgia, serif; }
.clay-product-caption strong em { font: 12px 'Karla', sans-serif; color: #8a7964; margin-left: 8px; }
.clay-product-caption > span:last-child { font-size: 15px; white-space: nowrap; }
.clay-product-caption > span:last-child > span { margin-left: 16px; }
.clay-photo-label { position: absolute; left: 0; bottom: 0; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; color: #8c7c67; }
.clay-promises { display: flex; justify-content: space-between; max-width: 1600px; margin: auto; padding: 27px clamp(24px, 5vw, 100px); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); gap: 20px; font-size: 12px; color: #776651; }
.clay-promises > span { display: flex; align-items: center; gap: 12px; }
.clay-promises > span > span { font-size: 21px; color: #9c5033; }
.demo-clay .products-section > .d-grid { gap: 24px !important; }
.demo-clay .products-section > .d-grid > div { background: transparent !important; border: 0 !important; border-radius: 0 !important; }
.demo-clay .products-section > .d-grid > div > div:first-child { height: 310px !important; border-radius: 2px; overflow: hidden; }
.demo-clay .products-section > .d-grid > div > div:last-child { padding: 22px 0 0 !important; }
.demo-clay .products-section > .d-grid > div > div:first-child > span { top: 12px !important; left: 12px !important; font-size: 9px !important; letter-spacing: .06em !important; }
.demo-clay .products-section h3 { font-size: 26px !important; }
.demo-clay .products-section p { font-size: 14px !important; }
.demo-clay .collections-section .d-grid > a > div:first-child { border-radius: 50% 50% 2px 2px !important; height: 370px !important; }
.demo-clay .collections-section .d-grid > a:nth-child(2) { padding-top: 48px; }
.demo-clay #dilna { background: #e8e0d0 !important; border: 0 !important; }
.demo-clay #dilna > .d-grid { gap: 80px !important; }
.demo-clay #dilna > .d-grid > div:first-child { border-radius: 3px !important; }
.demo-clay #dilna p { font-size: 15px; }
.demo-clay .newsletter-card { border-radius: 3px !important; border: 0 !important; background: #e8dfce !important; }

@media (min-width: 1600px) {
  .dent-hero { padding-top: 75px; padding-bottom: 70px; }
  .clay-hero { padding-top: 65px; padding-bottom: 65px; }
  .clay-main-photo { height: 460px; }
}
@media (max-width: 1100px) {
  body .d-nav-links { gap: 16px !important; }
  body .d-nav > div:first-child > span:first-child { font-size: 22px !important; }
  .dent-hero { gap: 5%; }
  .dent-copy h1 { font-size: 72px !important; }
  .dent-photo-note { left: -12px; padding: 18px; }
  .dent-photo-note strong { font-size: 18px; }
  .dent-proof { grid-template-columns: repeat(3, 1fr); }
  .dent-proof > a { display: none; }
  .demo-dental #prubeh > .d-grid, .demo-residence #o-projektu > .d-grid, .demo-clay #dilna > .d-grid { gap: 40px !important; }
  .clay-editorial { grid-template-columns: .85fr 1.5fr; gap: 30px; }
  .clay-main-photo { height: 420px; }
  .clay-stamp { right: -10px; width: 85px; height: 85px; }
  .clay-product-caption { left: 12px; right: 12px; padding: 18px; flex-wrap: wrap; }
  .residence-copy h1 { font-size: 68px !important; }
  .residence-availability { width: 255px; padding: 22px; bottom: 90px; }
  .residence-facts { gap: 22px; }
  .residence-facts > div + div { padding-left: 20px; }
  .demo-clay .products-section > .d-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 40px 24px !important; }
}
@media (max-width: 760px) {
  body .d-nav { padding: 20px !important; }
  body .d-padx, body .d-pad, body .d-pad-b { padding-left: 22px !important; padding-right: 22px !important; }
  body .d-pad { padding-top: 72px !important; }
  body .d-pad-b { padding-top: 64px !important; padding-bottom: 64px !important; }
  body .d-mt { margin-top: 72px !important; }
  body .d-row { gap: 20px !important; margin-bottom: 34px !important; }
  body .d-nav-links { background: var(--paper) !important; }
  body h1 br { display: initial; }
  body h2 { font-size: 35px !important; }
  body .contact-card, body .newsletter-card { padding: 30px 22px !important; }
  body .d-nav-burger { border-color: var(--line); border-radius: 0; color: var(--ink); }
  .dent-hero { grid-template-columns: 1fr; padding: 42px 22px 34px; gap: 38px; }
  .dent-copy h1 { font-size: clamp(62px, 15vw, 86px) !important; }
  .dent-copy .eyebrow { font-size: 10px; margin-bottom: 22px; }
  .dent-copy p { font-size: 15px; max-width: 400px; }
  .hero-actions { gap: 16px; }
  .dent-copy .design-button { padding: 16px 21px; font-size: 13px; }
  .dent-availability { margin-top: 25px; font-size: 11px; }
  .dent-availability small { font-size: 11px; }
  .dent-main-photo { height: 400px; border-radius: 110px 8px 8px 8px; }
  .dent-photo-note { left: 12px; right: 12px; bottom: 5px; padding: 19px; }
  .dent-proof { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 24px 22px; gap: 24px; }
  .dent-proof > div:last-of-type { grid-column: 1 / -1; padding-top: 18px; border-top: 1px solid var(--line); }
  .dent-proof strong { font-size: 21px; }
  .demo-dental .services-section > .d-grid { grid-template-columns: 1fr !important; }
  .demo-dental .services-section > .d-grid > div { padding: 27px 0 !important; }
  .demo-dental #prubeh > .d-grid { grid-template-columns: 1fr !important; }
  .demo-dental #tym > .d-grid > div:nth-child(2) { padding-top: 0; }
  .demo-dental #tym > .d-grid > div > div:first-child { height: 380px !important; }
  .demo-residence .d-nav { gap: 12px !important; }
  .demo-residence .d-nav > div:first-child { gap: 9px !important; }
  .demo-residence .d-nav > div:first-child > span:first-child { font-size: 12px !important; }
  .demo-residence .d-nav > div:first-child::before { width: 17px; height: 22px; }
  .demo-residence .d-nav-cta { padding: 11px !important; font-size: 11px !important; }
  .residence-hero { min-height: 770px; height: auto; }
  .residence-copy { padding: 66px 22px 330px; }
  .residence-copy h1 { font-size: clamp(42px, 10.8vw, 66px) !important; letter-spacing: -.05em; }
  .residence-copy .eyebrow { max-width: 260px; font-size: 9px; margin-bottom: 30px; }
  .residence-copy p { font-size: 14px; }
  .residence-photo { object-position: 60% center; }
  .residence-shade { background: linear-gradient(90deg, #17241dde, #17241d50), linear-gradient(0deg, #17241d77, transparent); }
  .residence-availability { left: 22px; right: 22px; width: auto; bottom: 88px; padding: 22px; max-width: 390px; }
  .residence-availability > div { margin: 12px 0; }
  .residence-availability strong { font-size: 51px; }
  .residence-caption { padding: 22px; font-size: 9px; }
  .residence-caption a { gap: 12px; }
  .residence-facts { grid-template-columns: 1fr 1fr; padding: 30px 22px; gap: 30px 20px; }
  .residence-facts > div + div { padding-left: 0; border: 0; }
  .residence-facts strong { font-size: 17px; }
  .residence-facts span { font-size: 9px; }
  .demo-residence #o-projektu > .d-grid { gap: 30px !important; }
  .clay-hero { padding: 35px 22px 30px; }
  .clay-heading { margin-bottom: 28px; }
  .clay-heading .eyebrow { font-size: 8px; letter-spacing: .07em; margin-bottom: 24px; }
  .clay-heading h1 { font-size: clamp(57px, 15vw, 90px) !important; }
  .clay-editorial { display: flex; flex-direction: column-reverse; gap: 24px; }
  .clay-copy { width: 100%; }
  .clay-edition { font-size: 28px; margin-bottom: 14px; }
  .clay-copy p { margin-bottom: 20px; }
  .clay-copy .design-button { width: auto; min-width: 220px; }
  .clay-copy p { font-size: 15px; }
  .clay-signature { margin-top: 28px; display: flex; justify-content: space-between; align-items: center; max-width: none; }
  .clay-signature > span:first-child { font-size: 10px; }
  .clay-signature > span:last-child { font-size: 21px; }
  .clay-main-photo { height: 350px; }
  .clay-product-caption { min-width: 0; left: 14px; right: 14px; bottom: 45px; gap: 12px; padding: 18px; }
  .clay-product-caption strong { font-size: 22px; }
  .clay-product-caption strong em { font-size: 10px; }
  .clay-product-caption small { font-size: 9px; }
  .clay-product-caption > span:last-child { font-size: 13px; }
  .clay-stamp { top: 20px; right: -4px; }
  .clay-promises { padding: 22px; flex-wrap: wrap; gap: 14px; font-size: 11px; }
  .clay-promises > span { width: 100%; }
  .demo-clay .products-section > .d-grid { gap: 32px 16px !important; }
  .demo-clay .products-section > .d-grid > div > div:first-child { height: 210px !important; }
  .demo-clay .products-section h3 { font-size: 23px !important; }
  .demo-clay .products-section > .d-grid > div > div:last-child > div { font-size: 12px !important; }
  .demo-clay .products-section > .d-grid > div > div:last-child > div:last-child { align-items: flex-start !important; flex-direction: column; gap: 8px !important; }
  .demo-clay .products-section p { display: none; }
  .demo-clay .collections-section .d-grid > a:nth-child(2) { padding-top: 0; }
  .demo-clay .collections-section .d-grid { gap: 40px !important; }
}
@media (max-width: 370px) {
  .demo-residence .d-nav > div:first-child::before { display: none; }
  .demo-dental .d-nav > div:first-child { padding-left: 27px; }
  .demo-dental .d-nav > div:first-child::before { font-size: 25px; top: 0; }
  .demo-dental .d-nav > div:first-child > span:first-child { font-size: 20px !important; }
  .dent-availability .availability-divider { display: none; }
  .dent-availability small { width: 100%; padding-left: 15px; }
  .clay-signature { flex-wrap: wrap; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  a, button { transition: none; }
}

.demo-clay .clay-process > .d-grid > div { padding-top: 28px; border-top: 1px solid var(--line); }
.demo-clay .clay-process > .d-grid { gap: 40px !important; }
.demo-clay .clay-process > .d-grid > div > div:first-child { font-size: 12px !important; margin-bottom: 24px !important; }
.demo-residence .d-nav .d-nav-actions .d-nav-cta { padding: 13px 20px !important; }
@media (max-width: 760px) {
  .demo-residence .d-nav .d-nav-actions .d-nav-cta { padding: 11px !important; }
}

.residence-gallery { background: #2c372e; color: #f0f1e7; }
.residence-gallery .d-row { display: flex; align-items: flex-end; justify-content: space-between; margin-bottom: 45px; }
.residence-gallery .eyebrow { color: #a4b398; margin-bottom: 20px; }
.residence-gallery h2 { margin: 0; max-width: 650px; }
.residence-gallery p { margin: 0; font-size: 14px; line-height: 1.8; color: #c2cbbb; }
.residence-gallery-grid { display: grid; grid-template-columns: 1.35fr 1fr; gap: 32px; align-items: start; }
.residence-gallery-grid figure { margin: 0; min-width: 0; }
.residence-gallery-grid figure:nth-child(2) { padding-top: 75px; }
.residence-gallery-grid img { display: block; width: 100%; height: 490px; object-fit: cover; }
.residence-gallery-grid figure:nth-child(2) img { height: 415px; }
.residence-gallery-grid figcaption { display: flex; justify-content: space-between; gap: 18px; padding-top: 16px; color: #c2cbbb; font-size: 10px; }
@media (max-width: 760px) {
  .residence-gallery-grid { grid-template-columns: 1fr; gap: 32px; }
  .residence-gallery-grid figure:nth-child(2) { padding-top: 0; }
  .residence-gallery-grid img, .residence-gallery-grid figure:nth-child(2) img { height: 320px; }
}





