/* The existing SSP palette, typography, logo and controls remain authoritative. */
[data-websites-page] section{scroll-margin-top:100px}
.web-hero{padding:70px 0 82px}
.web-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:54px;align-items:center}
.web-hero h1{font-size:clamp(34px,3.8vw,58px);line-height:1.08;letter-spacing:-.035em;margin:0;max-width:100%;text-wrap:balance}
.web-intro{font-size:18px;line-height:1.65;max-width:52ch;margin:30px 0 22px}
.web-entry-price{font-size:18px;line-height:1.5;margin:0 0 25px}
.web-entry-price strong{font-size:24px;font-family:"Bricolage Grotesque","Instrument Sans",sans-serif;font-weight:800}
.web-entry-price span,.web-free{font-size:15px;line-height:1.6;color:var(--muted)}
.web-hero .actions{align-items:center;gap:20px}
.web-free{margin-top:20px;max-width:56ch}
.web-text-link{display:inline-flex;align-items:center;gap:7px;color:var(--ink);font-weight:700;text-underline-offset:5px;line-height:1.5}
.web-hero-work{min-width:0}
.web-hero-work figure{margin:0;background:var(--surface);border:2px solid var(--line);border-radius:18px;overflow:hidden}
.web-hero-work img{display:block;width:100%;height:auto}
.web-hero-work figcaption{padding:14px 17px;font-size:14px;line-height:1.5}
.web-hero-work .web-own-preview{width:78%;margin:22px 0 0 auto}
.web-proof,.web-pricing,.web-process,.web-faq{padding:80px 0}
.web-proof{background:var(--surface)}
.web-section-intro{max-width:74ch;margin:22px 0 36px;line-height:1.7;font-size:17px}
.web-case{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:44px;align-items:center;margin-top:40px}
.web-case img{display:block;width:100%;height:auto;border-radius:16px}
.web-case h3{font-size:clamp(27px,3vw,38px);line-height:1.12;margin:0 0 16px}
.web-case p{font-size:17px;line-height:1.65;margin:0 0 18px}
.web-case-reverse{margin-top:60px}
.web-case-reverse img{order:2}
.web-packages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.web-package{display:flex;flex-direction:column;min-width:0;padding:27px;background:var(--surface);border:2px solid var(--line);border-radius:22px}
.web-package h3{font-size:27px;line-height:1.15;margin:0 0 12px}
.web-package-tag{margin:0 0 25px;font-size:16px;color:var(--muted);line-height:1.5}
.web-package-price{font-family:"Bricolage Grotesque","Instrument Sans",sans-serif;font-weight:800;font-size:clamp(26px,2.5vw,34px);line-height:1.2;margin:0 0 23px;letter-spacing:-.025em}
.web-package-price small{font-family:"Instrument Sans",sans-serif;font-weight:400;font-size:14px;display:block;margin-top:10px;letter-spacing:0;line-height:1.5}
.web-package>p:not(.web-package-price):not(.web-package-tag){font-size:16px;line-height:1.6}
.web-package ul{padding-left:21px;line-height:1.65;font-size:16px;flex:1;margin:12px 0 28px}
.web-package li+li{margin-top:10px}
.web-package .btn{width:100%;justify-content:center;white-space:normal;text-align:center;font-size:15px;line-height:1.45;padding:12px 13px;min-height:48px}
.web-terms{margin:28px 0;line-height:1.7;font-size:16px;max-width:98ch}
.web-undecided{margin-top:35px;padding:30px 34px;background:var(--surface);border-radius:22px;display:grid;grid-template-columns:1fr auto;gap:12px 35px;align-items:center}
.web-undecided h3{font-size:26px;line-height:1.2;margin:0}
.web-undecided p{margin:0;line-height:1.6;font-size:16px;max-width:66ch}
.web-undecided .btn{grid-column:2;grid-row:1 / 3}
.web-process{background:var(--surface)}
.web-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;padding-left:22px;margin:35px 0 0}
.web-steps li{padding-left:7px;font-size:18px}
.web-steps h3{font-size:24px;line-height:1.2;margin:0 0 18px}
.web-steps p{font-size:17px;line-height:1.7}
.web-faq-list{margin-top:30px;max-width:900px}
.web-faq details{padding:20px 24px;background:var(--surface);border-radius:14px;margin-top:12px}
.web-faq summary{font-size:19px;font-weight:700;line-height:1.45;cursor:pointer;min-height:28px}
.web-faq details p{font-size:17px;line-height:1.7;max-width:70ch;margin:18px 0 0}
[data-websites-page] .inquiry-section .eyebrow{display:none}
[data-websites-page] .inquiry-section .lede{font-size:18px;color:var(--ink)}
.form-details{margin:0 0 24px}
.form-details summary{font-weight:700;cursor:pointer;line-height:1.5;min-height:44px;display:list-item;padding:10px 0}
.form-details[open] summary{margin-bottom:20px}
.form-package-summary{font-size:15px;line-height:1.6;color:var(--ink);margin:0 0 22px}
.form-promise{font-size:14px;line-height:1.6;color:var(--muted);margin:16px 0 0}
[data-websites-page] :is(.btn,.web-text-link){transition:transform 160ms cubic-bezier(.23,1,.32,1)}
[data-websites-page] .btn:active{transform:scale(.98)}
[data-websites-page] :is(a,summary,button,select):focus-visible{outline:3px solid var(--c-et);outline-offset:4px}
@media(hover:hover) and (pointer:fine){[data-websites-page] .web-text-link:hover{transform:translateX(3px)}}
@media(max-width:1100px){.web-hero-grid{gap:32px}.web-packages{grid-template-columns:1fr}.web-package{display:grid;grid-template-columns:1fr 1fr;gap:10px 35px}.web-package h3,.web-package-tag,.web-package-price{grid-column:1}.web-package ul{grid-column:2;grid-row:1 / 5}.web-package .btn{grid-column:1 / -1;justify-self:start;width:auto}.web-undecided{grid-template-columns:1fr}.web-undecided .btn{grid-column:auto;grid-row:auto;justify-self:start}}
@media(max-width:800px){.web-hero{padding:40px 0 55px}.web-hero-grid{grid-template-columns:1fr}.web-hero-work{display:grid;grid-template-columns:1.15fr 1fr;gap:16px;align-items:center}.web-hero-work .web-own-preview{width:100%;margin:0}.web-case{gap:28px}.web-steps{grid-template-columns:1fr;gap:24px}.web-steps p{margin-bottom:0}.web-proof,.web-pricing,.web-process,.web-faq{padding:58px 0}}
@media(max-width:600px){.web-hero h1{font-size:34px}.web-intro{font-size:17px;margin-top:24px}.web-hero .actions{align-items:flex-start;flex-direction:column;gap:17px}.web-hero .btn{width:100%;justify-content:center;font-size:15px}.web-hero-work{display:block}.web-hero-work .web-own-preview{width:78%;margin:18px 0 0 auto}.web-case{grid-template-columns:1fr;gap:25px}.web-case-reverse img{order:0}.web-case-reverse{margin-top:42px}.web-package{display:flex;padding:24px}.web-package .btn{width:100%}.web-undecided{padding:25px}.web-undecided .btn{font-size:15px;white-space:normal;text-align:center}.web-faq details{padding:20px}.web-faq summary{font-size:17px}.web-faq details p{font-size:16px}}
@media(prefers-reduced-motion:reduce){[data-websites-page] *,[data-websites-page] *::before,[data-websites-page] *::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}[data-websites-page] .btn:active,[data-websites-page] .web-text-link:hover{transform:none}}

/* Free text uses the existing pale-lilac canvas colours; panels keep SSP dark ink. */
body[data-websites-page]{--web-canvas-ink:#152836;--web-canvas-muted:#5A6B76}
[data-websites-page] .web-hero-copy,[data-websites-page] .web-section-intro,[data-websites-page] .web-terms,[data-websites-page] .web-case{color:var(--web-canvas-ink)}
[data-websites-page] .web-hero-copy h1,[data-websites-page] .web-case h3{color:var(--web-canvas-ink);text-shadow:var(--depth-canvas-title)}
[data-websites-page] .web-hero-copy :is(.web-intro,.web-entry-price,.web-text-link){color:var(--web-canvas-ink)}
[data-websites-page] .web-hero-copy :is(.web-free,.web-entry-price span){color:var(--web-canvas-muted)}
[data-websites-page] .web-hero-copy :is(p,.web-text-link),[data-websites-page] .web-section-intro,[data-websites-page] .web-terms,[data-websites-page] .web-case p{ text-shadow:0 -1px 0 rgba(255,255,255,.65),0 1px 1px rgba(57,44,84,.17)}
[data-websites-page] .web-proof,[data-websites-page] .web-process{background:transparent}
[data-websites-page] .web-steps{color:var(--web-canvas-ink)}
[data-websites-page] .web-steps h3{text-shadow:var(--depth-canvas-title)}
[data-websites-page] .web-case .web-text-link{color:var(--web-canvas-ink)}
.web-text-link .ic{width:20px;height:20px;flex:0 0 20px}
.web-entry-price strong{white-space:nowrap}

/* Canvas copy remains readable beside the dark form, in both supported themes. */
[data-websites-page] .inquiry-section .lede,[data-websites-page] .inquiry-aside :is(h3,ol,p,a){color:var(--web-canvas-ink)}
[data-websites-page] .web-hero-copy :is(.web-free,.web-entry-price span){color:var(--web-canvas-ink)}

/* Additional service pages retain the approved SSP canvas and controls. */
.srv-second-price{font-size:16px;line-height:1.6;margin:-10px 0 24px;color:var(--web-canvas-ink)}
.srv-second-price strong{white-space:nowrap}
.srv-project-mark{object-fit:contain;max-height:220px}
.web-hero-work .srv-project-mark{max-height:180px}
.srv-packages--one{grid-template-columns:1fr}
.srv-packages--two{grid-template-columns:repeat(2,minmax(0,1fr))}
.srv-packages--one .web-package{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr);gap:12px 45px}
.srv-packages--one .web-package h3,.srv-packages--one .web-package-price,.srv-packages--one .web-package>p{grid-column:1}
.srv-packages--one .web-package ul{grid-column:2;grid-row:1 / 5;margin-top:0}
.srv-packages--one .web-package .btn{grid-column:1 / -1;width:auto;justify-self:start}
.srv-use{padding:64px 0;color:var(--web-canvas-ink)}
.srv-use dl{margin:32px 0 0}
.srv-use dl>div{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:35px;padding:24px 0}
.srv-use dt{font-size:23px;font-weight:700;line-height:1.35}
.srv-use dd{font-size:17px;line-height:1.7;margin:0;max-width:68ch}
.srv-related{padding-top:45px;padding-bottom:65px}
.srv-related :is(.h2,.web-text-link){color:var(--web-canvas-ink)}
.srv-related .h2{text-shadow:var(--depth-canvas-title)}
.srv-related ul{display:flex;flex-wrap:wrap;gap:18px 35px;list-style:none;padding:0;margin:28px 0 0}
@media(max-width:1100px){.srv-packages--two{grid-template-columns:1fr}}
@media(max-width:600px){.srv-packages--one .web-package{display:flex}.srv-packages--one .web-package .btn{width:100%}.srv-use dl>div{grid-template-columns:1fr;gap:12px;padding:20px 0}.srv-use{padding:40px 0}.srv-second-price{margin-top:0}}
