@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url('../fonts/manrope-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url('../fonts/manrope-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Design system — no build step or external dependency. */
:root{--paper:#f5f4f0;--white:#fff;--ink:#20211f;--muted:#64695f;--green:#33453a;--sage:#d9ddd5;--sand:#e7e2d8;--line:#d9dad2;--radius:32px;--page:1760px;--gutter:24px;--header:88px;font-family:Manrope,Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}body.locked{overflow:hidden}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}svg{display:block}button{background:none;border:0}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3,h4{font-weight:400;line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(44px,5.3vw,82px)}h2{font-size:clamp(34px,4.2vw,64px)}h3{font-size:28px}p+p{margin-top:18px}ul{padding-left:22px}::selection{background:var(--sage);color:var(--ink)}:focus-visible{outline:3px solid #6b8157;outline-offset:5px}a:hover{color:var(--green)}[hidden]{display:none!important}.container{width:calc(100% - var(--gutter)*2);max-width:var(--page);margin-inline:auto}.section{padding-block:88px}.section-sm{padding-block:48px}.eyebrow{display:block;font-size:11px;letter-spacing:.2em;line-height:1.5;font-weight:600;text-transform:uppercase;margin-bottom:24px}.muted{color:var(--muted)}.small{font-size:13px;line-height:1.6}.lead{font-size:18px;line-height:1.75;color:var(--muted);max-width:650px}.lead strong{color:var(--ink);font-weight:400}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:38px}.section-heading .lead{max-width:400px}.section-heading h2{max-width:820px}.section-heading .eyebrow{margin-bottom:22px}.icon{width:21px;height:21px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;padding:16px 25px;min-height:54px;border:1px solid transparent;border-radius:999px;background:var(--green);color:white;line-height:1.3;font-size:14px;transition:background .2s,transform .2s}.button:hover{background:#24362c;color:white;transform:translateY(-2px)}.button .icon{width:18px;height:18px}.button-light{background:var(--paper);color:var(--ink)}.button-light:hover{background:white;color:var(--green)}.button-outline{background:transparent;border-color:#b4b9ae;color:var(--ink)}.button-outline:hover{background:var(--sage);color:var(--green)}.button-ghost{color:inherit;background:transparent;border-color:#ffffff70}.button-ghost:hover{background:#ffffff20;color:inherit}.button:disabled{opacity:.5;cursor:wait;transform:none}.button-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:30px}.text-link{display:inline-flex;align-items:center;gap:20px;font-size:14px;padding-block:12px;border-bottom:1px solid currentColor;white-space:normal}.text-link .icon{transition:transform .25s}.text-link:hover .icon{transform:translateX(4px)}.skip-link{position:fixed;top:-100px;left:20px;z-index:200;background:var(--green);color:white;padding:16px;border-radius:10px}.skip-link:focus{top:10px}.sr-only{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
/* Header, desktop megamenu and mobile drawer */
.header{position:sticky;top:0;z-index:80;background:#f5f4f0ed;backdrop-filter:blur(16px);border-bottom:1px solid transparent;transition:border-color .2s}.header.scrolled{border-color:var(--line)}.header-inner{height:var(--header);display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:10px;max-width:245px}.brand-icon{width:38px;height:38px;fill:none;stroke:var(--green);stroke-width:1.3}.brand-name{font-size:13px;line-height:1.2;font-weight:600;letter-spacing:.035em}.brand-sub{display:block;font-size:9px;font-weight:400;letter-spacing:.18em;margin-top:5px}.desktop-nav{display:none;align-items:center;gap:28px}.nav-trigger,.nav-link{padding:20px 0;font-size:13px;display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.nav-trigger .icon{width:12px;height:12px}.nav-trigger[aria-expanded=true] .icon{transform:rotate(180deg)}.header-actions{display:flex;align-items:center;gap:28px}.header-contact{font-size:13px;display:none}.header-cta{display:none}.menu-toggle{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:50%}.mega{position:absolute;top:calc(100% - 2px);left:var(--gutter);right:var(--gutter);max-width:var(--page);margin:auto;padding:32px;background:var(--white);border:1px solid var(--line);border-radius:0 0 32px 32px;box-shadow:0 30px 50px #20211f12;animation:menu-in .2s ease}.mega-grid{display:grid;grid-template-columns:1.1fr 1.25fr 1.1fr 1.25fr;gap:30px}.mega h3{font-size:10px;font-weight:600;letter-spacing:.14em;margin-bottom:18px}.mega ul{list-style:none;padding:0;margin:0}.mega li a{display:block;padding:6px 0;font-size:13px;line-height:1.5}.mega li a:hover{text-decoration:underline;text-underline-offset:5px}.mega-feature{padding:14px;background:var(--paper);border-radius:22px}.mega-feature img{width:100%;height:135px;object-fit:cover;border-radius:15px;margin-bottom:16px}.mega-feature strong{display:block;font-size:23px;font-weight:400;letter-spacing:-.03em}.mega-feature p{font-size:12px;color:var(--muted);margin:7px 0}.mega-feature .text-link{font-size:12px}.nav-shade{position:fixed;inset:88px 0 0;background:#20211f30;backdrop-filter:blur(2px);z-index:70}.mobile-nav{position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:24px;background:var(--paper);border:0;color:var(--ink);z-index:100}.drawer-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.icon-button{width:48px;height:48px;border:1px solid var(--line);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.drawer-links>a,.drawer-links>details{display:block;border-bottom:1px solid var(--line);padding:15px 0;font-size:24px}.drawer-links summary{list-style:none;display:flex;justify-content:space-between;cursor:pointer}.drawer-links summary::-webkit-details-marker{display:none}.drawer-sub a{display:block;font-size:15px;padding:8px 14px}.drawer-sub h3{font-size:11px;letter-spacing:.12em;margin:18px 14px 6px}.mobile-nav .button{width:100%;margin-top:26px}
/* Opening photograph */
.hero{position:relative;isolation:isolate;overflow:hidden;border-radius:32px;min-height:630px;height:min(790px,80vh);color:white;background:#485043;display:flex;align-items:center}.hero>img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center 60%}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#122119a6 0%,#14201766 40%,#1221190a 75%),linear-gradient(0deg,#17241955,transparent 40%);z-index:-1}.hero-content{padding:56px;width:100%}.hero .eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:26px;letter-spacing:.21em}.hero .eyebrow:before{content:'';width:6px;height:6px;border-radius:50%;background:#dddaca}.hero h1{max-width:780px;line-height:1.025;font-size:clamp(44px,5.2vw,80px)}.hero h1 em{font-style:normal;color:#e3e6db}.hero-description{max-width:440px;font-size:15px;line-height:1.75;margin-top:26px;color:#f7f7f0}.hero .button-row{margin-top:31px}.hero-bottom{position:absolute;bottom:31px;left:56px;right:40px;display:flex;justify-content:space-between;align-items:center;gap:20px}.hero-bottom a{display:flex;align-items:center;gap:12px;font-size:11px;color:white}.hero-bottom a .icon{width:16px}.hero-bottom .image-note{font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:#fff}.hero-annotation{position:absolute;bottom:117px;right:38px;font-size:11px;display:flex;gap:12px;align-items:center;padding:14px 20px;border-radius:16px;background:#f5f4f026;backdrop-filter:blur(14px);border:1px solid #ffffff40}.hero-annotation strong{font-size:16px;font-weight:400}.hero-annotation small{display:block;font-size:10px}.benefits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:34px 0;border-bottom:1px solid var(--line)}.benefit{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:6px 20px;text-align:center;border-right:1px solid var(--line)}.benefit:last-child{border-right:0}.benefit-number{font-size:11px;font-weight:600;letter-spacing:.16em;color:var(--green)}.benefit-number:after{content:'';display:block;width:22px;height:1px;margin:10px auto 0;background:currentColor;opacity:.4}.benefit h2{font-size:clamp(16px,1.3vw,19px);letter-spacing:-.02em;line-height:1.4;max-width:230px}
/* Projects and filters */
.filters{display:flex;flex-wrap:wrap;gap:8px;margin:30px 0}.filter-chip{padding:10px 18px;min-height:44px;border:1px solid var(--line);border-radius:999px;font-size:12px;transition:background .2s,color .2s}.filter-chip[aria-pressed=true]{background:var(--green);border-color:var(--green);color:white}.filter-chip:hover{border-color:var(--green)}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 24px}.project-card{min-width:0}.project-image{position:relative;overflow:hidden;border-radius:26px;aspect-ratio:1.38;background:var(--sand)}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.project-card:hover .project-image img{transform:scale(1.035)}.project-badge{position:absolute;top:18px;left:18px;border:1px solid #ffffff60;border-radius:999px;background:#f5f4f0e0;padding:5px 11px;font-size:9px;letter-spacing:.06em}.project-details{padding:19px 3px 0}.project-title-row{display:flex;align-items:center;justify-content:space-between}.project-title-row h3{font-size:28px}.round-arrow{display:flex;align-items:center;justify-content:center;width:39px;height:39px;border:1px solid var(--line);border-radius:50%;transition:transform .2s,background .2s}.project-card:hover .round-arrow{transform:rotate(-35deg);background:var(--sage)}.project-meta{display:flex;flex-wrap:wrap;gap:8px 14px;font-size:12px;color:var(--muted);margin:6px 0 15px}.project-meta span+span:before{content:'·';margin-right:14px}.project-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:14px;border-top:1px solid var(--line);font-size:11px}.project-bottom a{text-decoration:underline;text-underline-offset:4px}.section-foot{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:34px}.catalog-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:28px;background:var(--sage);border-radius:26px;margin:24px 0}.catalog-summary{display:flex;align-items:center;justify-content:space-between;margin:24px 0;font-size:14px}.empty-state{padding:70px 24px;text-align:center;border:1px solid var(--line);border-radius:24px;grid-column:1/-1}.empty-state h3{margin-bottom:15px}
/* Editorial modules */
.split{display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border-radius:40px;background:var(--sand)}.split-copy{padding:64px 56px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.split-copy h2{font-size:clamp(34px,3.55vw,55px);margin-bottom:25px}.split-copy p{font-size:15px;color:#545a50;max-width:520px}.split-copy .button{margin-top:30px}.split-image{min-height:540px}.split-image img{height:100%;width:100%;object-fit:cover}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 36px;margin-top:44px}.process-card{position:relative;border-top:1px solid var(--line);padding:27px 0 40px}.process-number{display:inline-block;color:var(--muted);font-size:12px;margin-bottom:38px}.process-card .icon{position:absolute;right:0;top:27px;color:var(--muted)}.process-card h3{font-size:25px;margin-bottom:15px}.process-card p{font-size:14px;color:var(--muted);max-width:320px}.architecture{position:relative;min-height:700px;border-radius:40px;overflow:hidden;background:var(--sage);display:flex;align-items:flex-end;padding:32px}.architecture>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.architecture-card{position:relative;background:var(--paper);padding:35px;border-radius:26px;max-width:490px}.architecture-card h2{font-size:36px}.architecture-card p{font-size:14px;color:var(--muted);margin-top:18px}.tech-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.tech-card{border:1px solid #c9cfc3;border-radius:30px;padding:36px;background:#eeefe9}.tech-icon{width:70px;height:70px;margin-bottom:35px;color:var(--green)}.tech-card .eyebrow{font-size:10px;margin-bottom:17px}.tech-card h3{font-size:32px}.tech-card ul{list-style:none;padding:0;margin:25px 0 0}.tech-card li{padding:12px 0;border-top:1px solid #d3d7ce;font-size:14px;display:flex;align-items:center;gap:13px}.tech-card li:before{content:'';flex:0 0 12px;width:12px;height:12px;background:var(--green);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17 17 7M8 7h9v9'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17 17 7M8 7h9v9'/%3E%3C/svg%3E") center/contain no-repeat}.technology-note{text-align:center;margin-top:34px;font-size:14px}.technology-note .button{margin-top:17px}.gallery-grid{display:grid;gap:24px}.gallery-item{position:relative;border-radius:26px;overflow:hidden;padding:0;display:block;isolation:isolate;color:white}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.gallery-item:hover img{transform:scale(1.04)}.gallery-caption{position:absolute;bottom:0;left:0;right:0;text-align:left;padding:36px 24px 22px;background:linear-gradient(transparent,#172019a8);font-size:16px;display:flex;justify-content:space-between;gap:14px}.gallery-caption small{font-size:10px;display:block;letter-spacing:.08em;margin-top:4px}.lightbox{border:0;background:transparent;color:white;width:min(1200px,96vw);max-width:96vw;overflow:visible;padding:0}.lightbox::backdrop{background:#111910ed;backdrop-filter:blur(12px)}.lightbox-image{max-height:78vh;width:auto;max-width:100%;margin:auto;border-radius:18px;object-fit:contain}.lightbox-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:12px}.lightbox .icon-button{border-color:#ffffff70}.lightbox-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:16px;font-size:13px}
/* Forms */
.configurator{display:grid;grid-template-columns:minmax(0,1fr);border-radius:40px;background:var(--sage);overflow:hidden}.config-intro,.contact-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px 64px;align-items:end;padding:50px 56px 34px}.config-intro h2{font-size:clamp(36px,3.6vw,55px)}.config-intro p{font-size:15px;max-width:540px;color:#515c50}.config-intro p+p,.contact-intro p+p{margin-top:12px}.config-form{padding:44px 48px;background:#eeefe9;margin:0 12px 12px;border-radius:30px}.config-form .choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.config-form .field-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.form-progress-label{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:16px}.progress-track{height:2px;background:#d0d5ca;margin-bottom:32px}.progress-fill{height:100%;width:14.2857%;background:var(--green);transition:width .35s}.form-step{border:0;padding:0;margin:0;min-width:0}.form-step legend{font-size:25px;line-height:1.2;letter-spacing:-.04em;margin-bottom:24px;max-width:420px;padding:0}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.choice{position:relative;display:flex;align-items:center;gap:12px;padding:15px;border:1px solid #cdd2c8;border-radius:14px;font-size:12px;line-height:1.45;cursor:pointer;min-height:59px;background:#f5f4f05e}.choice:has(input:checked){background:#dce2d7;border-color:var(--green)}.choice:hover{border-color:#81927d}.choice input{accent-color:var(--green);width:17px;height:17px;flex-shrink:0;margin:0}.form-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:28px}.form-actions .back{font-size:12px;text-decoration:underline;text-underline-offset:5px;padding:12px 5px}.form-actions .button{margin-left:auto}.field{display:flex;flex-direction:column;gap:8px;font-size:12px;min-width:0}.field input,.field textarea,.field select{width:100%;padding:14px 16px;border:1px solid #bec6b9;border-radius:12px;background:#fbfbf7;color:var(--ink);min-height:50px;font-size:16px}.field textarea{resize:vertical;min-height:140px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field-grid .full{grid-column:1/-1}.check-label{display:flex;gap:11px;align-items:flex-start;line-height:1.6;font-size:12px;margin-top:20px}.check-label input{accent-color:var(--green);width:18px;height:18px;margin-top:3px;flex-shrink:0}.check-label a,.privacy-note a{text-decoration:underline}.privacy-note{font-size:11px;color:var(--muted);margin-top:20px}.form-error{font-size:13px;color:#783b24;margin-top:14px;min-height:21px}.hp-field{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}.form-success{padding:36px 0}.form-success .icon{width:50px;height:50px;margin-bottom:30px}.form-success h3{font-size:30px;margin-bottom:20px}.form-success p{font-size:15px}.form-hint{font-size:12px;color:var(--muted);margin:-12px 0 22px}.summary-lines{margin:24px 0;font-size:12px;line-height:1.5}.summary-lines div{display:grid;grid-template-columns:110px 1fr;gap:15px;padding:8px 0;border-bottom:1px solid var(--line)}.summary-lines dt{color:var(--muted)}.summary-lines dd{margin:0}.contact-grid{display:grid;grid-template-columns:minmax(0,1fr);background:var(--sage);border-radius:40px;overflow:hidden}.contact-intro{grid-template-columns:minmax(0,.85fr) minmax(0,1.6fr)}.contact-intro h2{font-size:clamp(36px,3.6vw,55px)}.contact-details{display:grid;grid-template-columns:repeat(3,auto);justify-content:space-between;gap:24px 32px;margin:0}.contact-intro .contact-details dd{font-size:clamp(18px,1.5vw,22px);overflow-wrap:break-word}.contact-details+p{margin-top:22px}.contact-details dt{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.contact-details dd{margin:6px 0 0;font-size:23px}.contact-form{background:#eeefe9;border-radius:30px;padding:44px 48px;margin:0 12px 12px}.contact-form h2{font-size:32px;margin-bottom:28px}.contact-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.contact-fields .contact-message{grid-column:span 2}.contact-message textarea{flex:1;min-height:230px}.contact-upload{display:flex;flex-direction:column;gap:8px;min-width:0}.contact-upload .upload-zone{flex:1;margin:0}.upload-title{font-size:12px;line-height:1.65;letter-spacing:0;font-weight:400}.upload-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:32px 20px;margin:22px 0;border:1px dashed #8e9a87;border-radius:18px;text-align:center;font-size:14px;cursor:pointer;background:#f5f4f077}.upload-zone.dragging{border-color:var(--green);background:var(--sage)}.upload-zone input{max-width:100%;font-size:12px}.upload-zone small{font-size:11px;color:var(--muted)}.upload-filename{font-size:12px;overflow-wrap:anywhere}.faq-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:60px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{padding:22px 0;cursor:pointer;font-size:16px;list-style:none;display:flex;gap:22px;align-items:center;justify-content:space-between;line-height:1.5}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';font-size:23px;flex-shrink:0;font-weight:300}.faq-list details[open] summary:after{content:'−'}.faq-list details p{font-size:14px;color:var(--muted);padding:0 30px 25px 0;max-width:710px}
/* Page ends */
.end-cta{background:var(--green);color:white;display:flex;align-items:center;justify-content:space-between;gap:50px;border-radius:40px;padding:58px}.end-cta h2{font-size:clamp(34px,3.8vw,56px)}.end-cta p{max-width:450px;font-size:14px;color:#dee2d7;margin-top:24px}.end-cta .button-row{max-width:260px;margin:0;flex-shrink:0}.end-cta .button{width:100%}.footer{padding:68px 0 25px}.footer-top{display:grid;grid-template-columns:1.7fr repeat(3,1fr) 1.4fr;gap:28px}.footer-brand p{font-size:12px;color:var(--muted);max-width:200px;margin-top:23px}.footer h2{font-size:10px;letter-spacing:.12em;margin:0 0 20px;font-weight:600}.footer ul{list-style:none;margin:0;padding:0;font-size:12px}.footer li{margin-bottom:9px}.footer a:hover{text-decoration:underline;text-underline-offset:4px}.footer li .icon{display:inline-block;width:12px;height:12px;margin-left:4px;vertical-align:-1px}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:10px;color:var(--muted);border-top:1px solid var(--line);padding-top:23px;margin-top:50px}.footer-bottom div{display:flex;gap:24px}.footer-bottom button{padding:0;font-size:10px;text-decoration:underline}.cookie-banner{position:fixed;bottom:20px;left:24px;width:360px;max-width:calc(100vw - 48px);z-index:90;background:#fff;padding:19px 22px;border:1px solid var(--line);border-radius:20px;box-shadow:0 10px 50px #20211f12}.cookie-banner h2{font-size:17px;letter-spacing:-.025em;margin-bottom:7px}.cookie-banner p{font-size:11px;line-height:1.6;color:var(--muted)}.cookie-banner div{display:flex;align-items:center;justify-content:space-between;margin-top:13px}.cookie-banner a{font-size:11px;text-decoration:underline}.cookie-banner button{background:var(--green);color:white;border-radius:999px;padding:8px 19px;font-size:11px;min-height:38px}.back-top{position:fixed;right:24px;bottom:24px;z-index:60;display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:var(--paper);box-shadow:0 3px 20px #20211f0a}.mobile-cta{display:none}
.project-image{display:block}
/* Interior pages */
.breadcrumb{display:flex;flex-wrap:wrap;gap:10px;font-size:11px;color:var(--muted);padding-top:32px}.breadcrumb a{text-decoration:underline;text-underline-offset:4px}.breadcrumb span[aria-hidden]{color:#9ea394}.page-intro{padding:48px 0 50px}.page-intro h1{max-width:1030px}.page-intro .lead{margin-top:28px}.page-intro .eyebrow{margin-bottom:24px}.page-image{width:100%;height:540px;object-fit:cover;border-radius:40px}.detail-hero{position:relative}.detail-hero>img{height:640px;width:100%;object-fit:cover;border-radius:40px}.detail-title{display:flex;align-items:flex-end;justify-content:space-between;gap:30px}.detail-title .lead{margin-top:15px}.detail-specs{display:grid;grid-template-columns:repeat(6,1fr);padding:30px 0;margin-top:15px;border-bottom:1px solid var(--line);gap:20px}.detail-specs dt{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.detail-specs dd{font-size:22px;margin:8px 0 0;letter-spacing:-.03em}.detail-specs dd.small-value{font-size:15px}.content-columns{display:grid;grid-template-columns:1fr 1fr;gap:70px}.content-columns .lead{font-size:16px}.detail-gallery{margin-top:36px}.floor-plan{background:#ecece5;border:1px solid var(--line);border-radius:28px;padding:40px;text-align:center}.floor-plan svg{width:100%;height:240px;stroke:#7a8977;margin:20px auto}.floor-plan h3{font-size:23px}.floor-plan p{font-size:12px;color:var(--muted);max-width:470px;margin:10px auto}.content-columns>.floor-plan:only-child{grid-column:1/-1}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.feature-card{border:1px solid var(--line);padding:32px;border-radius:24px}.feature-card .icon{width:30px;height:30px;margin-bottom:40px;color:var(--green)}.feature-card h3{font-size:25px;margin-bottom:18px}.feature-card p{font-size:14px;color:var(--muted)}.specification{padding:36px;border:1px solid var(--line);border-radius:26px}.specification h3{margin-bottom:20px}.specification dl{margin:0}.specification dl div{display:flex;justify-content:space-between;gap:25px;padding:16px 0;border-bottom:1px solid var(--line);font-size:13px}.specification dd{margin:0;color:var(--muted);text-align:right}.specification dl div:last-child{border:0}.quiz-panel .choice-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.quiz-panel .choice{font-size:15px;padding:20px}.quiz-panel .form-actions{margin-top:18px}.quiz-result{border-top:1px solid #bdc6b6;margin-top:36px;padding-top:32px}.quiz-result h3{font-size:28px;margin-bottom:20px}.quiz-result ul{font-size:15px}.quiz-result p{font-size:15px}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 24px}.article-card img{width:100%;aspect-ratio:1.5;object-fit:cover;border-radius:26px;margin-bottom:22px}.article-card .eyebrow{font-size:9px;margin-bottom:15px}.article-card h2{font-size:25px;line-height:1.25}.article-card p{font-size:13px;color:var(--muted);margin-top:16px}.article-meta{font-size:12px;letter-spacing:.04em;color:var(--muted);margin-top:18px}.article-body{min-width:0}.article-rows{border-bottom:1px solid var(--line)}.article-row{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:24px 64px;padding:48px 0;border-top:1px solid var(--line)}.article-row-head{position:sticky;top:calc(var(--header) + 28px);align-self:start;min-width:0}.article-row-number{display:block;font-size:12px;color:var(--muted);margin-bottom:16px}.article-row h2{font-size:clamp(28px,2.5vw,40px);line-height:1.12}.article-row-head .eyebrow{margin:6px 0 0}.article-row-body{min-width:0}.article-row-body>:first-child{margin-top:0}.article-row-body h3{font-size:23px;margin:32px 0 14px}.article-row-body p,.article-row-body li{font-size:18px;line-height:1.8;color:#555e50}.article-row-body ul{margin:18px 0 0}.article-body>.text-link{margin-top:36px}.article-body li{margin-bottom:10px}.article-body a:not(.text-link){text-decoration:underline;text-underline-offset:4px}.reveal.is-observed{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}.reveal.is-visible{opacity:1;transform:none}.noscript{padding:18px;background:var(--sand);text-align:center;font-size:14px}@keyframes menu-in{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
