/* Landscape Development page: tailored art direction, layered project gallery and light interactions. */
/* Keep the navigation directly over the landscape hero footage, like the homepage. */
body.landscape-development-page .service-detail-hero{isolation:isolate}
body.landscape-development-page .service-header{
  position:absolute!important;top:0!important;left:0!important;right:0!important;z-index:100!important;
  padding-block:0!important;background:transparent!important;border:0!important;box-shadow:none!important;
  -webkit-backdrop-filter:none!important;backdrop-filter:none!important
}
body.landscape-development-page .service-header .logo,
body.landscape-development-page .service-header .nav a.l{color:#fff}
body.landscape-development-page .service-header .logo .lm img{filter:brightness(0) invert(1)}
body.landscape-development-page .service-header .burger{color:#fff;background:rgba(255,255,255,.14)}
body.landscape-development-page .tg-intro{position:relative;padding-top:clamp(88px,11vw,150px);padding-bottom:clamp(56px,7vw,90px)}
body.landscape-development-page .tg-intro::before{content:"LANDSCAPE / 01";position:absolute;top:34px;right:var(--P);color:var(--olive-d);font-size:11px;font-weight:800;letter-spacing:.18em}
body.landscape-development-page .tg-intro h2 em,body.landscape-development-page .landscape-transformation h2 em{color:var(--olive-d);font-family:Georgia,serif;font-weight:400}
body.landscape-development-page .tg-facts{padding-top:20px}

.landscape-transformation{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(34px,7vw,100px);align-items:center;padding-top:clamp(56px,8vw,110px);padding-bottom:clamp(70px,9vw,120px)}
.landscape-transformation-copy h2{margin:14px 0 18px;font-size:clamp(42px,5.3vw,72px);font-weight:500;letter-spacing:-.055em;line-height:1.02}
.landscape-transformation-copy>p:not(.service-kicker){max-width:420px;color:var(--muted);font-size:17px}
.landscape-range-label{display:flex;flex-direction:column;gap:5px;margin-top:35px;color:var(--ink);font-size:14px;font-weight:700}
.landscape-range-label span{color:var(--olive-d);font-size:12px;font-weight:600;letter-spacing:.07em;text-transform:uppercase}
.landscape-before-after{--reveal:50%;position:relative;isolation:isolate;overflow:hidden;aspect-ratio:1.4;border-radius:28px 6px 28px 6px;background:#d4cdbb;box-shadow:0 28px 70px -45px rgba(13,28,19,.55)}
.landscape-after-image,.landscape-before-layer,.landscape-before-layer img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.landscape-before-layer{z-index:1;clip-path:inset(0 calc(100% - var(--reveal)) 0 0)}
.landscape-before-layer img{object-position:center}
.landscape-image-tag{position:absolute;z-index:2;top:18px;padding:8px 13px;border:1px solid #ffffff80;border-radius:99px;background:#102118b8;color:white;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.before-tag{left:18px}.after-tag{right:18px}
.landscape-reveal-line{position:absolute;z-index:3;top:0;bottom:0;left:var(--reveal);width:2px;background:#fff;transform:translateX(-1px);pointer-events:none}
.landscape-reveal-line i{position:absolute;top:50%;left:50%;display:grid;place-items:center;width:46px;height:46px;border:2px solid #fff;border-radius:50%;background:var(--olive);color:#fff;font-size:20px;font-style:normal;box-shadow:0 4px 20px #0005;transform:translate(-50%,-50%)}
.landscape-before-after input{position:absolute;z-index:4;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;touch-action:pan-y}
.landscape-before-after input:focus-visible{outline:3px solid var(--olive-l);outline-offset:-5px;border-radius:28px}

body.landscape-development-page .tg-site{background:#e9e0cf}
body.landscape-development-page .tg-site .tg-grid3 article{min-height:220px;border-radius:4px 24px 4px 24px;box-shadow:0 12px 30px -28px #102118}
body.landscape-development-page .tg-site .tg-grid3 article:nth-child(3n+2){background:#e1e8ce}
body.landscape-development-page .tg-site .tg-grid3 article h3::before{display:block;margin-bottom:23px;color:var(--olive);font-size:12px;letter-spacing:.12em;content:"FIELD NOTE / 0" counter(tg-note)}
body.landscape-development-page .tg-site .tg-grid3{counter-reset:tg-note}
body.landscape-development-page .tg-site .tg-grid3 article{counter-increment:tg-note}
body.landscape-development-page .tg-layers{position:relative}
body.landscape-development-page .tg-use-grid article{transition:background .3s ease,transform .3s ease,box-shadow .3s ease}
body.landscape-development-page .tg-use-grid article:hover{background:#e8ebd7;box-shadow:0 18px 40px -32px #102118;transform:translateY(-4px)}
body.landscape-development-page .tg-styles .tg-grid3 article{min-height:236px;border-radius:4px 24px 4px 24px}
body.landscape-development-page .tg-styles .tg-grid3 article:nth-child(3n){background:#f9f4e9}
body.landscape-development-page .tg-plant-grid article{position:relative;isolation:isolate;overflow:hidden;border-radius:28px 5px 28px 5px}
body.landscape-development-page .tg-plant-grid article::after{position:absolute;z-index:-1;right:-38px;bottom:-72px;width:180px;height:180px;border:1px solid #ffffff42;border-radius:50%;content:"";transition:transform .5s ease}
body.landscape-development-page .tg-plant-grid article:hover::after{transform:scale(1.45)}

body.landscape-development-page .terrace-portfolio{position:relative;overflow:hidden;background:#102118;color:#fff}
body.landscape-development-page .terrace-portfolio::before{position:absolute;top:0;right:0;width:34vw;height:34vw;border:1px solid #d2dc9240;border-radius:50%;content:"";transform:translate(32%,-45%);pointer-events:none}
body.landscape-development-page .terrace-portfolio-head{position:relative;border-color:#ffffff2b}
body.landscape-development-page .terrace-portfolio-head h2{max-width:680px;color:#fff;font-size:clamp(44px,6vw,82px);letter-spacing:-.06em}
body.landscape-development-page .terrace-portfolio-head>p{color:#ffffffa6;font-size:15px}
body.landscape-development-page .terrace-portfolio .service-kicker{color:#d2dc92}
body.landscape-development-page .terrace-portfolio-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:30px 18px;align-items:start}
body.landscape-development-page .terrace-portfolio-card{grid-column:span 4;cursor:zoom-in}
body.landscape-development-page .terrace-portfolio-card figcaption{display:none}
body.landscape-development-page .terrace-portfolio-card:nth-child(6n+1),body.landscape-development-page .terrace-portfolio-card:nth-child(6n+5){grid-column:span 7}
body.landscape-development-page .terrace-portfolio-card:nth-child(6n+2),body.landscape-development-page .terrace-portfolio-card:nth-child(6n+6){grid-column:span 5;margin-top:72px}
body.landscape-development-page .terrace-portfolio-card:nth-child(6n+3),body.landscape-development-page .terrace-portfolio-card:nth-child(6n+4){grid-column:span 6}
body.landscape-development-page .terrace-portfolio-image{aspect-ratio:1.2;border-radius:28px 5px 28px 5px!important;background:#20372b}
body.landscape-development-page .terrace-portfolio-card:nth-child(3n) .terrace-portfolio-image{aspect-ratio:1.05}
body.landscape-development-page .terrace-portfolio-card:nth-child(6n+1) .terrace-portfolio-image{aspect-ratio:1.52}
body.landscape-development-page .terrace-portfolio-card figcaption{padding:15px 3px 12px;border-color:#ffffff2c}
body.landscape-development-page .terrace-portfolio-card figcaption strong{color:#fff;font-size:18px}
body.landscape-development-page .terrace-portfolio-card figcaption small{color:#ffffffa6;font-size:13px}
body.landscape-development-page .terrace-portfolio-card:hover .terrace-portfolio-image{box-shadow:0 20px 50px -28px #000b}
body.landscape-development-page .terrace-portfolio-image::after{position:absolute;inset:0;background:linear-gradient(155deg,transparent 45%,#07150c50);content:"";pointer-events:none}
body.landscape-development-page .terrace-portfolio-card::after{display:block;margin-top:-58px;margin-right:14px;position:relative;z-index:1;float:right;width:38px;height:38px;border:1px solid #ffffff8c;border-radius:50%;color:#fff;text-align:center;line-height:36px;content:"↗";pointer-events:none;transition:background .2s,transform .2s}
body.landscape-development-page .terrace-portfolio-card:hover::after{background:var(--olive);transform:rotate(45deg)}
body.landscape-development-page .tg-process .tg-steps li{transition:background .3s ease,padding .3s ease}
body.landscape-development-page .tg-process .tg-steps li:hover{background:#ffffff08;padding-top:38px}
@media(prefers-reduced-motion:no-preference){
  .landscape-motion-ready .tg-site .tg-grid3 article,.landscape-motion-ready .tg-styles .tg-grid3 article,.landscape-motion-ready .tg-plant-grid article,.landscape-motion-ready .terrace-portfolio-card,.landscape-motion-ready .tg-steps li{opacity:0;transform:translateY(18px);transition:opacity .55s ease var(--landscape-delay,0ms),transform .55s cubic-bezier(.2,.7,.2,1) var(--landscape-delay,0ms)}
  .landscape-motion-ready .tg-site .tg-grid3 article.landscape-visible,.landscape-motion-ready .tg-styles .tg-grid3 article.landscape-visible,.landscape-motion-ready .tg-plant-grid article.landscape-visible,.landscape-motion-ready .terrace-portfolio-card.landscape-visible,.landscape-motion-ready .tg-steps li.landscape-visible{opacity:1;transform:translateY(0)}
}

.landscape-lightbox{position:fixed;z-index:1000;inset:0;display:grid;grid-template-columns:64px minmax(0,1fr) 64px;align-items:center;gap:12px;padding:24px;background:#07110eeF;opacity:0;visibility:hidden;transition:opacity .24s ease,visibility .24s ease}
.landscape-lightbox.is-open{opacity:1;visibility:visible}
.landscape-lightbox[hidden]{display:none}
.landscape-lightbox figure{display:grid;place-items:center;max-height:calc(100svh - 48px);margin:0;min-width:0}
.landscape-lightbox img{max-width:100%;max-height:calc(100svh - 100px);object-fit:contain;border-radius:12px;box-shadow:0 20px 70px #0008}
.landscape-lightbox figcaption{margin-top:12px;color:#fff;font-size:14px;text-align:center}
.landscape-lightbox button{display:grid;place-items:center;width:48px;height:48px;border:1px solid #ffffff4d;border-radius:50%;background:#ffffff12;color:#fff;font:inherit;font-size:24px;cursor:pointer;transition:background .2s,transform .2s}
.landscape-lightbox button:hover{background:var(--olive);transform:scale(1.06)}
.landscape-lightbox .landscape-lightbox-close{position:absolute;top:20px;right:24px}
@media(max-width:900px){body.landscape-development-page .terrace-portfolio-card,body.landscape-development-page .terrace-portfolio-card:nth-child(n){grid-column:span 6;margin-top:0}.landscape-transformation{grid-template-columns:1fr}.landscape-transformation-copy{max-width:600px}.landscape-range-label{margin-top:22px}}
@media(max-width:600px){body.landscape-development-page .terrace-portfolio-grid{grid-template-columns:1fr;gap:22px}body.landscape-development-page .terrace-portfolio-card,body.landscape-development-page .terrace-portfolio-card:nth-child(n){grid-column:1;margin:0}.landscape-before-after{aspect-ratio:.94;border-radius:20px 5px}.landscape-transformation{padding-top:55px;padding-bottom:70px}.landscape-image-tag{top:12px;font-size:9px}.landscape-lightbox{grid-template-columns:40px minmax(0,1fr) 40px;gap:4px;padding:12px}.landscape-lightbox button{width:38px;height:38px;font-size:18px}.landscape-lightbox .landscape-lightbox-close{top:12px;right:12px}}
@media(prefers-reduced-motion:reduce){.landscape-before-layer,.landscape-reveal-line i,body.landscape-development-page .terrace-portfolio-card,body.landscape-development-page .terrace-portfolio-image img{transition:none!important}}
