/* V4: one clear catalogue and one request path. */
:root{--paper:#f8f6f0;--muted:#59615a;--line:#d7ddd4}body{font-size:18px;line-height:1.65}h1,h2,h3{font-family:Manrope,Arial,sans-serif;font-weight:650;letter-spacing:-.04em}h1{line-height:1.1}p{max-width:680px}.eyebrow{font-size:13px;letter-spacing:.09em;margin-bottom:18px}.site-header{padding:23px 5vw;max-width:1440px;background:var(--paper)}.site-header nav{gap:25px;font-size:15px}.site-header nav a{font-size:15px}.site-header nav .nav-cta{background:var(--green);color:#fff;padding:12px 18px;border-radius:5px;box-shadow:none}.site-header nav .nav-cta:hover{background:#2d5546}.site-header nav a[aria-current]:not(.nav-cta){text-decoration:underline;text-underline-offset:7px;box-shadow:none}.button{font-size:16px;border-radius:5px;min-height:54px;font-weight:650}.text-link{font-size:16px;font-weight:600}.brand-dot{display:none}main>section{padding:70px 5vw}main>.page-head{padding:54px 5vw 36px}.page-head h1{font-size:clamp(36px,4.4vw,58px);max-width:900px}.page-head .lead{font-size:20px;line-height:1.6;margin-top:22px;max-width:770px}.u-hero{display:grid;grid-template-columns:1.14fr .86fr;gap:6vw;align-items:center;padding-top:44px;padding-bottom:46px}.u-hero h1{font-size:clamp(40px,4.6vw,66px);line-height:1.08}.u-hero h1 span{color:var(--green)}.u-hero-copy>p:not(.eyebrow){font-size:20px;color:var(--muted);margin:26px 0 28px;max-width:580px}.u-hero .actions{gap:24px}.u-reassurance{padding:0;display:flex;flex-wrap:wrap;gap:8px 22px;list-style:none;font-size:14px;margin:24px 0 0;color:var(--muted)}.u-reassurance li:before{content:'✓';margin-right:7px;color:var(--green)}.u-hero-figure{min-width:0;background:#ece7dd;border-radius:8px;overflow:hidden}.u-hero-figure>a{display:block}.u-hero-figure img{width:100%;height:400px;object-fit:contain}.u-hero-figure figcaption{padding:17px 22px;background:#e8e9df;font-size:14px;display:flex;flex-direction:column;gap:4px}.u-hero-figure figcaption a{font-weight:700;text-decoration:underline;text-underline-offset:4px}.u-explore{border-top:1px solid var(--line)}.u-section-heading{display:flex;align-items:end;justify-content:space-between;gap:36px;margin-bottom:32px}.u-section-heading h2,.u-custom h2,.u-end h2{font-size:clamp(32px,3.4vw,45px);line-height:1.15}.u-section-heading>p{max-width:430px;font-size:17px;color:var(--muted)}.u-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.u-category{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fffdf8}.u-category-image{background:#eae5da;padding:10px}.u-category-image img{width:100%;height:230px;object-fit:contain}.u-category-copy{padding:20px 17px}.u-category h3{font-size:22px;line-height:1.2;display:flex;gap:8px;justify-content:space-between;margin-bottom:12px}.u-category h3 span{color:var(--green);font-size:18px}.u-category p{font-size:16px;color:var(--muted);line-height:1.6}.u-category:hover{border-color:var(--green);box-shadow:0 5px 18px #183d3210}.u-photo-note{font-size:13px;color:var(--muted);max-width:900px;margin:20px 0 12px}.u-custom{background:#e8ede4;display:grid;grid-template-columns:1fr 1.2fr;gap:70px;align-items:start}.u-custom p:not(.eyebrow){font-size:18px}.u-custom .text-link{margin-top:18px}.u-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.u-steps article{border-top:1px solid #bbc8bd;padding-top:22px}.u-steps span{display:block;color:var(--green);font-size:15px;margin-bottom:18px}.u-steps h3{font-size:24px;line-height:1.25;margin-bottom:15px}.u-steps p{font-size:17px;color:var(--muted)}.u-end{background:var(--green);color:var(--paper);display:flex;align-items:center;justify-content:space-between;gap:35px}.u-end .eyebrow{color:#c5d8c8}.u-end p:not(.eyebrow){margin-top:18px;color:#e2e8df}.u-end .button{flex-shrink:0}.u-info-grid{background:#e8ede4;display:grid;grid-template-columns:1fr 1fr;gap:70px}.u-info-grid h2{font-size:30px;line-height:1.2;margin-bottom:20px}.u-info-grid p{font-size:18px}.u-info-grid .text-link{margin-top:18px}.u-order-first{padding-top:12px}.u-faq{max-width:1120px!important}.u-faq h2{font-size:36px}.u-faq summary{font-size:20px;font-weight:650}.u-faq details p{font-size:18px;max-width:850px}.collection-head{max-width:1440px}.portfolio-section{padding-top:0}.collection-tools{display:flex;flex-direction:column;gap:18px;border-top:0;padding-top:0}.collection-tools .filter-bar{order:-1;display:flex;gap:10px}.portfolio-search{margin:0;max-width:460px;font-size:15px}.portfolio-search input{font-size:16px;background:#fff}.filter-bar button{font-size:15px;min-height:44px;padding:9px 17px}.collection-grid{gap:38px 26px}.collection-card{border:1px solid var(--line);border-radius:7px;background:#fffdf8;overflow:hidden}.collection-photo{border:0;padding:12px}.collection-photo img{aspect-ratio:4/3;object-fit:contain}.collection-card .project-copy{padding:21px}.collection-card .project-copy h2{font-size:25px;line-height:1.2;margin-bottom:14px}.collection-card .project-copy>p:not(.eyebrow){font-size:16px}.collection-card .project-copy .text-link{margin-top:12px}.project-breadcrumb{display:flex}.project-detail-copy h1{font-size:46px;line-height:1.15}.project-detail-copy .lead{font-size:19px;line-height:1.65}.project-facts dt{font-size:14px}.project-facts dd{font-size:17px}.project-detail .button{font-size:16px}.project-gallery .detail-main{border-radius:7px}.u-request{display:grid;grid-template-columns:.85fr 1.15fr;gap:7vw;padding-top:22px}.u-request h2{font-size:28px;line-height:1.3;letter-spacing:-.035em;margin-bottom:18px}.u-request-aside{padding-top:26px}.u-request-aside>p{font-size:17px;margin:18px 0}.u-email{font-weight:650;font-size:clamp(16px,1.8vw,23px);color:var(--green);display:block;text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere;margin:20px 0 28px}.u-small-note{background:#e8ede4;padding:22px;border-radius:6px;margin:28px 0 16px;font-size:16px}.u-small-note ul{padding-left:20px;margin:14px 0 0}.u-small-note li+li{margin-top:10px}.u-request .request-form{background:#fffdf8;border:1px solid var(--line);padding:28px;border-radius:8px;width:100%;min-width:0}.request-form>p:not(.eyebrow){font-size:16px;line-height:1.6}.request-form label{font-size:16px;margin:20px 0}.request-form input,.request-form textarea,.request-form select{font-size:17px;background:#fff;border-radius:4px}.u-optional{border-top:1px solid var(--line);margin-bottom:24px;padding:18px 0}.u-optional summary{font-size:16px;line-height:1.4;flex-wrap:wrap;gap:6px}.u-optional-label{font-size:13px;font-weight:400;color:var(--muted)}.field-note{font-size:14px!important}.field-note a{text-decoration:underline}.request-result h3{line-height:1.3}.u-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:6vw;padding-top:10px}.u-contact-grid article{background:#fffdf8;border:1px solid var(--line);border-radius:7px;padding:32px}.u-contact-grid h2{font-size:30px;line-height:1.3;margin-bottom:24px}.u-contact-grid p:not(.eyebrow){font-size:17px}.u-social-link{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:20px 0;font-size:18px;font-weight:650}.u-social-link span{font-size:16px}.u-contact-other{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:6vw}.u-contact-other h2{font-size:25px;line-height:1.25}.u-material-note{font-size:17px;margin-top:22px}.footer-top>div{font-size:16px}.footer-bottom{font-size:12px}.related-section h2{font-size:36px}
@media(max-width:1050px){.site-header nav{gap:16px}.site-header nav a{font-size:14px}.u-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.u-category-image img{height:270px}.u-hero{gap:30px}.u-hero h1{font-size:46px}.u-hero-figure img{height:370px}.u-hero .actions{gap:14px}.u-hero-copy>p:not(.eyebrow){font-size:18px}.u-steps{gap:25px}.u-request{gap:30px}}
@media(max-width:780px){.site-header{padding:18px 22px}.site-header nav{gap:0}.site-header nav a{font-size:17px;padding:15px 0}.site-header nav .nav-cta{margin-top:12px;text-align:center;padding:14px}.menu-toggle{font-size:16px}.brand{font-size:24px}main>section{padding:44px 22px}main>.page-head{padding:38px 22px 26px}.page-head h1{font-size:38px;line-height:1.15}.page-head .lead{font-size:18px}.u-hero{grid-template-columns:1fr;padding-top:32px;gap:28px}.u-hero h1{font-size:43px;line-height:1.1}.u-hero .eyebrow{font-size:12px}.u-hero-copy>p:not(.eyebrow){font-size:18px;margin:22px 0}.u-hero-figure img{height:310px}.u-hero-figure figcaption{padding:14px 18px}.u-reassurance{font-size:13px;gap:7px 18px;margin-top:20px}.u-hero .actions{gap:18px}.u-section-heading{display:block;margin-bottom:25px}.u-section-heading>p{margin-top:18px}.u-section-heading>.text-link{margin-top:15px}.u-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.u-category-image{padding:6px}.u-category-image img{height:180px}.u-category-copy{padding:16px 12px}.u-category h3{font-size:20px;line-height:1.25}.u-category h3 span{display:none}.u-category p{font-size:15px}.u-custom,.u-info-grid,.u-contact-grid,.u-contact-other,.u-request{grid-template-columns:1fr;gap:26px}.u-steps{grid-template-columns:1fr;gap:26px}.u-steps article{display:grid;grid-template-columns:35px 1fr;gap:0 12px;padding-top:20px}.u-steps h3{font-size:24px}.u-steps p{grid-column:2}.u-end{display:block}.u-end .button{margin-top:26px}.u-faq h2{font-size:32px}.u-faq summary{font-size:18px}.u-faq details p{font-size:17px}.portfolio-section{padding-top:0}.collection-tools .filter-bar{gap:8px}.filter-bar button{font-size:14px;padding:8px 13px}.collection-grid{grid-template-columns:1fr}.collection-card .project-copy h2{font-size:27px}.collection-card .project-copy{padding:22px}.collection-photo img{aspect-ratio:4/3}.project-breadcrumb{display:flex;font-size:14px;padding:22px}.project-detail-copy h1{font-size:38px}.project-detail .detail-main img{aspect-ratio:1;max-height:480px}.project-detail-copy .lead{font-size:18px}.u-request{display:flex;flex-direction:column-reverse;padding-top:10px}.u-request .request-form{padding:22px 18px}.u-request .fields{grid-template-columns:1fr;gap:0}.u-request .fields label{margin:12px 0}.u-request h2{font-size:26px}.u-request-aside{padding:10px 0}.u-email{font-size:19px}.u-optional summary{font-size:16px}.u-contact-grid article{padding:25px}.u-contact-grid h2{font-size:28px}.u-contact-other h2{font-size:24px}.footer-bottom{font-size:12px}.u-hero .button{font-size:16px}.u-hero .text-link{font-size:16px}}
@media(max-width:420px){.u-hero h1{font-size:38px}.u-category-grid{grid-template-columns:1fr}.u-category-image img{height:270px}.u-category-copy{padding:20px}.u-category h3{font-size:25px}.u-category h3 span{display:inline}.u-category p{font-size:17px}.u-hero-figure img{height:290px}.u-hero .actions{align-items:flex-start;flex-direction:column;gap:9px}.u-hero .text-link{padding-bottom:5px}}
.collection-head h1{font-size:clamp(34px,3.8vw,48px)}main>.collection-head{padding-top:34px;padding-bottom:24px}.collection-head .lead{font-size:18px;margin-top:16px}.collection-tools{gap:12px;margin-bottom:12px;padding-bottom:16px}.portfolio-search input{padding:10px 12px}.filter-count{margin-bottom:18px}@media(max-width:780px){.collection-head .lead{font-size:17px}.collection-head h1{font-size:34px}.collection-tools .filter-bar{gap:7px}}
