:root{--ink:#203031;--dark:#142324;--mid:#496062;--muted:#747e7c;--paper:#fbfaf7;--sand:#f2eee7;--line:#dcd9d1;--gold:#bfa57b;--white:#fff;--serif:Georgia,'Times New Roman',serif;--sans:Inter,'Helvetica Neue',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:86px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}figure{margin:0}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--serif);letter-spacing:-.035em}h2{font-size:clamp(2.5rem,4.6vw,4.7rem);line-height:1.1}h2 em,h1 em{font-weight:400}::selection{background:#bfa57b;color:#152527}.container{max-width:1360px;padding:0 48px;margin:0 auto}.skip-link{position:fixed;top:-50px;left:20px;z-index:99;padding:10px 15px;background:white;color:#111}.skip-link:focus{top:10px}.announcement{height:32px;background:#142223;color:#d6d9d4;font-size:10px;letter-spacing:.13em}.announcement-inner{display:flex;align-items:center;justify-content:space-between;height:100%;gap:12px}.announcement a{color:#e1c89f;letter-spacing:.04em}.announcement a:hover{text-decoration:underline}.site-header{height:83px;background:rgba(251,250,247,.98);border-bottom:1px solid rgba(20,35,36,.11);position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:11px}.brand-mark{height:39px;width:39px;border:1px solid #244044;position:relative;display:flex;justify-content:center;align-items:center;font-family:var(--serif);font-size:20px;letter-spacing:-.2em}.brand-mark-r{margin-left:1px;font-style:italic;color:#b28f5b}.brand-text{display:flex;flex-direction:column;gap:1px}.brand-text strong{font-family:var(--serif);font-size:22px;letter-spacing:-.025em;font-weight:400;line-height:1}.brand-text small{letter-spacing:.38em;font-size:8px;padding-left:2px;color:#596867}.main-nav{display:flex;align-items:center;gap:39px;font-size:12px;letter-spacing:.045em}.main-nav>a:not(.nav-contact){padding:10px 0;transition:color .2s}.main-nav>a:not(.nav-contact):hover{color:#99764b}.nav-contact{border:1px solid #1d3537;padding:13px 20px!important;transition:background .2s,color .2s}.nav-contact:hover{background:#1d3537;color:white}.nav-toggle{display:none}.hero{min-height:min(730px,76vw);height:calc(100vh - 115px);max-height:790px;position:relative;overflow:hidden;background:#283739;color:white;display:flex;align-items:center}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 52%;filter:brightness(.75) saturate(.8);transform:scale(1.01)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,24,24,.89) 0%,rgba(11,24,24,.66) 43%,rgba(11,24,24,.08) 96%),linear-gradient(0deg,rgba(11,24,24,.5),transparent 22%)}.hero-content{width:100%;z-index:1;position:relative;padding-top:32px;padding-bottom:76px}.eyebrow{font-size:11px;letter-spacing:.2em;color:#967b56;font-weight:600;margin-bottom:30px}.eyebrow.light{color:#d3bd98}.hero h1{font-size:clamp(3.7rem,6.4vw,7.1rem);line-height:1.04;margin:0 0 29px;max-width:1000px}.hero h1 em{color:#e0ceae}.hero-intro{max-width:480px;font-size:16px;font-weight:300;line-height:1.85;color:#f2f0e8;margin-bottom:33px}.hero-buttons{display:flex;gap:32px;align-items:center;flex-wrap:wrap}.button{min-height:51px;padding:15px 24px;display:inline-flex;align-items:center;gap:24px;justify-content:space-between;font-size:12px;font-weight:600;letter-spacing:.02em;transition:background .2s,color .2s,border .2s}.button-light{background:#eee6d8;color:#1f2e2e}.button-light:hover{background:#fff}.text-link{font-size:12px;font-weight:600;border-bottom:1px solid;padding-bottom:8px;display:inline-flex;align-items:center;gap:20px}.light-link{color:#eee6d8}.text-link:hover{color:#caa976}.hero-foot{position:absolute;left:50%;transform:translateX(-50%);bottom:23px;width:100%;z-index:1;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.19em;color:#eee8e0;opacity:.83}.statement{background:var(--sand);padding:82px 0}.statement-grid{display:grid;grid-template-columns:280px 1fr;gap:64px}.section-index{font-size:11px;letter-spacing:.15em;color:#5d6a66;padding-top:13px}.index-square{display:inline-block;width:9px;height:9px;background:var(--gold);margin-right:12px}.statement p{font-family:var(--serif);font-size:clamp(1.75rem,3.25vw,3.15rem);line-height:1.35;letter-spacing:-.015em;max-width:850px;margin:0}.statement p em{color:#a08a68}.section{padding:125px 0}.section-intro{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:50px}.section-intro h2{margin-bottom:0}.section-lead{max-width:350px;color:#64716e;font-size:14px;line-height:1.95;margin:0 0 7px}.services-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.service-card{background:white;border:1px solid #e8e4dc;min-width:0;overflow:hidden}.service-card figure{height:285px;overflow:hidden;background:#e2ddd3}.service-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.service-card:hover img{transform:scale(1.06)}.service-body{padding:28px 23px 32px;min-height:211px}.service-body .number{font-size:10px;color:#ab8a5f;letter-spacing:.15em}.service-card h3{font-size:19px;font-family:var(--serif);margin:14px 0 12px}.service-card p{font-size:12px;line-height:1.85;color:#66716d;margin:0}.promise{background:#213837;color:#f2efe9;padding:104px 0}.promise-inner{display:grid;grid-template-columns:1.05fr 1fr;align-items:end;gap:80px}.promise h2{font-size:clamp(3rem,5.2vw,5.3rem);margin:0}.promise h2 em{color:#c8b18b}.promise p:not(.eyebrow){font-size:15px;line-height:2;color:#d2dcd8;margin-bottom:30px;max-width:535px}.portfolio{background:#f8f6f1}.portfolio-top{margin-bottom:50px}.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.portfolio-card{position:relative;aspect-ratio:1.55;background:#ddd9cf;overflow:hidden}.portfolio-card.wide{grid-column:span 2;aspect-ratio:2.6}.portfolio-card:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(11,24,24,.73));pointer-events:none}.portfolio-card img{height:100%;width:100%;object-fit:cover;transition:transform .5s}.portfolio-card:hover img{transform:scale(1.04)}.portfolio-card figcaption{position:absolute;z-index:1;bottom:30px;left:34px;color:white;display:flex;flex-direction:column;gap:7px}.portfolio-card figcaption span{font-family:var(--serif);font-size:27px}.portfolio-card figcaption small{letter-spacing:.09em;font-size:10px;color:#e8e4dd;text-transform:uppercase}.gallery-note{font-size:11px;color:#79807b;margin:20px 0 0;line-height:1.6}.process{background:white}.process-layout{display:grid;grid-template-columns:1fr 1fr;gap:92px}.process-side>p:not(.eyebrow){max-width:500px;color:#66726e;line-height:1.95;font-size:14px}.process-side h2{margin-bottom:25px}.process-image{margin-top:40px;max-height:320px;object-fit:cover;width:100%}.process-steps{margin-top:51px}.process-step{display:grid;grid-template-columns:65px 1fr;padding:25px 0 27px;gap:14px;border-bottom:1px solid #e5e3de}.process-step:first-child{border-top:1px solid #e5e3de}.process-step>span{font-family:var(--serif);font-size:22px;color:#b69e77}.process-step h3{font-family:var(--serif);font-size:23px;margin:0 0 10px}.process-step p{color:#68736f;line-height:1.9;font-size:13px;margin:0;max-width:500px}.materials-story{display:grid;grid-template-columns:1fr 1fr;min-height:640px;background:#f0ede5}.story-picture{height:100%;min-height:640px;overflow:hidden}.story-picture img{width:100%;height:100%;object-fit:cover}.story-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:92px min(8vw,115px)}.story-copy h2{margin-bottom:30px}.story-copy>p:not(.eyebrow){color:#5f6e6b;font-size:14px;line-height:2;max-width:530px}.story-points{margin-top:24px;width:100%;padding-top:22px;border-top:1px solid #cec9be;display:flex;gap:18px;flex-wrap:wrap}.story-points span{font-size:10px;letter-spacing:.085em;color:#897453}.workshop{padding:108px 0;background:#fbfaf7}.workshop-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:34px}.workshop-heading h2{margin:0}.workshop-heading>p{max-width:330px;font-size:14px;line-height:1.85;color:#6a7771;margin:0}.workshop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.workshop-grid figure{position:relative}.workshop-grid img{width:100%;height:345px;object-fit:cover;background:#eae7df}.workshop-grid figcaption{font-size:10px;letter-spacing:.17em;margin-top:13px;color:#717c77}.contact{background:#18302f;color:white;padding:126px 0}.contact-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:110px}.contact-lead h2{font-size:clamp(3.2rem,5.6vw,5.8rem);margin-bottom:27px}.contact-lead h2 em{color:#dcc3a1}.contact-lead>p:not(.eyebrow){color:#d4dfd8;line-height:1.93;max-width:550px;font-size:15px}.contact-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:33px}.button-outline{border:1px solid #d1c6b2;color:#eee7db}.button-outline:hover{background:#eee7db;color:#18302f}.contact-info{padding:42px 40px;border:1px solid rgba(235,235,224,.23);align-self:start;margin-top:52px}.contact-info>p{font-size:10px;letter-spacing:.17em;color:#cdb693}.contact-info h3{font-family:var(--serif);font-size:34px;margin:25px 0 29px}.contact-info dl{margin:0}.contact-info dl>div{border-top:1px solid rgba(235,235,224,.18);padding:17px 0;display:grid;grid-template-columns:115px 1fr;gap:5px}.contact-info dt{font-size:11px;color:#b7c6c0}.contact-info dd{font-size:13px;margin:0;overflow-wrap:anywhere;line-height:1.5}.contact-info dd a:hover{text-decoration:underline}.contact-info>small{display:block;margin-top:21px;font-size:11px;color:#b7c6c0;line-height:1.9}.footer{background:#0e1d1e;color:#e0e5e0;padding:64px 0 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:60px}.footer-brand{font-family:var(--serif);font-size:30px}.footer-brand span{font-style:italic;color:#bba47e}.footer-grid>div:first-child p{font-size:12px;color:#a7b4ae;line-height:1.9;margin:16px 0 0}.footer-grid>div:not(:first-child){display:flex;align-items:flex-start;flex-direction:column;gap:13px}.footer-grid>div:not(:first-child) a{font-size:12px;color:#d8dfd9}.footer-grid>div:not(:first-child) a:hover{color:#d5af77}.footer-label{font-size:10px;color:#ac9672;letter-spacing:.17em;margin-bottom:7px}.footer-bottom{border-top:1px solid #354547;margin-top:62px;padding-top:25px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#9daca5;line-height:1.5}
@media(max-width:1150px){.container{padding:0 32px}.main-nav{gap:22px}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card figure{height:330px}.service-body{min-height:170px}.process-layout{gap:44px}.contact-grid{gap:40px}.story-copy{padding:64px 42px}}
@media(max-width:800px){.announcement-inner>span:nth-child(2){display:none}.site-header{height:73px}.nav-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;background:none;border:0;padding:10px;cursor:pointer}.nav-toggle span{display:block;width:23px;height:1px;background:var(--ink)}.main-nav{display:none;position:absolute;top:73px;left:0;right:0;padding:20px 32px 30px;background:#faf9f5;box-shadow:0 12px 28px #0002;flex-direction:column;align-items:stretch;gap:6px}.main-nav.is-open{display:flex}.main-nav a{padding:13px 0}.nav-contact{margin-top:10px;text-align:center}.hero{height:670px;min-height:0}.hero h1{font-size:clamp(3.7rem,8.5vw,5.3rem)}.hero-foot>span:nth-child(2){display:none}.statement-grid{grid-template-columns:1fr;gap:25px}.section-intro{display:block}.section-lead{max-width:570px;margin-top:24px}.promise-inner{grid-template-columns:1fr;gap:25px}.promise-inner>div:nth-child(2){max-width:620px}.process-layout{grid-template-columns:1fr}.process-steps{margin-top:0}.process-image{height:320px}.materials-story{grid-template-columns:1fr}.story-picture{height:400px;min-height:400px}.contact-grid{grid-template-columns:1fr}.contact-info{margin-top:0}.workshop-grid img{height:250px}.workshop-heading{display:block}.workshop-heading>p{max-width:600px;margin-top:20px}}
@media(max-width:570px){.container{padding:0 21px}.announcement{height:30px}.announcement-inner{font-size:9px}.announcement a{font-size:9px}.brand-text strong{font-size:20px}.hero{height:650px;max-height:none}.hero-photo{object-position:55% center}.hero-shade{background:linear-gradient(90deg,rgba(11,24,24,.89),rgba(11,24,24,.40)),linear-gradient(0deg,#101e20a6,transparent 40%)}.hero-content{padding:30px 21px 85px}.hero h1{font-size:clamp(3.14rem,12.5vw,4.4rem)}.hero-intro{font-size:14px}.hero-foot{bottom:19px;gap:20px;flex-direction:column;font-size:8px}.section{padding:75px 0}.statement{padding:63px 0}.statement p{font-size:1.9rem}.section-intro h2{font-size:2.7rem}.services-grid{grid-template-columns:1fr}.service-card figure{height:270px}.service-body{min-height:0}.promise{padding:74px 0}.promise h2{font-size:3rem}.portfolio-grid{grid-template-columns:1fr;gap:14px}.portfolio-card,.portfolio-card.wide{grid-column:span 1;aspect-ratio:1.15}.portfolio-card figcaption{bottom:20px;left:21px}.portfolio-card figcaption span{font-size:22px}.portfolio-card figcaption small{font-size:9px}.process-step{grid-template-columns:42px 1fr}.process-step h3{font-size:21px}.story-picture{height:270px;min-height:270px}.story-copy{padding:74px 21px}.story-copy h2{font-size:2.9rem}.story-points span{font-size:9px}.workshop{padding:75px 0}.workshop-grid{grid-template-columns:1fr;gap:28px}.workshop-grid img{height:285px}.contact{padding:80px 0}.contact-lead h2{font-size:3.5rem}.contact-info{padding:28px 22px}.contact-info dl>div{grid-template-columns:91px 1fr}.footer-grid{grid-template-columns:1fr 1fr;gap:44px}.footer-grid>div:first-child{grid-column:span 2}.footer-bottom{flex-direction:column;margin-top:40px}.hero-buttons{gap:19px}.contact-actions{flex-direction:column;align-items:stretch}.contact-actions .button{width:100%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

/* --------------------------------------------------------------
  TERRARAY V2: daylight project hero + curated natural stone decor
   -------------------------------------------------------------- */
.hero{height:auto;min-height:0;max-height:none;background:#f8f7f3;color:#203031;padding:54px 0 70px;display:block}
.hero-split{display:grid;grid-template-columns:.88fr 1.12fr;align-items:center;gap:clamp(28px,4.2vw,76px)}
.hero-content{padding:22px 0 12px;max-width:570px;z-index:auto}
.hero .eyebrow{color:#876c48;margin-bottom:25px}
.hero h1{font-size:clamp(3.1rem,5.4vw,6.15rem);line-height:1.05;letter-spacing:-.055em;max-width:630px;margin-bottom:27px;color:#1d3433}
.hero h1 em{color:#a48966}
.hero-intro{color:#586c66;max-width:480px;font-size:15px;line-height:1.85;margin-bottom:31px;font-weight:400}
.hero-buttons{gap:25px}
.button-dark{background:#203b38;color:#fff}
.button-dark:hover{background:#385850;color:white}
.hero .text-link{color:#314746;border-color:#aa9677}
.hero-visual{margin:0;position:relative;min-width:0}
.hero-visual img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center center;background:#e7e7e3;border:1px solid #e3e1db;filter:contrast(1.025) saturate(1.025)}
.hero-visual figcaption{display:flex;align-items:center;justify-content:space-between;gap:15px;color:#536661;margin-top:14px;font-size:10px;line-height:1.4}
.hero-visual figcaption span:first-child{font-weight:600;letter-spacing:.14em;color:#8f7453}
.hero-minor{display:flex;gap:23px;flex-wrap:wrap;border-top:1px solid #d5d6ce;padding-top:25px;margin-top:46px;font-size:9px;letter-spacing:.13em;color:#718079}
.hero-minor span:first-child:before{content:'◆';color:#af8e5f;margin-right:8px}
.hero-minor span:nth-child(2):before{content:'◇';color:#af8e5f;margin-right:8px}
.home-decor{background:#f3f0e9}
.decor-head{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:42px}
.decor-head h2{margin:0}
.decor-head-aside{max-width:400px}
.decor-head-aside p{color:#68746c;font-size:14px;line-height:1.85}
.decor-head-aside .text-link{color:#2b4642;font-size:11px}
.decor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:29px 22px}
.decor-card{min-width:0}
.decor-photo{aspect-ratio:1.07;background:#e9e4dc;overflow:hidden;border:1px solid #ddd6ca}
.decor-photo img{width:100%;height:100%;object-fit:contain;transition:transform .4s}
.decor-card:hover .decor-photo img{transform:scale(1.045)}
.decor-card h3{font-family:var(--serif);font-size:24px;margin:15px 0 7px;color:#213735}
.decor-card p{font-size:12px;color:#67746d;line-height:1.75;max-width:310px}
.decor-note{display:flex;align-items:center;justify-content:space-between;gap:35px;border-top:1px solid #d7d1c5;margin-top:47px;padding-top:30px}
.decor-note strong{font-weight:600;color:#253a35;font-size:14px}
.decor-note p{font-size:12px;line-height:1.8;color:#63716b;max-width:660px;margin:8px 0 0}
.portfolio-card.wide img{object-position:center 55%}
@media(max-width:1180px){.hero h1{font-size:clamp(3rem,5.6vw,4.7rem)}.hero-split{gap:34px}.hero-minor{margin-top:27px}}
@media(max-width:900px){.hero{padding:39px 0 48px}.hero-split{grid-template-columns:1fr;gap:25px}.hero-content{max-width:760px;padding:0}.hero h1{font-size:clamp(3.4rem,7.4vw,5rem)}.hero-intro{max-width:640px}.hero-visual img{max-height:700px;object-fit:cover}.hero-minor{margin-top:27px}.decor-head{display:block}.decor-head-aside{margin-top:20px;max-width:590px}.decor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:570px){.hero{height:auto;min-height:0;max-height:none;padding:27px 0 40px}.hero-content{padding:0 0 4px}.hero h1{font-size:clamp(3.08rem,12vw,4.5rem);margin-bottom:19px;line-height:1.08}.hero-intro{font-size:14px;margin-bottom:23px;line-height:1.8}.hero-buttons{gap:19px}.hero-buttons .button{padding:14px 16px;font-size:11px;min-height:47px}.hero .eyebrow{font-size:9px;margin-bottom:15px}.hero-minor{margin-top:23px;gap:11px;font-size:8px;line-height:1.6;padding-top:15px}.hero-visual img{height:auto;aspect-ratio:4/3;object-fit:contain}.hero-visual figcaption{font-size:9px;align-items:flex-start;flex-direction:column;gap:4px;margin-top:10px}.home-decor{padding-top:75px;padding-bottom:75px}.decor-head h2{font-size:clamp(2.35rem,10vw,3rem)}.decor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 12px}.decor-photo{aspect-ratio: .88}.decor-card h3{font-size:19px;line-height:1.15;margin-top:11px}.decor-card p{font-size:11px;line-height:1.6}.decor-note{align-items:flex-start;flex-direction:column;margin-top:31px}.decor-note .button{width:100%;font-size:11px}.portfolio-card.wide{aspect-ratio:1.35}}
/* Mobile: show the real project image immediately on first load. */
@media(max-width:570px){.hero-split{display:flex;flex-direction:column;align-items:stretch;gap:18px}.hero-visual{order:0}.hero-content{order:1;padding-top:8px}.hero-visual img{aspect-ratio:4/3;object-fit:contain}.hero-visual figcaption{font-size:8px}.hero h1{font-size:clamp(2.85rem,11.5vw,4.2rem)}.hero-minor{gap:9px}.hero-buttons{gap:18px}}
