@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=DM+Sans:wght@300;400;500;600&display=swap');
:root{--olive:#344739;--sage:#7b8571;--cream:#f5f2ea;--paper:#fcfaf5;--stone:#e5dfd1;--ink:#25342c;--text:#4c574d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:'DM Sans',sans-serif;font-weight:300;font-size:15px;line-height:1.75}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3,.serif{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;line-height:1.05}h1{font-size:clamp(65px,8.2vw,132px);letter-spacing:-.035em}h2{font-size:clamp(45px,5.5vw,84px);letter-spacing:-.025em}h3{font-size:clamp(31px,3vw,46px)}p{max-width:670px}header{height:94px;display:flex;align-items:center;justify-content:space-between;padding:0 5.5%;position:relative;z-index:10;background:var(--paper)}.brand{font-family:'Cormorant Garamond',serif;font-size:32px;line-height:.8;color:var(--olive);letter-spacing:.015em}.brand span{display:block;font-family:'DM Sans';font-size:9px;letter-spacing:.24em;text-align:center;margin-top:11px;font-weight:500}.nav{display:flex;gap:34px;align-items:center}.nav a{font-size:10px;font-weight:500;letter-spacing:.16em;text-transform:uppercase}.nav a:hover{opacity:.58}.nav .outline{border:1px solid var(--olive);padding:12px 19px}.menu-btn{display:none;border:none;background:transparent;font-size:26px;color:var(--olive)}.eyebrow{text-transform:uppercase;letter-spacing:.25em;font-size:10px;font-weight:600;color:var(--sage)}.hero{min-height:700px;display:grid;grid-template-columns:48% 52%;background:var(--cream)}.hero-copy{padding:10vh 8% 9vh 11.5%;display:flex;justify-content:center;flex-direction:column;align-items:flex-start}.hero h1{margin:24px 0 25px}.hero p{font-size:15px;line-height:1.9;color:var(--text);max-width:445px}.hero-photo{background:#697d63 url('assets/paving-detail.webp') center/cover no-repeat;min-height:690px}.btn{display:inline-block;border:1px solid var(--olive);padding:16px 31px;text-transform:uppercase;letter-spacing:.17em;font-size:10px;font-weight:600;transition:.2s;margin-top:22px}.btn:hover{background:var(--olive);color:white}.btn.dark{background:var(--olive);color:white}.btn.dark:hover{background:transparent;color:var(--olive)}.section{padding:120px 9%}.intro{max-width:1110px;margin:auto;text-align:center}.intro p{margin:25px auto}.split{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center;max-width:1300px;margin:auto}.photo{min-height:550px;background-size:cover;background-position:center}.photo.garden{background-image:url('assets/planting-border.webp')}.photo.leaves{background-image:url('https://images.unsplash.com/photo-1441974231531-c6227db76b6e?auto=format&fit=crop&w=1400&q=85')}.photo.plant{background-image:url('assets/cad-workspace-placeholder.webp')}.copy{padding:25px 5%}.copy h2{margin:23px 0}.copy p{color:var(--text)}.soft{background:var(--cream)}.deep{background:var(--olive);color:var(--paper)}.deep .eyebrow{color:#bcc6b3}.deep p{color:#e6e7df}.deep .btn{color:#fff;border-color:#f7f3e8}.deep .btn:hover{background:#fff;color:var(--olive)}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:45px}.service{border-top:1px solid #aeb5a7;padding:38px 0}.service h3{margin-bottom:19px}.line{width:90px;height:1px;background:var(--sage);margin:35px 0}.banner{min-height:420px;display:flex;align-items:center;justify-content:center;text-align:center;padding:80px 20px;background:linear-gradient(#1f382e83,#1f382e83),url('assets/coneflowers.webp') center/cover;color:white}.banner h2{max-width:780px;margin:15px auto 0}.footer{background:#24382d;color:var(--paper);padding:70px 9% 25px}.footer-top{display:flex;justify-content:space-between;gap:30px}.footer p{color:#c8d0c5;font-size:13px}.footer-links{display:flex;gap:24px;flex-wrap:wrap;font-size:10px;letter-spacing:.16em;text-transform:uppercase}.fine{font-size:10px;color:#aab5a7;border-top:1px solid #617568;padding-top:22px;margin-top:60px;display:flex;justify-content:space-between;gap:15px}.pagehead{background:var(--cream);padding:110px 9% 100px;text-align:center}.pagehead h1{font-size:clamp(70px,9vw,132px);margin:18px 0}.pagehead p{margin:auto;max-width:700px}.content{max-width:1100px;margin:auto}.columns{display:grid;grid-template-columns:1fr 1fr;gap:65px}.bullets{list-style:none;padding:0}.bullets li{border-bottom:1px solid #cbd1c7;padding:17px 0;font-size:14px}.bullets li:before{content:'—';padding-right:17px;color:var(--sage)}.note{background:var(--cream);padding:30px 35px;font-size:13px;color:var(--text)}.email{font-family:'Cormorant Garamond';font-size:clamp(34px,4vw,58px);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:8px;overflow-wrap:anywhere}.small-caps{font-size:10px;letter-spacing:.2em;text-transform:uppercase}.center{text-align:center}.center p{margin-left:auto;margin-right:auto}@media(max-width:850px){header{height:77px}.menu-btn{display:block}.nav{display:none;position:absolute;top:77px;left:0;right:0;flex-direction:column;background:var(--paper);padding:30px;align-items:flex-start;box-shadow:0 10px 25px #25342c1c}.nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:85px 9%}.hero-photo{min-height:440px}.split,.columns{grid-template-columns:1fr}.split .photo{min-height:420px}.section{padding:80px 7%}.service-grid{grid-template-columns:1fr}.footer-top{flex-direction:column}.pagehead{padding:90px 6%}}

/* S+R original photographic details — refreshed Oct 2026 */
.hero{grid-template-columns:43% 57%;min-height:650px}
.hero-photo{min-height:650px;background-position:center center}
.hero-copy{padding:9vh 8% 9vh 13%}
.photo{min-height:560px;aspect-ratio: 1/1;position:relative}
.photo.garden{background-position:center 54%}
.photo.plant{background-position:center 49%}
.photo.paving{background-image:url('assets/paving-detail.webp');background-position:center}
.photo.flowers{background-image:url('assets/coneflowers.webp');background-position:center}
.photo.cad-workspace{background-image:url('assets/cad-workspace-placeholder.webp');background-position:center;background-color:#eee7d9}
.photo.cad-workspace:after{content:'ILLUSTRATIVE IMAGE · PHOTO TO COME';position:absolute;bottom:14px;left:14px;background:rgba(252,250,245,.88);color:#344739;font:600 9px 'DM Sans',sans-serif;letter-spacing:.15em;padding:8px 10px}
.gallery-duo{display:grid;grid-template-columns:1fr 1fr;gap:26px;max-width:1300px;margin:0 auto}
.gallery-duo .photo{min-height:390px;aspect-ratio:4/3}
@media(max-width:850px){.hero{grid-template-columns:1fr;min-height:0}.hero-photo{min-height:390px}.hero-copy{padding:75px 9%}.gallery-duo{grid-template-columns:1fr}.gallery-duo .photo{min-height:320px}.photo{min-height:390px}}

/* Architectural running-bond paving watermark: low-contrast white linework, tucked off corner */
.pagehead-paving{position:relative;overflow:hidden;isolation:isolate}
.pagehead-paving::before{content:"";position:absolute;z-index:0;pointer-events:none;width:min(67vw,940px);height:690px;right:-170px;bottom:-275px;background:url('assets/paving-watermark.svg') center/contain no-repeat;transform:rotate(-16deg);opacity:.94}
.pagehead-paving > *{position:relative;z-index:1}
@media(max-width:850px){.pagehead-paving::before{width:95vw;height:420px;right:-175px;bottom:-160px;opacity:.8}}

/* Compact editorial header on Landscape Design: reveal photo sooner */
.pagehead-landscape{padding:58px 8% 62px;min-height:0}
.pagehead-landscape h1{font-size:clamp(66px,7.1vw,105px);line-height:.96;margin:12px 0 23px}
.pagehead-landscape p{max-width:760px}
.landscape-lead{padding-top:55px}
@media(max-width:850px){.pagehead-landscape{padding:60px 7% 65px}.pagehead-landscape h1{font-size:clamp(60px,12vw,84px)}.landscape-lead{padding-top:35px}}

/* S+R detail photographs — original hydrangea and layered blooms */
.photo.leaves{background-image:url("assets/sr-hydrangea-bee.webp");background-position:49% 46%;}
.banner{background-image:linear-gradient(rgba(24,44,32,.57),rgba(24,44,32,.57)),url("assets/sr-garden-blooms.webp");background-position:center 50%;}

/* Additional original project details */
.photo.leaves{background-image:url("assets/sr_purple_perennials.webp");background-position:50% 56%;}
.landscape-detail-feature{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center;max-width:1100px;margin:10px auto 100px;padding:0 7%;}
.landscape-detail-copy{padding:20px 0;}
.landscape-detail-copy h2{font-size:clamp(43px,4.3vw,67px);margin:20px 0;}
.landscape-detail-copy p{color:var(--text);}
.landscape-detail-photo{width:100%;aspect-ratio:4/5;background:url("assets/sr_grasses_boxwood.webp") center 58%/cover no-repeat;}
@media(max-width:850px){.landscape-detail-feature{grid-template-columns:1fr;gap:20px;margin:0 auto 65px;padding:0 7%;}.landscape-detail-photo{aspect-ratio:4/3;}.landscape-detail-copy h2{font-size:48px;}}

/* Original detail photographs: workshop and textured stone */
.photo.cad-workspace{background-image:url("assets/sr-cad-detail.webp");background-position:center center;}
.photo.cad-workspace:after{display:none;}
.contact-material{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7%;max-width:1180px;margin:70px auto 0;padding:0 6%;align-items:center;}
.contact-material-photo{background:url("assets/sr-stone-detail.webp") center 47%/cover no-repeat;aspect-ratio:4/3;}
.contact-material-copy h2{font-size:clamp(42px,4vw,65px);margin:20px 0;}
.contact-material-copy p{color:var(--text)}
@media(max-width:850px){.contact-material{grid-template-columns:1fr;margin:45px auto 0;padding:0 7%;gap:24px}.contact-material-photo{aspect-ratio:4/3}}

/* Distinct full-workspace photo on homepage; detail image remains on dedicated CAD page */
.photo.cad-workspace.cad-home-wide{background-image:url("assets/sr-cad-wide-desk.webp");background-position:51% 45%;}

/* CAD production: original desk-tools photograph paired with stone material detail */
.cad-detail-pair{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,.8fr);gap:16px;align-items:stretch;min-height:500px}
.cad-detail-pair .photo.cad-workspace{min-height:500px;aspect-ratio:auto;background-position:54% 48%}
.cad-stone-photo{background:url("assets/sr-stone-detail.webp") center/cover no-repeat;min-height:500px}
@media(max-width:850px){.cad-detail-pair{min-height:0;gap:12px}.cad-detail-pair .photo.cad-workspace,.cad-stone-photo{min-height:340px}}
@media(max-width:520px){.cad-detail-pair .photo.cad-workspace,.cad-stone-photo{min-height:260px}}

/* Editorial CAD page: separate drafting-tools and stone detail images */
.cad-intro{padding-bottom:85px}
.cad-intro-split{grid-template-columns:1fr 1fr;gap:8%}
.cad-intro-split .cad-tools-photo{aspect-ratio:4/5;min-height:540px;background-position:center 50%}
.cad-services-summary{margin:85px auto 0;padding:0 2%}
.cad-service-list{display:grid;grid-template-columns:1fr 1fr;gap:7%}
.cad-services-summary .note{margin-top:32px}
.cad-stone-section .split{gap:9%}
.cad-stone-feature{aspect-ratio:5/4;min-height:430px;background-position:center 52%}
@media(max-width:850px){.cad-intro-split{grid-template-columns:1fr;gap:35px}.cad-intro-split .cad-tools-photo{min-height:350px;aspect-ratio:4/3}.cad-services-summary{margin-top:60px}.cad-service-list{grid-template-columns:1fr;gap:0}.cad-stone-section .split{display:flex;flex-direction:column;gap:30px}.cad-stone-feature{min-height:340px;width:100%;aspect-ratio:4/3}}

/* S+R selected original transparent logo: proportionate header placement */
header .logo-brand{display:flex;align-items:center;flex:0 0 auto;width:clamp(215px,21vw,287px);line-height:1;}
header .logo-brand img{width:100%;height:auto;display:block;}
@media(max-width:1050px){header .nav{gap:16px}header .logo-brand{width:220px}}
@media(max-width:850px){header .logo-brand{width:min(54vw,235px);}header{padding-left:5%;padding-right:5%;}}

/* Distinct original photographs for each page, October 2026 */
.photo.garden.landscape-purple{background-image:url("assets/sr_purple_perennials.webp");background-position:center 51%;}
.photo.leaves{background-image:url("assets/sr-about-white-pink-blooms.webp");background-position:center 48%;}
.banner{background-image:linear-gradient(rgba(24,44,32,.57),rgba(24,44,32,.57)),url("assets/coneflowers.webp");background-position:center 50%;}

/* Latest S+R placement: topiary and grasses on Landscape, purple perennials on About */
.photo.garden.landscape-topiary{background-image:url("assets/sr-clipped-shrubs-grasses.webp");background-position:center 48%;}
.photo.leaves{background-image:url("assets/sr_purple_perennials.webp");background-position:center 51%;}

/* Landscape feature: keep top shrubs intact; trim only lower grasses */
.split .photo.garden.landscape-topiary{aspect-ratio:4/5;min-height:0;background-size:cover;background-position:center top;background-repeat:no-repeat;}
@media(max-width:850px){.split .photo.garden.landscape-topiary{aspect-ratio:4/5;min-height:0;background-position:center top;}}

/* Concise professional-services title; maintain hierarchy and show imagery sooner */
.pagehead-cad{padding:70px 8% 75px}
.pagehead-cad h1{font-size:clamp(54px,6.5vw,99px);line-height:1.02;max-width:1200px;margin:15px auto 22px}
@media(max-width:850px){.pagehead-cad{padding:54px 7% 62px}.pagehead-cad h1{font-size:clamp(47px,9vw,76px)}}

/* Homepage: visibly separate professional and homeowner paths */
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:10px}
.hero-actions .btn{margin-top:12px;padding:14px 18px;font-size:9px;letter-spacing:.12em}
@media(max-width:850px){.hero-actions{gap:10px}.hero-actions .btn{padding:13px 15px}}
