/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:"Inter", system-ui, -apple-system, sans-serif;--font-serif:"Cormorant Garamond", Georgia, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-sage:#b5b893;--color-sage-deep:#9ba074;--color-concrete:#d9d2c5;--color-offwhite:#f5f2ec;--color-terracotta:#d2551e;--color-ink:#1c1c1a}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.static{position:static}.sticky{position:sticky}.block{display:block}.hidden{display:none}.table{display:table}}html{scroll-behavior:smooth}body{font-family:var(--font-sans);color:var(--color-ink);background:var(--color-offwhite);-webkit-font-smoothing:antialiased;font-size:1rem;line-height:1.65}body.nav-open,body.lb-open{overflow:hidden}.wrap{max-width:76rem;margin-inline:auto;padding-inline:1.25rem}@media (min-width:768px){.wrap{padding-inline:2.5rem}}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.center{text-align:center}.reveal{opacity:0;transition:opacity .6s ease-out,transform .6s ease-out;transform:translateY(20px)}.reveal.is-visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}html{scroll-behavior:auto}}.skip-link{z-index:100;background:var(--color-ink);color:var(--color-offwhite);border-radius:2px;padding:.6rem 1rem;transition:top .2s;position:absolute;top:-4rem;left:1rem}.skip-link:focus{top:1rem}.site-header{z-index:50;background:#f5f2eceb;position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.site-header{background:color-mix(in srgb, var(--color-offwhite) 92%, transparent)}}.site-header{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid #0000;transition:border-color .3s,background .3s}.site-header.is-scrolled{border-bottom-color:#1c1c1a1f}@supports (color:color-mix(in lab, red, red)){.site-header.is-scrolled{border-bottom-color:color-mix(in srgb, var(--color-ink) 12%, transparent)}}.header-inner{justify-content:space-between;align-items:center;gap:1rem;height:4.5rem;display:flex}.brand{color:var(--color-ink);align-items:center;gap:.6rem;text-decoration:none;display:inline-flex}.brand-mark{width:2.1rem;height:2.1rem;color:var(--color-terracotta);flex:none}.brand-word{font-family:var(--font-serif);letter-spacing:.04em;white-space:nowrap;font-size:1.15rem}.brand-word em{color:var(--color-sage-deep);font-style:normal}.main-nav{gap:1.05rem;display:none}@media (min-width:1100px){.main-nav{display:flex}}.nav-link{letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;color:var(--color-ink);border-bottom:1px solid #0000;padding-block:.4rem;font-size:.76rem;text-decoration:none}.nav-link:hover{border-bottom-color:var(--color-terracotta)}.nav-link.is-active{color:var(--color-terracotta);border-bottom-color:var(--color-terracotta)}.header-right{align-items:center;gap:1rem;display:flex}.btn.header-cta{display:none}@media (min-width:768px){.btn.header-cta{display:inline-flex}}.lang-switcher{letter-spacing:.08em;gap:.45rem;font-size:.8rem;display:none}@media (min-width:768px){.lang-switcher{align-items:center;display:flex}}.lang-link{color:#1c1c1a99}@supports (color:color-mix(in lab, red, red)){.lang-link{color:color-mix(in srgb, var(--color-ink) 60%, transparent)}}.lang-link{text-decoration:none}.lang-link:hover{color:var(--color-terracotta)}.lang-current{color:var(--color-ink);font-weight:600}.lang-sep{color:#1c1c1a4d}@supports (color:color-mix(in lab, red, red)){.lang-sep{color:color-mix(in srgb, var(--color-ink) 30%, transparent)}}.nav-toggle{cursor:pointer;background:0 0;border:0;flex-direction:column;gap:6px;padding:.6rem;display:flex}@media (min-width:1100px){.nav-toggle{display:none}}.nav-toggle span{background:var(--color-ink);width:24px;height:1.5px;transition:transform .3s,opacity .3s}body.nav-open .nav-toggle span:first-child{transform:translateY(3.75px)rotate(45deg)}body.nav-open .nav-toggle span:last-child{transform:translateY(-3.75px)rotate(-45deg)}.mobile-nav{z-index:49;background:var(--color-offwhite);flex-direction:column;gap:.25rem;padding:2rem 1.25rem;display:flex;position:fixed;inset:4.5rem 0 0}.mobile-nav-link{font-family:var(--font-serif);color:var(--color-ink);border-bottom:1px solid #1c1c1a1a;padding:.7rem 0;font-size:1.7rem;text-decoration:none}@supports (color:color-mix(in lab, red, red)){.mobile-nav-link{border-bottom:1px solid color-mix(in srgb, var(--color-ink) 10%, transparent)}}.mobile-nav-link.is-active{color:var(--color-terracotta)}.mobile-langs{gap:.6rem;margin-top:1.5rem;font-size:.95rem;display:flex}.btn{cursor:pointer;letter-spacing:.08em;text-transform:uppercase;border:1px solid #0000;border-radius:2px;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.6rem;font-size:.85rem;font-weight:500;text-decoration:none;transition:background .25s,color .25s,border-color .25s;display:inline-flex}.btn-lg{padding:.95rem 2.1rem}.btn-primary{background:var(--color-ink);color:var(--color-offwhite)}.btn-primary:hover{background:var(--color-terracotta)}.btn-outline{border-color:var(--color-ink);color:var(--color-ink);background:0 0}.btn-outline:hover{background:var(--color-ink);color:var(--color-offwhite)}.btn-outline-light{border-color:var(--color-offwhite);color:var(--color-offwhite);background:0 0}.btn-outline-light:hover{background:var(--color-offwhite);color:var(--color-ink)}.btn-ghost{background:0 0;border-color:#1c1c1a59}@supports (color:color-mix(in lab, red, red)){.btn-ghost{border-color:color-mix(in srgb, var(--color-ink) 35%, transparent)}}.btn-ghost{color:var(--color-ink)}.btn-ghost:hover:not(:disabled){border-color:var(--color-ink)}.btn:disabled{opacity:.45;cursor:not-allowed}.text-link{color:var(--color-ink);border-bottom:1px solid var(--color-terracotta);padding-bottom:2px;font-weight:500;text-decoration:none}.text-link:hover{color:var(--color-terracotta)}.kicker{letter-spacing:.22em;text-transform:uppercase;color:var(--color-terracotta);margin-bottom:1rem;font-size:.78rem;font-weight:600}.section-title,.teaser-title,.page-title{font-family:var(--font-serif);letter-spacing:.015em;font-weight:500;line-height:1.12}.section-title{margin-bottom:1.1rem;font-size:clamp(1.9rem,3.4vw,2.8rem)}.section-text{color:#1c1c1ac7;max-width:42rem}@supports (color:color-mix(in lab, red, red)){.section-text{color:color-mix(in srgb, var(--color-ink) 78%, transparent)}}.section-head{margin-bottom:3rem}.section-head-center{text-align:center}.section-head-center .section-text{margin-inline:auto}.hero{min-height:min(88vh,52rem);color:var(--color-offwhite);align-items:flex-end;display:flex;position:relative}.hero-img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero-overlay{background:linear-gradient(100deg,#1c1c1a9e 0%,#1c1c1a40 55%,#1c1c1a0d 100%),linear-gradient(#1c1c1a4d 0%,#1c1c1a40 50%,#1c1c1abf 100%);position:absolute;inset:0}.hero-inner{padding-block:5rem;position:relative}.hero-kicker{letter-spacing:.24em;text-transform:uppercase;color:var(--color-concrete);margin-bottom:1.2rem;font-size:.8rem}.hero-title{font-family:var(--font-serif);max-width:16ch;margin-bottom:1.4rem;font-size:clamp(2.6rem,6vw,4.6rem);font-weight:500;line-height:1.05}.hero-sub{color:#f5f2ece0;max-width:34rem;font-size:1.06rem}@supports (color:color-mix(in lab, red, red)){.hero-sub{color:color-mix(in srgb, var(--color-offwhite) 88%, transparent)}}.hero-sub{margin-bottom:2.2rem}.hero-ctas{flex-wrap:wrap;gap:.9rem;display:flex}.intro{padding-block:5.5rem 4rem}.numbers-strip{border-top:1px solid #1c1c1a26;grid-template-columns:repeat(2,1fr);display:grid}@supports (color:color-mix(in lab, red, red)){.numbers-strip{border-top:1px solid color-mix(in srgb, var(--color-ink) 15%, transparent)}}.numbers-strip{margin-top:3.5rem}@media (min-width:768px){.numbers-strip{grid-template-columns:repeat(3,1fr)}}@media (min-width:1100px){.numbers-strip{grid-template-columns:repeat(6,1fr)}}.num{border-top:0;padding:1.6rem 1rem 0}.num-value{font-family:var(--font-serif);color:var(--color-ink);font-size:clamp(2.2rem,3.6vw,3.1rem);font-weight:400;line-height:1;display:block}.num-label{color:#1c1c1a9e;margin-top:.5rem;font-size:.82rem;display:block}@supports (color:color-mix(in lab, red, red)){.num-label{color:color-mix(in srgb, var(--color-ink) 62%, transparent)}}.teaser{padding-block:4rem}.teaser-grid{align-items:center;gap:0;display:grid}@media (min-width:900px){.teaser-grid{grid-template-columns:7fr 5fr}.teaser-reverse .teaser-media{order:2}.teaser-reverse .teaser-panel{order:1;margin-left:0;margin-right:-4rem}}.teaser-media{margin:0}.teaser-media img{object-fit:cover;width:100%;height:100%;max-height:34rem;display:block}.teaser-panel{z-index:2;background:var(--color-sage);color:var(--color-ink);margin:-3rem 1.25rem 0;padding:2.4rem 2rem;position:relative}@media (min-width:900px){.teaser-panel{margin:3rem 0 3rem -4rem;padding:3rem 2.8rem}.teaser-reverse .teaser-panel{margin:3rem -4rem 3rem 0}}.teaser-panel .kicker{color:#1c1c1ab3}@supports (color:color-mix(in lab, red, red)){.teaser-panel .kicker{color:color-mix(in srgb, var(--color-ink) 70%, transparent)}}.teaser-title{margin-bottom:1rem;font-size:clamp(1.7rem,2.8vw,2.4rem)}.teaser-text{color:#1c1c1ad9;margin-bottom:1.6rem}@supports (color:color-mix(in lab, red, red)){.teaser-text{color:color-mix(in srgb, var(--color-ink) 85%, transparent)}}.gallery-teaser{padding-block:4rem 5rem}.gal-grid{grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:2rem;display:grid}@media (min-width:900px){.gal-grid{grid-template-columns:repeat(4,1fr)}}.gal-thumb{margin:0;display:block;overflow:hidden}.gal-thumb img{aspect-ratio:4/3;object-fit:cover;width:100%;transition:transform .6s ease-out;display:block}.gal-thumb:hover img{transform:scale(1.04)}.team-teaser{background:var(--color-concrete);padding-block:4rem 5.5rem}.team-grid{gap:1.25rem;margin-bottom:2.2rem;display:grid}@media (min-width:900px){.team-grid{grid-template-columns:repeat(3,1fr)}}.team-card{background:var(--color-offwhite);border:1px solid #1c1c1a1a;padding:1.8rem}@supports (color:color-mix(in lab, red, red)){.team-card{border:1px solid color-mix(in srgb, var(--color-ink) 10%, transparent)}}.team-logo-slot{border:1px dashed #1c1c1a4d;height:4.5rem}@supports (color:color-mix(in lab, red, red)){.team-logo-slot{border:1px dashed color-mix(in srgb, var(--color-ink) 30%, transparent)}}.team-logo-slot{letter-spacing:.1em;text-transform:uppercase;color:#1c1c1a73;justify-content:center;align-items:center;font-size:.72rem;display:flex}@supports (color:color-mix(in lab, red, red)){.team-logo-slot{color:color-mix(in srgb, var(--color-ink) 45%, transparent)}}.team-logo-slot{margin-bottom:1.2rem}.team-role{letter-spacing:.18em;text-transform:uppercase;color:var(--color-terracotta);margin-bottom:.4rem;font-size:.75rem}.team-name{font-family:var(--font-serif);font-size:1.45rem;font-weight:600}.team-place{color:#1c1c1a99;font-size:.85rem}@supports (color:color-mix(in lab, red, red)){.team-place{color:color-mix(in srgb, var(--color-ink) 60%, transparent)}}.lead-section{background:var(--color-sage);padding-block:5rem}.lead-grid{gap:2.5rem;display:grid}@media (min-width:1000px){.lead-grid{grid-template-columns:5fr 7fr;gap:4rem}}.lead-copy .section-text{color:#1c1c1ad1}@supports (color:color-mix(in lab, red, red)){.lead-copy .section-text{color:color-mix(in srgb, var(--color-ink) 82%, transparent)}}.brochure-box{border-top:1px solid #1c1c1a40;margin-top:2.2rem;padding-top:1.8rem}@supports (color:color-mix(in lab, red, red)){.brochure-box{border-top:1px solid color-mix(in srgb, var(--color-ink) 25%, transparent)}}.lead-form-wrap{background:var(--color-offwhite);padding:2rem}@media (min-width:768px){.lead-form-wrap{padding:2.6rem}}.form-grid{gap:1.1rem;display:grid}@media (min-width:640px){.form-grid{grid-template-columns:1fr 1fr}.field-full{grid-column:1/-1}}.field label{letter-spacing:.04em;margin-bottom:.35rem;font-size:.8rem;font-weight:500;display:block}.field input,.field select,.field textarea{width:100%;font:inherit;color:var(--color-ink);background:#fff;border:1px solid #1c1c1a38;padding:.7rem .8rem}@supports (color:color-mix(in lab, red, red)){.field input,.field select,.field textarea{border:1px solid color-mix(in srgb, var(--color-ink) 22%, transparent)}}.field input,.field select,.field textarea{border-radius:2px}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--color-sage-deep);outline-offset:1px;border-color:var(--color-sage-deep)}.field input[aria-invalid=true],.field select[aria-invalid=true]{border-color:#b3261e}.field-error{color:#b3261e;min-height:1.1rem;margin-top:.25rem;font-size:.76rem}.phone-row{gap:.5rem;display:flex}.phone-row select{flex:none;width:6.2rem}.hp-field{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.checkbox-label{cursor:pointer;gap:.6rem;font-size:.85rem;line-height:1.5;display:flex}.checkbox-label input{flex:none;width:auto;margin-top:.2rem}.checkbox-label a{color:inherit;text-decoration:underline}.lead-form .btn{width:100%;margin-top:1.3rem}@media (min-width:640px){.lead-form .btn{width:auto}}.form-status{min-height:1.2rem;margin-top:.9rem;font-size:.9rem}.form-status.is-ok{color:#2e6b34}.form-status.is-error{color:#b3261e}.brochure-note{margin-bottom:1rem;font-size:.92rem}.brochure-row{align-items:end;gap:1rem;display:grid}@media (min-width:640px){.brochure-row{grid-template-columns:1fr 1fr auto}}.brochure-download{margin-top:1.1rem}.page-hero{padding-block:5rem 3.5rem}.page-title{max-width:20ch;margin-bottom:1.4rem;font-size:clamp(2.4rem,5vw,3.8rem)}.page-intro{color:#1c1c1ac7;max-width:44rem;font-size:1.08rem}@supports (color:color-mix(in lab, red, red)){.page-intro{color:color-mix(in srgb, var(--color-ink) 78%, transparent)}}.full-bleed{margin:0 0 2rem}.full-bleed img{object-fit:cover;width:100%;max-height:38rem;display:block}.spec-section{background:var(--color-concrete);padding-block:4rem 5rem}.spec-grid{align-items:start;gap:3rem;display:grid}@media (min-width:900px){.spec-grid{grid-template-columns:1fr 1fr}}.spec-grid figure{margin:2rem 0 0}.spec-grid figure img{width:100%;display:block}.spec-table{border-collapse:collapse;background:var(--color-offwhite);width:100%}.spec-table th,.spec-table td{text-align:left;border-bottom:1px solid #1c1c1a1f;padding:1.05rem 1.3rem}@supports (color:color-mix(in lab, red, red)){.spec-table th,.spec-table td{border-bottom:1px solid color-mix(in srgb, var(--color-ink) 12%, transparent)}}.spec-table th{color:#1c1c1ab3;font-size:.9rem;font-weight:500}@supports (color:color-mix(in lab, red, red)){.spec-table th{color:color-mix(in srgb, var(--color-ink) 70%, transparent)}}.spec-table td{font-family:var(--font-serif);text-align:right;font-size:1.35rem}.cta-band{background:var(--color-ink);color:var(--color-offwhite)}.cta-band-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;padding-block:3.2rem;display:flex}.cta-band-title{font-family:var(--font-serif);max-width:26ch;font-size:clamp(1.6rem,3vw,2.3rem);font-weight:500}.cta-band .btn-primary{background:var(--color-terracotta)}.cta-band .btn-primary:hover{background:var(--color-offwhite);color:var(--color-ink)}.status-legend{gap:1.6rem;margin:2rem 0 0;padding:0;font-size:.85rem;list-style:none;display:flex}.status-legend li{align-items:center;gap:.5rem;display:flex}.dot{border-radius:50%;width:.7rem;height:.7rem;display:inline-block}.status-available{color:#fff;background:#5f7f4f}.dot.status-available{background:#5f7f4f}.dot.status-reserved{background:#c79a3a}.dot.status-sold{background:#9c9c97}.units-section{padding-block:1rem 4rem}.units-grid{gap:1.25rem;display:grid}@media (min-width:640px){.units-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1100px){.units-grid{grid-template-columns:repeat(3,1fr)}}.unit-card{border:1px solid #1c1c1a24}@supports (color:color-mix(in lab, red, red)){.unit-card{border:1px solid color-mix(in srgb, var(--color-ink) 14%, transparent)}}.unit-card{background:#fff;flex-direction:column;padding:1.6rem;display:flex}.unit-top{justify-content:space-between;align-items:baseline;margin-bottom:1.1rem;display:flex}.unit-nr{font-family:var(--font-serif);font-size:2.4rem;font-weight:500}.unit-status{letter-spacing:.12em;text-transform:uppercase;border-radius:999px;padding:.3rem .7rem;font-size:.72rem;font-weight:600}.unit-status.status-available{background:#5f7f4f}.unit-status.status-reserved{background:#c79a3a}.unit-status.status-sold{background:#9c9c97}.unit-facts{gap:.45rem;margin:0 0 1.4rem;display:grid}.unit-facts div{border-bottom:1px solid #1c1c1a14;justify-content:space-between;display:flex}@supports (color:color-mix(in lab, red, red)){.unit-facts div{border-bottom:1px solid color-mix(in srgb, var(--color-ink) 8%, transparent)}}.unit-facts div{padding-bottom:.4rem}.unit-facts dt{color:#1c1c1a99;font-size:.82rem}@supports (color:color-mix(in lab, red, red)){.unit-facts dt{color:color-mix(in srgb, var(--color-ink) 60%, transparent)}}.unit-facts dd{margin:0;font-size:.9rem;font-weight:500}.unit-cta{margin-top:auto}.plans-section{background:var(--color-concrete);padding-block:4rem 5rem}.plans-grid{gap:1.5rem;display:grid}@media (min-width:900px){.plans-grid{grid-template-columns:repeat(3,1fr)}}.plan-figure{background:#fff;border:1px solid #1c1c1a1a;margin:0;padding:1rem}@supports (color:color-mix(in lab, red, red)){.plan-figure{border:1px solid color-mix(in srgb, var(--color-ink) 10%, transparent)}}.plan-figure img{width:100%;display:block}.plan-figure figcaption{letter-spacing:.1em;text-transform:uppercase;color:#1c1c1a99;padding-top:.8rem;font-size:.82rem}@supports (color:color-mix(in lab, red, red)){.plan-figure figcaption{color:color-mix(in srgb, var(--color-ink) 60%, transparent)}}.legend-box{background:var(--color-offwhite);margin-top:2rem;padding:2rem}.legend-title{font-family:var(--font-serif);margin-bottom:1rem;font-size:1.4rem}.legend-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}@media (min-width:768px){.legend-list{grid-template-columns:repeat(2,1fr)}}.legend-nr{background:var(--color-sage);border-radius:50%;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;margin-right:.4rem;font-size:.75rem;font-weight:600;display:inline-flex}.plans-note{color:#1c1c1a99;margin-top:1.6rem;font-size:.85rem}@supports (color:color-mix(in lab, red, red)){.plans-note{color:color-mix(in srgb, var(--color-ink) 60%, transparent)}}.map-section{padding-block:1rem 4rem}.map-grid{gap:2.5rem;display:grid}@media (min-width:900px){.map-grid{grid-template-columns:7fr 5fr}}.map{background:var(--color-concrete);z-index:1;height:26rem}.map-small{height:16rem}.ptv-marker-dot{background:var(--color-terracotta);border:3px solid var(--color-offwhite);border-radius:50%;width:22px;height:22px;display:block;box-shadow:0 1px 6px #1c1c1a66}.leaflet-container{font:inherit}.distances-title{font-family:var(--font-serif);margin-bottom:1.4rem;font-size:1.7rem;font-weight:500}.distance-row{border-bottom:1px solid #1c1c1a1f;justify-content:space-between;align-items:baseline;gap:1rem;padding-block:.85rem;display:flex}@supports (color:color-mix(in lab, red, red)){.distance-row{border-bottom:1px solid color-mix(in srgb, var(--color-ink) 12%, transparent)}}.distance-label{font-size:.95rem}.distance-value{font-family:var(--font-serif);white-space:nowrap;font-size:1.3rem}.distances-note{color:#1c1c1a99;margin-top:1.2rem;font-size:.82rem}@supports (color:color-mix(in lab, red, red)){.distances-note{color:color-mix(in srgb, var(--color-ink) 60%, transparent)}}.services-section{padding-block:4rem 5rem}.services-grid{border-top:1px solid #1c1c1a1f;gap:0;margin:0;padding:0;list-style:none;display:grid}@supports (color:color-mix(in lab, red, red)){.services-grid{border-top:1px solid color-mix(in srgb, var(--color-ink) 12%, transparent)}}@media (min-width:768px){.services-grid{grid-template-columns:repeat(2,1fr);column-gap:3rem}}@media (min-width:1100px){.services-grid{grid-template-columns:repeat(3,1fr)}}.services-grid li{border-bottom:1px solid #1c1c1a1f;padding:.9rem 0}@supports (color:color-mix(in lab, red, red)){.services-grid li{border-bottom:1px solid color-mix(in srgb, var(--color-ink) 12%, transparent)}}.services-grid li{font-size:.95rem}.data-section{padding-block:2rem 4rem}.data-grid{gap:1.25rem;display:grid}@media (min-width:768px){.data-grid{grid-template-columns:repeat(2,1fr)}}.data-point{border-top:2px solid var(--color-terracotta);background:#fff;padding:1.8rem}.data-value{font-family:var(--font-serif);margin-bottom:.8rem;font-size:clamp(2.2rem,4vw,3.2rem);font-weight:400;line-height:1.05;display:block}.data-title{margin-bottom:.5rem;font-size:1.02rem;font-weight:600}.data-text{color:#1c1c1abf;font-size:.92rem}@supports (color:color-mix(in lab, red, red)){.data-text{color:color-mix(in srgb, var(--color-ink) 75%, transparent)}}.data-source{color:#1c1c1a8c;margin-top:1.8rem;font-size:.8rem}@supports (color:color-mix(in lab, red, red)){.data-source{color:color-mix(in srgb, var(--color-ink) 55%, transparent)}}.pricing-section{padding-block:2rem 4rem}.pricing-placeholder{border:1px dashed #1c1c1a59}@supports (color:color-mix(in lab, red, red)){.pricing-placeholder{border:1px dashed color-mix(in srgb, var(--color-ink) 35%, transparent)}}.pricing-placeholder{background:var(--color-concrete);text-align:center;padding:3rem 2rem}.pricing-placeholder .section-text{margin:0 auto 1.8rem}.disclaimer-section{padding-bottom:4rem}.disclaimer{color:#1c1c1a99;font-size:.82rem}@supports (color:color-mix(in lab, red, red)){.disclaimer{color:color-mix(in srgb, var(--color-ink) 60%, transparent)}}.disclaimer{border-top:1px solid #1c1c1a26}@supports (color:color-mix(in lab, red, red)){.disclaimer{border-top:1px solid color-mix(in srgb, var(--color-ink) 15%, transparent)}}.disclaimer{max-width:52rem;padding-top:1.4rem}.filter-bar{flex-wrap:wrap;gap:.6rem;margin-bottom:2rem;display:flex}.filter-btn{font:inherit;letter-spacing:.06em;text-transform:uppercase;background:0 0;border:1px solid #1c1c1a40;padding:.5rem 1.1rem;font-size:.82rem}@supports (color:color-mix(in lab, red, red)){.filter-btn{border:1px solid color-mix(in srgb, var(--color-ink) 25%, transparent)}}.filter-btn{cursor:pointer;color:var(--color-ink);border-radius:999px}.filter-btn:hover{border-color:var(--color-ink)}.filter-btn.is-active{background:var(--color-ink);color:var(--color-offwhite);border-color:var(--color-ink)}.gallery-section{padding-bottom:5rem}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}@media (min-width:768px){.gallery-grid{grid-template-columns:repeat(3,1fr)}}.gal-item{margin:0}.gal-open{cursor:zoom-in;background:0 0;border:0;width:100%;padding:0;display:block;overflow:hidden}.gal-open img{aspect-ratio:4/3;object-fit:cover;width:100%;transition:transform .6s ease-out;display:block}.gal-open:hover img{transform:scale(1.04)}.lightbox{z-index:90;background:#1c1c1af0;justify-content:center;align-items:center;padding:3.5rem 1rem 4.5rem;display:flex;position:fixed;inset:0}.lb-img{object-fit:contain;max-width:100%;max-height:100%}.lb-close,.lb-prev,.lb-next{color:var(--color-offwhite);cursor:pointer;background:0 0;border:0;padding:.6rem 1rem;font-size:2.4rem;line-height:1;position:absolute}.lb-close{top:.6rem;right:.8rem}.lb-prev{top:50%;left:.4rem;transform:translateY(-50%)}.lb-next{top:50%;right:.4rem;transform:translateY(-50%)}.lb-caption{color:var(--color-concrete);text-align:center;max-width:90%;font-size:.9rem;position:absolute;bottom:1.2rem;left:50%;transform:translate(-50%)}.companies-section{padding-block:1rem 4rem}.companies-list{gap:1.5rem;display:grid}.company-block{background:#fff;border:1px solid #1c1c1a1a;gap:1.5rem;padding:2rem;display:grid}@supports (color:color-mix(in lab, red, red)){.company-block{border:1px solid color-mix(in srgb, var(--color-ink) 10%, transparent)}}@media (min-width:768px){.company-block{grid-template-columns:14rem 1fr;gap:2.5rem}}.company-logo-slot{border:1px dashed #1c1c1a4d;height:8rem}@supports (color:color-mix(in lab, red, red)){.company-logo-slot{border:1px dashed color-mix(in srgb, var(--color-ink) 30%, transparent)}}.company-logo-slot{text-align:center;letter-spacing:.1em;text-transform:uppercase;color:#1c1c1a73;justify-content:center;align-items:center;font-size:.72rem;display:flex}@supports (color:color-mix(in lab, red, red)){.company-logo-slot{color:color-mix(in srgb, var(--color-ink) 45%, transparent)}}.company-logo-slot{padding:1rem}.company-name{font-family:var(--font-serif);margin-bottom:.2rem;font-size:1.8rem;font-weight:600}.company-place{color:#1c1c1a99;font-size:.85rem}@supports (color:color-mix(in lab, red, red)){.company-place{color:color-mix(in srgb, var(--color-ink) 60%, transparent)}}.company-place{margin-bottom:1rem}.company-text{max-width:46rem}.trust-section{padding-block:2rem 5rem}.trust-grid{align-items:center;gap:0;display:grid}@media (min-width:900px){.trust-grid{grid-template-columns:7fr 5fr}}.trust-grid figure{margin:0}.trust-grid img{object-fit:cover;width:100%;max-height:30rem;display:block}.trust-grid .teaser-panel{margin:-3rem 1.25rem 0}@media (min-width:900px){.trust-grid .teaser-panel{margin:3rem 0 3rem -4rem}}.contact-section{padding-block:1rem 5rem}.contact-grid{gap:2.5rem;display:grid}@media (min-width:1000px){.contact-grid{grid-template-columns:7fr 5fr;gap:4rem}}.contact-form-wrap{background:#fff;border:1px solid #1c1c1a1a}@supports (color:color-mix(in lab, red, red)){.contact-form-wrap{border:1px solid color-mix(in srgb, var(--color-ink) 10%, transparent)}}.contact-form-wrap{padding:2rem}@media (min-width:768px){.contact-form-wrap{padding:2.6rem}}.contact-form-title{font-family:var(--font-serif);margin-bottom:1.6rem;font-size:1.8rem}.contact-aside{align-content:start;gap:1.25rem;display:grid}.contact-card{background:var(--color-concrete);padding:1.8rem}.contact-card-title{letter-spacing:.16em;text-transform:uppercase;color:var(--color-terracotta);margin-bottom:1rem;font-size:.8rem}.contact-line{font-family:var(--font-serif);color:var(--color-ink);font-size:1.35rem;text-decoration:none}.contact-line:hover{color:var(--color-terracotta)}.contact-card .btn{margin-top:.8rem}.office{margin-bottom:1.2rem;font-style:normal}.office-name{margin-bottom:.3rem;font-size:1rem;font-weight:600}.office p{color:#1c1c1abf;font-size:.9rem}@supports (color:color-mix(in lab, red, red)){.office p{color:color-mix(in srgb, var(--color-ink) 75%, transparent)}}.map-card{padding:0;overflow:hidden}.legal-updated{color:#1c1c1a99;font-size:.85rem}@supports (color:color-mix(in lab, red, red)){.legal-updated{color:color-mix(in srgb, var(--color-ink) 60%, transparent)}}.legal-body{max-width:46rem;padding-bottom:5rem}.legal-block{margin-bottom:2.2rem}.legal-block h2{font-family:var(--font-serif);margin-bottom:.7rem;font-size:1.5rem;font-weight:600}.legal-block p{margin-bottom:.7rem}.legal-block ul{gap:.4rem;padding-left:1.2rem;display:grid}.thankyou .center-block{text-align:center}.thankyou .page-intro{margin-inline:auto}.thankyou .hero-ctas{justify-content:center}.site-footer{background:var(--color-ink);color:var(--color-concrete);margin-top:0}.footer-grid{gap:2.2rem;padding-block:4rem 2.5rem;display:grid}@media (min-width:900px){.footer-grid{grid-template-columns:2fr 1fr 1fr 1fr}}.brand-footer{color:var(--color-offwhite)}.brand-mark-footer{color:var(--color-terracotta)}.footer-tagline{color:#d9d2c5cc;max-width:22rem;margin-top:1rem;font-size:.9rem}@supports (color:color-mix(in lab, red, red)){.footer-tagline{color:color-mix(in srgb, var(--color-concrete) 80%, transparent)}}.footer-addr{color:#d9d2c599;margin-top:.6rem;font-size:.85rem}@supports (color:color-mix(in lab, red, red)){.footer-addr{color:color-mix(in srgb, var(--color-concrete) 60%, transparent)}}.footer-h{letter-spacing:.18em;text-transform:uppercase;color:var(--color-sage);margin-bottom:1rem;font-size:.75rem}.footer-col a{color:var(--color-concrete);padding-block:.3rem;font-size:.92rem;text-decoration:none;display:block}.footer-col a:hover{color:var(--color-terracotta)}.footer-base{color:#d9d2c599;border-top:1px solid #f5f2ec26;flex-wrap:wrap;justify-content:space-between;gap:.6rem;padding-block:1.4rem;font-size:.8rem;display:flex}@supports (color:color-mix(in lab, red, red)){.footer-base{color:color-mix(in srgb, var(--color-concrete) 60%, transparent)}}.whatsapp-float{z-index:60;color:#fff;background:#25d366;border-radius:50%;justify-content:center;align-items:center;width:3.3rem;height:3.3rem;transition:transform .25s;display:flex;position:fixed;bottom:1.1rem;right:1.1rem;box-shadow:0 4px 14px #1c1c1a4d}.whatsapp-float:hover{transform:scale(1.07)}.whatsapp-float svg{width:1.7rem;height:1.7rem}@media (min-width:768px){.whatsapp-float{bottom:1.6rem;right:1.6rem}}.sticky-cta{z-index:55;padding:.7rem 1.25rem calc(.7rem + env(safe-area-inset-bottom));background:#f5f2ecf2;position:fixed;bottom:0;left:0;right:0}@supports (color:color-mix(in lab, red, red)){.sticky-cta{background:color-mix(in srgb, var(--color-offwhite) 95%, transparent)}}.sticky-cta{border-top:1px solid #1c1c1a1f}@supports (color:color-mix(in lab, red, red)){.sticky-cta{border-top:1px solid color-mix(in srgb, var(--color-ink) 12%, transparent)}}.sticky-cta{transition:transform .35s ease-out;transform:translateY(110%)}@media (min-width:768px){.sticky-cta{display:none}}.sticky-cta.is-visible{transform:none}.sticky-cta-btn{width:100%}.cookie-banner{z-index:70;background:var(--color-ink);color:var(--color-offwhite);gap:1rem;padding:1.2rem 1.3rem;display:grid;position:fixed;bottom:1rem;left:1rem;right:1rem;box-shadow:0 8px 30px #1c1c1a59}@media (min-width:768px){.cookie-banner{max-width:26rem;bottom:1.6rem;left:auto;right:1.6rem}}.cookie-text{margin:0;font-size:.85rem}.cookie-text a{color:var(--color-sage)}.cookie-actions{gap:.7rem;display:flex}.cookie-banner .btn-ghost{color:var(--color-offwhite);border-color:#f5f2ec66}.cookie-banner .btn-primary{background:var(--color-terracotta)}
/* ---- 2026-08-20 corrections ------------------------------------------- */
/* Team grid holds two cards now (owner + Rhine Projects), not three. */
@media (min-width:900px){.team-grid{grid-template-columns:repeat(2,1fr)}}
/* Cards without an available logo lose the empty slot and go full width. */
.company-block-nologo{grid-template-columns:1fr}
/* Real logo instead of the dashed placeholder box. */
.company-logo-slot.has-logo,.team-logo-slot.has-logo{border:0;padding:0;height:auto;justify-content:flex-start}
.company-logo-slot.has-logo img{width:100%;max-width:14rem;height:auto;display:block}
.team-logo-slot.has-logo img{width:100%;max-width:10.5rem;height:auto;display:block}
/* Scroll reveals must never hide content when JS is unavailable. */
.no-js .reveal{opacity:1;transform:none}
/* Send-via choice shown after a lead form validates. */
.form-send{display:grid;gap:.6rem;margin-top:1rem}
@media (min-width:560px){.form-send{grid-template-columns:1fr 1fr}}
.form-send[hidden]{display:none}
.form-send-note{font-size:.85rem;line-height:1.5;margin-bottom:.2rem;grid-column:1/-1;color:color-mix(in srgb,var(--color-ink) 65%,transparent)}
