:root{--ink:#151b23;--muted:#52606a;--green:#276345;--green-hover:#1b4b33;--mint:#eaf6ee;--line:#e1e7e3;--page:1200px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:#fff;color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.6}a{color:inherit;text-underline-offset:5px}a:focus-visible{outline:3px solid #b0d565;outline-offset:5px}img{display:block;max-width:100%;height:auto}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.wrap{max-width:var(--page);width:calc(100% - 80px);margin-inline:auto}.site-header{min-height:112px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:16px;text-decoration:none;font-size:20px;font-weight:750;letter-spacing:-.6px}.brand img{width:64px;height:64px;border-radius:4px}.site-header nav{display:flex;gap:32px;font-size:15px;font-weight:550}.site-header nav a{text-decoration:none}.site-header nav a:hover,.text-link:hover,.footer-links a:hover{color:var(--green)}.hero{text-align:center;padding-top:54px}h1,h2,h3,p{margin:0}h1{font-size:clamp(38px,4.25vw,60px);line-height:1.12;letter-spacing:-2.4px;font-weight:750}h1 span{color:var(--green)}.hero-description{font-size:20px;line-height:1.6;margin:24px auto 0;color:var(--muted);max-width:660px}.call-buttons{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;margin-top:28px}.call-button{display:flex;align-items:center;justify-content:center;gap:13px;min-width:216px;padding:14px 24px;background:var(--green);color:white;text-decoration:none;border:1px solid var(--green);border-radius:6px;line-height:1.35;font-size:17px;font-weight:650;transition:background .16s,transform .16s}.call-button:hover{background:var(--green-hover);transform:translateY(-2px)}.call-button small{display:block;font-size:15px;font-weight:450;margin-top:3px;font-variant-numeric:tabular-nums}.call-button svg{width:20px;height:20px}.trust{display:flex;align-items:center;justify-content:center;gap:26px;margin:24px 0 40px;font-size:14px;color:#46534b}.trust span{display:flex;align-items:center;gap:9px}.trust span+span{border-left:1px solid #ccd7d0;padding-left:26px}.trust svg{color:var(--green);width:21px;height:21px}.hero-image{width:100%;aspect-ratio:1.92;object-fit:cover;object-position:center 57%;border-radius:10px}.section{text-align:center;padding-block:88px}h2{font-size:clamp(30px,3.25vw,44px);line-height:1.18;letter-spacing:-1.4px;font-weight:740}.section-intro{color:var(--muted);font-size:18px;line-height:1.65;margin:22px auto 0;max-width:720px}.service-columns{display:grid;grid-template-columns:repeat(3,1fr);margin-top:52px}.service-group{padding:0 24px}.service-group+.service-group{border-left:1px solid var(--line)}.service-icon{width:40px;height:40px;margin:0 auto 12px;color:var(--green);stroke-width:1.5}h3{font-size:22px;line-height:1.3;letter-spacing:-.5px}.service-group ul{list-style:none;padding:0;margin:20px 0 0;font-size:16px;color:var(--muted)}.service-group li+li{margin-top:9px}.service-note{margin-top:40px;font-size:15px;color:var(--muted)}.service-note a{color:var(--green);font-weight:600}.recognition{border-top:1px solid var(--line);padding-top:76px}.recognition-inner{max-width:920px}.source-label{font-size:12px;letter-spacing:1.7px;text-transform:uppercase;font-weight:700;color:var(--muted);margin-top:26px}.recognition h3{font-size:28px;line-height:1.25;color:var(--green);margin-top:12px;letter-spacing:-.6px}.magazine-summary{font-size:18px;line-height:1.7;max-width:600px;margin:18px auto 30px;color:var(--muted)}figure{margin:0 auto;max-width:780px}figure img{width:100%;aspect-ratio:1.38;object-fit:cover;object-position:center 59%;border-radius:8px}figcaption{font-size:12px;color:var(--muted);margin-top:10px}.text-link{display:inline-flex;align-items:center;gap:9px;color:var(--green);font-size:15px;font-weight:650;margin-top:24px}.text-link svg{width:18px;height:18px}.contact{background:var(--mint);padding-block:72px}.contact .call-buttons{margin-top:30px}.contact-area{font-size:14px;color:var(--muted);margin-top:24px}.site-footer{text-align:center;padding-block:48px 32px}.footer-brand{display:inline-block}.footer-brand img{border-radius:5px;width:80px;height:80px}.footer-name{font-size:20px;font-weight:700;margin-top:12px}.site-footer>p:not(.footer-name){font-size:14px;color:var(--muted);margin-top:4px}.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 28px;margin:20px 0 24px;font-size:14px}.site-footer>small{font-size:12px;color:#68756c}.icon-definitions{position:absolute;width:0;height:0;overflow:hidden}.sr-only,.skip-link:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link:focus{position:absolute;top:8px;left:8px;padding:12px;background:white;color:var(--green);z-index:10}
@media(min-width:1500px){.hero{padding-top:66px}.hero-image{aspect-ratio:2}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.site-header{min-height:0;padding-block:20px;flex-direction:column;gap:18px}.brand{font-size:18px;gap:11px}.brand img{width:48px;height:48px}.site-header nav{gap:32px;font-size:14px}.hero{padding-top:30px}h1{font-size:38px;letter-spacing:-1.5px;line-height:1.15}.hero-description{font-size:17px;line-height:1.65;margin-top:20px}.desktop-break{display:none}.call-buttons{gap:10px;margin-top:24px}.call-button{min-width:0;flex:1;max-width:230px;padding:13px 9px;font-size:15px;gap:8px}.call-button small{font-size:13px}.call-button svg{width:17px;height:17px}.trust{gap:14px;margin:22px 0 28px;font-size:12px}.trust span{gap:6px}.trust span+span{padding-left:14px}.trust svg{width:18px;height:18px}.hero-image{aspect-ratio:1.2;object-position:center 60%;border-radius:6px}.section{padding-block:56px}h2{font-size:31px;letter-spacing:-1px}.section-intro{font-size:16px;margin-top:18px}.service-columns{grid-template-columns:1fr;margin-top:34px;gap:28px}.service-group{padding:0 0 28px;max-width:450px;width:100%;margin-inline:auto}.service-group+.service-group{border-left:0}.service-group:not(:last-child){border-bottom:1px solid var(--line)}.service-group:last-child{padding-bottom:0}.service-group ul{margin-top:16px}.service-group li+li{margin-top:7px}.service-note{margin-top:30px;font-size:14px}.recognition h3{font-size:25px}.magazine-summary{font-size:16px}.source-label{margin-top:22px}figure img{aspect-ratio:1.08;border-radius:6px}.contact .call-buttons{margin-top:25px}.contact-area{font-size:13px}.site-footer{padding-block:36px 32px}.footer-links{flex-direction:column;gap:14px}}
@media(max-width:360px){.wrap{width:calc(100% - 32px)}h1{font-size:33px}.call-button{font-size:14px}.call-button svg{display:none}.trust{gap:10px}.trust span+span{padding-left:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Readable service labels; headings and content remain centered. */
.services h2{max-width:800px;margin-inline:auto;text-wrap:balance}
.services .section-intro{max-width:620px;text-wrap:balance}
.service-columns{margin-top:40px;gap:0}
.service-group{padding-inline:28px}
.service-group h3{font-size:24px;letter-spacing:-.5px}
.service-group ul{margin-top:24px;font-size:17px;font-weight:550;line-height:1.45;color:var(--ink)}
.service-group li{padding:12px 4px;border-bottom:1px solid var(--line)}
.service-group li:first-child{border-top:1px solid var(--line)}
.service-group li+li{margin-top:0}
.service-group li small{display:block;font-size:14px;color:var(--muted);font-weight:400;margin-top:3px}
.service-icon{width:44px;height:44px;margin-bottom:14px}
@media(max-width:760px){.service-columns{margin-top:34px;gap:34px}.service-group{padding:0;max-width:390px}.service-group:not(:last-child){border-bottom:0}.service-group h3{font-size:23px}.service-group ul{margin-top:20px;font-size:17px}.service-group li{padding:12px 6px}}

/* Keep the requested headline on exactly two visual lines. */
#hero-title .headline-line{display:block;white-space:nowrap;color:var(--ink)}
#hero-title .headline-green{color:var(--green)}
@media(max-width:760px){#hero-title{font-size:clamp(20px,8vw,44px);letter-spacing:-.035em;line-height:1.22}}

/* Estimate flow: centered sections with readable, explicitly labeled fields. */
.estimate-button{display:inline-flex;align-items:center;justify-content:center;gap:16px;background:var(--green);color:#fff;border:1px solid var(--green);border-radius:6px;padding:16px 24px;font:650 17px/1.4 inherit;font-family:inherit;font-size:17px;font-weight:650;text-decoration:none;cursor:pointer;min-height:52px}.estimate-button:hover{background:var(--green-hover)}.estimate-button:disabled{opacity:.65;cursor:wait}.hero-estimate{margin-top:28px}.hero .call-buttons{margin-top:20px}.hero .call-button{background:#fff;color:var(--green);border-color:var(--line)}.hero .call-button:hover{background:var(--mint)}.section-estimate{margin-top:30px}.next-steps{text-align:center}.steps-list{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:36px;padding:0;margin:40px 0 0}.step-number{display:inline-grid;place-items:center;width:40px;height:40px;background:var(--mint);color:var(--green);font-weight:700;border-radius:50%;margin-bottom:16px}.steps-list h3{font-size:20px;margin-bottom:8px}.steps-list p{font-size:16px;color:var(--muted);max-width:310px;margin:auto}.estimate-form{position:relative;max-width:720px;margin:36px auto 0;padding:32px;border:1px solid var(--line);border-radius:12px;background:#fff}.form-mode{color:var(--muted);font-size:15px;max-width:560px;margin:0 auto 26px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;text-align:left}.estimate-form label{display:block;font-size:15px;font-weight:650;text-align:left}.estimate-form label span{font-size:12px;font-weight:400;color:var(--muted)}.estimate-form input,.estimate-form select,.estimate-form textarea{display:block;width:100%;min-width:0;border:1px solid #a8b8ac;border-radius:6px;padding:12px;margin-top:7px;font:400 16px/1.5 inherit;font-family:inherit;font-size:16px;background:#fff;color:var(--ink)}.estimate-form textarea{resize:vertical}.estimate-form input:focus,.estimate-form select:focus,.estimate-form textarea:focus{outline:2px solid var(--green);outline-offset:2px}.estimate-form small{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:4px}.full-width{grid-column:1/-1}.form-privacy{font-size:13px;color:var(--muted);margin:22px auto;max-width:540px}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.estimate-form .estimate-button{width:100%}.estimate-form button:focus-visible{outline:3px solid #b0d565;outline-offset:4px}#form-status:not(:empty){margin-top:18px;font-size:15px}.email-draft{margin-top:24px;border-top:1px solid var(--line);padding-top:24px}.email-draft h3{font-size:21px}.email-draft p{font-size:15px;color:var(--muted);margin:12px 0 18px}.email-draft label{margin-top:20px}.copy-button{padding:10px 20px;margin-top:12px;background:#fff;border:1px solid var(--green);color:var(--green);border-radius:6px;cursor:pointer;font:inherit}.prefer-call{margin-top:36px;font-weight:600}#spam-check{margin:12px auto;max-width:100%}.privacy-page{max-width:760px;padding-block:50px 80px}.privacy-page h1{font-size:38px;letter-spacing:-1px}.privacy-page h2{font-size:23px;margin:28px 0 10px}.privacy-page p{margin-top:14px;color:var(--muted)}
@media(max-width:760px){.steps-list{grid-template-columns:1fr;gap:30px}.estimate-form{padding:22px 18px}.form-grid{grid-template-columns:1fr;gap:20px}.estimate-button{font-size:16px;padding-inline:18px}.hero-estimate{width:100%;max-width:400px}.privacy-page h1{font-size:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Homepage actions: calls lead, with the estimate link directly below. */
.hero .call-buttons{margin-top:28px;flex-wrap:nowrap}
.hero .call-button{background:var(--green);color:#fff;border-color:var(--green)}
.hero .call-button:hover{background:var(--green-hover)}
.hero .hero-estimate{display:inline-flex;width:auto;min-height:0;margin-top:16px;padding:0;border:0;border-radius:0;background:transparent;color:var(--green);font-size:16px;text-decoration:underline;text-underline-offset:5px}
.hero .hero-estimate:hover{background:transparent;color:var(--green-hover)}
@media(max-width:760px){.hero .call-buttons{gap:10px}.hero .call-button{flex:1;min-width:0;max-width:230px;padding:13px 9px}.hero .hero-estimate{width:auto}}

/* Before-and-after project scroller. */
.project-showcase{overflow:hidden}
.project-showcase .section-intro{margin-top:14px}
.project-controls{display:none;align-items:center;justify-content:center;gap:14px;margin:28px auto 16px;color:var(--muted);font-size:14px}
.project-controls.is-active{display:flex}
.gallery-arrow{display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--green);font:inherit;font-size:21px;line-height:1;cursor:pointer}
.gallery-arrow:hover{background:var(--mint)}
.gallery-arrow:disabled{opacity:.4;cursor:default}
.gallery-arrow:focus-visible,.project-details-toggle:focus-visible{outline:3px solid #b0d565;outline-offset:3px}
.project-track{display:flex;gap:20px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scroll-padding-inline:8px;padding:0 8px 16px;scrollbar-color:#9ab2a3 #eef2ef;scrollbar-width:thin}
.project-card{flex:0 0 88%;max-width:980px;min-width:0;align-self:flex-start;padding:14px;border:1px solid var(--line);border-radius:12px;background:#fff;text-align:left;scroll-snap-align:start}
.project-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.project-pair figure{position:relative;min-width:0;aspect-ratio:1.52;overflow:hidden;border-radius:7px;background:#eef2ef}
.project-pair figure img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center}
.project-pair figcaption{position:absolute;top:9px;left:9px;margin:0;padding:4px 9px;border-radius:4px;background:rgba(21,27,35,.78);color:#fff;font-size:12px;font-weight:650}
.project-card-copy{padding:15px 4px 2px}
.project-card-copy h3{font-size:22px;letter-spacing:-.4px}
.project-tags{margin-top:5px;color:var(--muted);font-size:14px;line-height:1.5}
.project-details-disclosure{margin-top:10px}
.project-details-toggle{display:inline-flex;align-items:center;gap:7px;padding:0;list-style:none;color:var(--green);font:inherit;font-size:15px;font-weight:650;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.project-details-toggle::-webkit-details-marker{display:none}
.project-details{margin-top:14px;padding:14px;border-radius:8px;background:#f4f8f5}
.project-details>p{margin-bottom:12px;color:var(--muted);font-size:14px}
.project-details .project-pair{gap:8px}
.recognition-service{margin:12px auto 0;color:var(--green);font-weight:650}
.recognition .magazine-summary{margin-top:14px}
@media(max-width:760px){.project-showcase.section{padding-block:54px}.project-controls{margin-top:22px}.project-card{flex-basis:90%;padding:9px}.project-pair{gap:7px}.project-pair figure{aspect-ratio:1.15}.project-pair figcaption{top:7px;left:7px;padding:3px 7px;font-size:11px}.project-card-copy{padding:12px 3px 2px}.project-card-copy h3{font-size:19px}.project-tags{font-size:13px}.project-details{padding:10px}}

/* Landscape material showcase and expanded project galleries. */
.landscape-showcase{background:#f5f8f5;text-align:center}
.landscape-showcase .section-intro{max-width:700px;margin:14px auto 28px}
.landscape-accent,.project-heading-accent{color:var(--green)}
.landscape-example-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.landscape-example{position:relative;overflow:hidden;aspect-ratio:1.22;border-radius:10px;background:#e6ece7;box-shadow:0 8px 22px rgba(21,27,35,.08)}
.landscape-example img{width:100%;height:100%;object-fit:cover}
.landscape-example figcaption{position:absolute;inset:auto 0 0;padding:42px 14px 13px;background:linear-gradient(transparent,rgba(10,18,13,.76));color:white;text-align:left;font-size:20px;font-weight:700;letter-spacing:-.2px}
.project-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.project-photo-grid figure{min-width:0;aspect-ratio:1.45;overflow:hidden;border-radius:7px;background:#eef2ef}
.project-photo-grid img{width:100%;height:100%;object-fit:cover;object-position:center}
.project-details .project-photo-grid{gap:8px;margin-bottom:12px}
.portrait-pair figure{aspect-ratio:.88}
@media(max-width:760px){.landscape-showcase.section{padding-block:54px}.landscape-showcase .section-intro{margin-bottom:20px}.landscape-example-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.landscape-example{aspect-ratio:1.06;border-radius:8px}.landscape-example figcaption{font-size:17px;padding:35px 10px 10px}.project-photo-grid{gap:7px}.project-photo-grid figure{aspect-ratio:1.15}.project-details .project-photo-grid{gap:7px}.portrait-pair figure{aspect-ratio:.78}}

/* Service disclosures and project-title accents. */
.green-accent,.project-title-accent{color:var(--green)}
.service-more{margin-top:10px;text-align:left}
.service-more summary{display:flex;align-items:center;gap:8px;width:max-content;max-width:100%;list-style:none;color:var(--green);font-size:15px;font-weight:650;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.service-more summary::-webkit-details-marker{display:none}
.service-more summary::after{content:"⌄";display:inline-block;font-size:18px;line-height:1;text-decoration:none;transition:transform .18s ease}
.service-more[open] summary::after{transform:rotate(180deg)}
.service-more summary:focus-visible{outline:3px solid #b0d565;outline-offset:4px;border-radius:2px}
.service-more>ul{margin:7px 0 0!important}
.service-more>ul li:first-child{border-top:1px solid var(--line)}

/* Keep every project tile the same square size in the horizontal gallery. */
.project-heading-second-line{display:inline-block}
.project-card{width:min(80vw,640px);max-width:640px;flex:0 0 min(80vw,640px);aspect-ratio:1;display:flex;flex-direction:column;gap:0}
.project-card>.project-pair,.project-card>.project-photo-grid{width:100%;flex:1 1 0;min-height:0}
.project-card>.project-pair{grid-template-rows:minmax(0,1fr)}
.project-card>.project-photo-grid{grid-template-rows:repeat(2,minmax(0,1fr))}
.project-card>.project-pair>figure,.project-card>.project-photo-grid>figure{height:100%;min-height:0;aspect-ratio:auto}
.project-card-copy{flex:0 0 auto;padding:12px 4px 2px}
.project-card-copy h3{font-size:clamp(17px,2vw,21px);line-height:1.18}
.project-card-copy .project-tags{font-size:13px;line-height:1.4}
.project-card-copy .project-details-disclosure{margin-top:7px}
.project-details .project-photo-grid{grid-template-rows:none}

/* Subtle, touch-friendly image enlargement controls. */
.has-image-view{position:relative}
.image-view-trigger{position:absolute;right:9px;bottom:9px;z-index:4;display:inline-flex;align-items:center;justify-content:center;min-width:48px;min-height:36px;padding:6px 12px;border:1px solid rgba(255,255,255,.5);border-radius:999px;background:rgba(21,27,35,.72);color:#fff;font:600 12px/1 inherit;font-family:inherit;font-size:12px;letter-spacing:.01em;backdrop-filter:blur(6px);cursor:pointer;transition:background .15s ease,opacity .15s ease}
.image-view-media{position:relative;display:block;width:100%;height:100%;overflow:hidden;border-radius:inherit}
.image-view-media>img{display:block;width:100%;height:100%;border-radius:inherit}
.hero .image-view-media{aspect-ratio:1.92;border-radius:10px}
.image-view-trigger:hover{background:rgba(21,27,35,.92)}
.image-view-trigger:focus-visible{outline:3px solid #b0d565;outline-offset:3px}
.image-viewer{width:min(92vw,1100px);max-width:92vw;max-height:92dvh;padding:0;border:0;border-radius:12px;background:#111;color:#fff;overflow:visible}
.image-viewer::backdrop{background:rgba(8,14,11,.82);backdrop-filter:blur(4px)}
.image-viewer-panel{position:relative;padding:12px}
.image-viewer-close{position:absolute;top:20px;right:20px;z-index:2;min-height:42px;padding:8px 13px;border:1px solid rgba(255,255,255,.45);border-radius:999px;background:rgba(21,27,35,.8);color:#fff;font:600 14px/1 inherit;font-family:inherit;cursor:pointer}
.image-viewer-close:focus-visible{outline:3px solid #b0d565;outline-offset:3px}
.image-viewer figure{display:flex;flex-direction:column;align-items:center;gap:9px;margin:0}
.image-viewer img{width:auto;max-width:100%;max-height:calc(92dvh - 70px);object-fit:contain;border-radius:6px}
.image-viewer figcaption{max-width:100%;color:#fff;text-align:center;font-size:13px}

/* Project steps use clear icons and directional cues. */
.steps-list li{position:relative;text-align:center}
.step-icon{display:grid;place-items:center;width:62px;height:62px;margin:0 auto 15px;border-radius:50%;background:var(--mint);color:var(--green)}
.step-icon svg{width:29px;height:29px;stroke:currentColor;stroke-width:1.7}
.steps-list li:not(:last-child)::after{content:"→";position:absolute;top:9px;right:-31px;color:var(--green);font-size:26px;font-weight:400;line-height:1}
.recognition-caption{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:5px 14px}
.recognition-service{margin:0;color:var(--green);font-size:14px;font-weight:650}
@media(max-width:760px){
 .service-more{margin:8px auto 0;text-align:center}
 .service-more summary{margin-inline:auto}
 .project-card{width:min(84vw,640px);max-width:640px;flex-basis:min(84vw,640px);padding:9px}
 .project-card-copy{padding:10px 3px 2px}
 .project-card-copy h3{font-size:clamp(16px,4.6vw,19px)}
 .project-card-copy .project-tags{font-size:12px}
 .image-view-trigger{right:7px;bottom:7px;min-width:44px;min-height:36px;padding:6px 10px}
 .image-viewer{width:96vw;max-width:96vw;max-height:92dvh;border-radius:8px}
 .image-viewer-panel{padding:8px}
 .image-viewer-close{top:14px;right:14px}
 .image-viewer img{max-height:calc(92dvh - 62px)}
 .hero .image-view-media{aspect-ratio:1.2;border-radius:6px}
 .steps-list{grid-template-columns:1fr;gap:54px}
 .steps-list li:not(:last-child)::after{content:"↓";top:auto;right:auto;bottom:-43px;left:50%;transform:translateX(-50%);font-size:24px}
}

/* Keep disclosure and step arrows decorative to assistive technology. */
.service-more summary::after{content:"";width:7px;height:7px;margin-left:1px;border-right:2px solid var(--green);border-bottom:2px solid var(--green);transform:rotate(45deg) translateY(-2px);text-decoration:none}
.service-more[open] summary::after{transform:rotate(225deg) translateY(-1px)}
.steps-list li:not(:last-child)::after{content:none}
.step-arrow{position:absolute;top:9px;right:-31px;color:var(--green);font-size:26px;line-height:1}
@media(max-width:760px){.step-arrow{top:auto;right:auto;bottom:-43px;left:50%;transform:translateX(-50%) rotate(90deg);font-size:24px}}

.image-view-trigger{font-family:inherit;font-size:12px;font-weight:600;line-height:1}
.image-viewer-close{font-family:inherit;font-size:14px;font-weight:600;line-height:1}
