/* /services/websites.css */
/* Websites: real work leads; shared mockups and motion retain their own owners. */
.websites-page .service-hero-grid{grid-template-columns:.9fr 1.1fr;gap:4%;padding:25px 0 65px;align-items:start}
.websites-page .service-display{font-size:clamp(68px,6.8vw,124px);line-height:1.08;letter-spacing:-.015em}
.website-opening-proof{min-width:0;position:relative;padding-top:0}
.website-proof-label{display:block;padding-left:5%;margin-bottom:4px;color:var(--cf-muted)}
.website-opening-proof .cf-project{margin:0}
.websites-page .website-opening-proof .cf-project-frame+.cf-project-caption{padding-top:14px}
.websites-page .website-opening-proof .cf-project-caption .project-card-title{font-size:clamp(30px,2.9vw,48px);line-height:1.2}
.website-opening-proof .cf-project-caption p{font-size:10px;line-height:1.6}
.website-opening-note{padding:0 5%;margin-top:20px;color:var(--cf-muted);font-size:13px;max-width:620px}
.website-opening-note strong{display:block;font-weight:500;color:var(--cf-ink);font-size:16px;margin-bottom:8px}
.website-directions{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--cf-line);margin-bottom:0}
.website-directions>a{display:flex;align-items:center;gap:18px;padding:29px 8% 29px 0;border-bottom:1px solid var(--cf-line);min-height:110px}
.website-directions>a+a{padding-left:8%;border-left:1px solid var(--cf-line)}
.website-directions>a>span{font:12px var(--cf-mono);color:var(--service-accent)}
.website-directions strong{display:block;font-size:17px;font-weight:500;line-height:1.3}
.website-directions small{display:block;font-size:12px;line-height:1.5;color:var(--cf-muted);margin-top:7px}
.website-directions b{font-size:26px;color:var(--service-accent);font-weight:400;margin-left:auto}
.website-directions a:hover strong{color:var(--service-accent)}
.websites-page .service-proof{margin-top:65px;border-block:1px solid var(--cf-line)}
.websites-page .service-proof-feature{margin-bottom:80px}
.website-options .service-capability{scroll-margin-top:130px}
.website-foundations{position:relative;padding-block:clamp(65px,8vw,140px);border-block:1px solid var(--cf-line);background:linear-gradient(110deg,color-mix(in srgb,var(--service-accent) 6%,var(--cf-surface-deep)),var(--cf-surface-deep) 65%)}
.website-foundation-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:start}
.website-foundation-heading h2{font:500 clamp(46px,5vw,90px)/1.13 var(--cf-display);text-transform:uppercase;letter-spacing:-.015em;margin-top:28px}
.website-foundation-heading h2 em{color:var(--service-accent)}
.website-foundation-heading>p{max-width:460px;font-size:17px;color:var(--cf-muted);margin-top:27px}
.website-foundation-sequence{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:440px;margin-top:55px;padding-block:22px;border-block:1px solid color-mix(in srgb,var(--service-accent) 28%,var(--cf-line));font:12px var(--cf-mono)}
.website-foundation-sequence i{color:var(--service-accent);font:20px var(--cf-body)}
.website-foundation-list article{display:grid;grid-template-columns:25px 1fr;gap:20px;padding:27px 0;border-top:1px solid var(--cf-line)}
.website-foundation-list article:first-child{padding-top:0;border-top:0}
.website-foundation-list article>span{font:11px/2 var(--cf-mono);color:var(--service-accent)}
.website-foundation-list h3{font-size:21px;line-height:1.35;font-weight:500}
.website-foundation-list p{font-size:15px;color:var(--cf-muted);margin-top:12px}
.websites-page .service-technology{padding-top:0;border-top:0}
.websites-page .service-tech-list a{margin-right:25px;min-height:44px;padding-block:12px}
.websites-page .service-investment{border-radius:0;position:relative;border-top:3px solid var(--service-accent)}
.websites-page .service-closing h2{font-size:clamp(65px,7.5vw,132px)}
@media(min-width:801px) and (max-width:1100px){.website-directions>a{gap:12px}.website-directions strong{font-size:15px}.website-directions small{font-size:11px}.websites-page .service-display{font-size:6.8vw}.website-opening-note{font-size:12px}.website-opening-note strong{font-size:14px}}
@media(max-width:800px){.websites-page .service-hero-grid{grid-template-columns:1fr;padding-top:10px;gap:22px;padding-bottom:35px}.websites-page .service-display{font-size:clamp(62px,11.5vw,100px)}.website-opening-proof{max-width:640px;width:100%;margin-inline:auto;padding-top:12px}.websites-page .website-opening-proof .cf-project-caption .project-card-title{font-size:36px}.website-opening-note{padding-inline:3%;max-width:none}.website-directions{grid-template-columns:1fr}.website-directions>a,.website-directions>a+a{padding:22px 0;min-height:88px;border-left:0;gap:24px}.website-directions small{font-size:13px}.website-foundation-grid{grid-template-columns:1fr;gap:50px}.website-foundation-heading h2{font-size:clamp(48px,9vw,72px)}.website-foundation-heading>p{max-width:550px}.website-foundation-sequence{margin-top:30px}.website-foundation-list article:first-child{border-top:1px solid var(--cf-line);padding-top:27px}.websites-page .service-proof{margin-top:55px}.websites-page .service-proof-feature{margin-bottom:55px}}
@media(max-width:520px){.websites-page .service-primary{gap:24px;font-size:14px;padding:14px 22px}.websites-page .service-display{font-size:clamp(42px,13.4vw,72px)}.websites-page .service-offer{font-size:11px}.websites-page .service-lead{margin-top:21px}.websites-page .service-hero-grid{gap:12px}.website-proof-label{font-size:9px}.websites-page .website-opening-proof .cf-project-caption .project-card-title{font-size:32px}.website-opening-proof .cf-project-caption p{font-size:9px}.website-opening-note{font-size:13px;margin-top:15px}.website-opening-note strong{font-size:15px}.website-foundation-heading h2{font-size:clamp(40px,10.5vw,55px)}.website-foundation-heading>p{font-size:16px}.website-foundation-sequence{font-size:10px}.website-foundation-list article{gap:13px}.website-foundation-list h3{font-size:19px}.websites-page .service-closing h2{font-size:clamp(48px,11.5vw,64px)}}
@media(forced-colors:active){.website-foundations{background:Canvas}.website-directions a,.website-foundation-sequence{border-color:CanvasText}.website-directions a:focus-visible{outline-color:Highlight}}

/* /proof-details.css */
/* A native-scroll signal path. Complete static artwork is the fallback. */
[data-process-path]{--process-progress:1;position:relative;isolation:isolate}
.service-process-list:before,.service-process-list:after{content:"";position:absolute;left:31px;top:35px;bottom:35px;width:1px;z-index:-1;background:var(--cf-line)}
.service-process-list:after{background:var(--service-accent);transform:scaleY(var(--process-progress));transform-origin:top;box-shadow:0 0 14px color-mix(in srgb,var(--service-accent) 40%,transparent)}
.service-process-list li:before{display:grid;place-items:center;width:55px;height:55px;border:1px solid color-mix(in srgb,var(--service-accent) 40%,var(--cf-line));border-radius:50%;background:var(--cf-bg,#0b111b);font-size:28px;margin-left:4px}
/* Markers identify details without changing authentic pixels or blocking zoom. */
.reveal-art.proof-annotated{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,25%);gap:clamp(28px,4vw,65px);align-items:center;--proof-arrival:1}
.proof-annotation-lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.proof-annotation-lines path{fill:none;stroke:var(--service-accent,#57d8f5);stroke-width:1;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--proof-arrival));opacity:.75}
.proof-annotation-marker{position:absolute;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;border:1px solid var(--service-accent,#57d8f5);background:#0b1621;color:#e8f2f8;transform:translate(-50%,-50%);font:11px var(--cf-mono);pointer-events:none}
.proof-annotation-notes{list-style:none;margin:0;padding:0;display:grid;gap:clamp(24px,4vw,56px)}
.proof-annotation-notes li{display:flex;gap:14px;align-items:baseline;border-top:1px solid var(--cf-line);padding-top:18px}
.proof-annotation-notes li>span{color:var(--service-accent,#57d8f5);font:11px var(--cf-mono)}
.proof-annotation-notes strong{font-weight:500;font-size:17px;line-height:1.4}
.proof-annotation-notes p{font-size:14px;line-height:1.65;color:var(--cf-muted,#a7b8bd);margin:9px 0 0}
.case-relationship-map{width:calc(100% - var(--case-gutter,24px)*2);max-width:var(--case-width,1560px);margin:clamp(48px,7vw,110px) auto;padding:clamp(35px,4vw,65px) clamp(24px,4.5vw,75px);border-block:1px solid var(--cf-line)}
.relationship-map-heading{display:grid;grid-template-columns:1fr 1fr;gap:20px 6%;margin-bottom:48px}
.relationship-map-heading .eyebrow{grid-column:1/-1}.relationship-map-heading h2{font:clamp(38px,4vw,66px)/1.1 var(--cf-display);margin:0;max-width:16ch}.relationship-map-heading>p{color:var(--cf-muted,#a7b8bd);font-size:16px;line-height:1.7;align-self:end;max-width:48ch;margin:0}
.relationship-map-path{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;padding:0;margin:0}
.relationship-map-path:before,.relationship-map-path:after{content:"";position:absolute;top:22px;left:22px;right:22px;height:1px;background:var(--cf-line);z-index:-1}
.relationship-map-path:after{background:var(--service-accent,#57d8f5);transform:scaleX(var(--process-progress));transform-origin:left}
.relationship-map-path li{min-width:0}.relationship-map-number{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--service-accent,#57d8f5);border-radius:50%;background:#0b1621;color:var(--service-accent,#57d8f5);font:12px var(--cf-mono)}
.relationship-map-path h3{font:500 21px/1.4 var(--cf-body);margin:22px 0 12px}.relationship-map-path p{font-size:14px;line-height:1.7;color:var(--cf-muted,#a7b8bd)}.relationship-map-note{font:11px/1.7 var(--cf-mono);color:var(--cf-muted,#a7b8bd);max-width:75ch;margin:30px 0 0}
@media(max-width:950px){.reveal-art.proof-annotated{grid-template-columns:1fr;gap:22px}.proof-annotation-notes{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.proof-annotation-lines,.proof-annotation-marker{display:none}.relationship-map-path{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:30px}.relationship-map-path:before,.relationship-map-path:after{display:none}}
@media(max-width:800px){.service-process-list:before,.service-process-list:after{left:16px}.service-process-list li:before{width:32px;height:32px;font-size:20px;margin:0}.case-relationship-map{width:calc(100% - 40px)}.relationship-map-heading{grid-template-columns:1fr;gap:20px;margin-bottom:30px}.relationship-map-heading .eyebrow{grid-column:auto}.relationship-map-heading>p{font-size:15px}}
@media(max-width:520px){.proof-annotation-notes{grid-template-columns:1fr;gap:15px}.proof-annotation-notes strong{font-size:16px}.relationship-map-path{grid-template-columns:1fr;gap:26px}.relationship-map-path li{display:grid;grid-template-columns:44px 1fr;gap:0 18px}.relationship-map-number{grid-row:1/3}.relationship-map-path h3{font-size:19px;margin:0 0 7px}.relationship-map-path p{grid-column:2;margin:0}.relationship-map-path:before,.relationship-map-path:after{display:block;top:22px;bottom:22px;left:22px;right:auto;height:auto;width:1px}.relationship-map-path:after{transform:scaleY(var(--process-progress));transform-origin:top}}
@media(prefers-reduced-motion:reduce),(forced-colors:active){[data-process-path]{--process-progress:1!important}.proof-annotated{--proof-arrival:1!important}.service-process-list:after{box-shadow:none}.proof-annotation-lines{display:none}}
html[data-motion=off] [data-process-path],html[data-case-motion=off] [data-process-path]{--process-progress:1!important}html[data-motion=off] .proof-annotated,html[data-case-motion=off] .proof-annotated{--proof-arrival:1!important}

/* /site-utilities.css */
.page-tools,.selection-tools{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-top:24px;font:400 13px/1.6 var(--cf-body);color:var(--cf-muted)}
.page-tools[hidden],.selection-tools[hidden],.cf-print-brief{display:none}
.projects-filter-actions .selection-tools{margin-top:0}.opening-bottom .page-tools{grid-column:1/-1}
.page-tools button,.selection-tools button{min-height:44px;padding:10px 20px;border:1px solid var(--cf-line);border-radius:999px;background:transparent;color:var(--cf-ink);font:500 14px/1.5 var(--cf-body);cursor:pointer;transition:border-color .2s,color .2s}
.page-tools button:hover,.selection-tools button:hover{border-color:var(--cf-light);color:var(--cf-light)}
.page-tools button:focus-visible,.selection-tools button:focus-visible{outline:2px solid var(--cf-light);outline-offset:4px}
.buyer-guidance{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,100px);padding-block:clamp(48px,7vw,110px);border-top:1px solid var(--cf-line)}
.buyer-guidance h2{font:500 clamp(38px,4.2vw,70px)/1.08 var(--cf-display);text-transform:uppercase;margin:22px 0}
.buyer-guidance p{font:400 16px/1.75 var(--cf-body);color:var(--cf-muted);max-width:56ch}
.buyer-guidance-items{display:grid;gap:26px}.buyer-guidance-items h3{font:600 20px/1.4 var(--cf-body);margin:0 0 8px}.buyer-guidance-items p{margin:0}.buyer-guidance-items>a{justify-self:start;min-height:44px;display:inline-flex;align-items:center;gap:20px;border-bottom:1px solid var(--cf-line);font:500 14px/1.5 var(--cf-body);color:var(--cf-ink)}
@media(max-width:760px){.buyer-guidance{grid-template-columns:1fr}.page-tools-help{max-width:30ch}}
@media(prefers-reduced-motion:reduce){.page-tools button,.selection-tools button{transition:none}}
@media print{
 @page{size:A4;margin:14mm}
 html:has(.cf-print-brief),body:has(.cf-print-brief){background:#fff!important;color:#111!important;color-scheme:light!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;overflow:visible!important;transform:none!important;opacity:1!important;filter:none!important}
 body:has(.cf-print-brief)>*{display:none!important}
 body:has(.cf-print-brief)>.cf-print-brief{display:block!important;position:static!important;width:auto!important;max-width:none!important;margin:0!important;padding:0!important;visibility:visible!important;color:#111!important;background:#fff!important;font:10pt/1.5 var(--cf-body),sans-serif}
 body:has(.cf-print-brief)::before,body:has(.cf-print-brief)::after{display:none!important}
 .cf-print-brief *{transform:none!important;opacity:1!important;filter:none!important;animation:none!important;transition:none!important;color:#111!important;box-shadow:none!important}
 .cf-print-brief header{border-bottom:1px solid #aaa;padding-bottom:5mm;margin-bottom:5mm}.cf-print-brief header>strong{font:8pt/1.5 var(--cf-mono),monospace;letter-spacing:.08em}
 .cf-print-brief .cf-print-title{font:500 30pt/1.1 var(--cf-display),sans-serif;text-transform:uppercase;margin:3mm 0}
 .cf-print-brief h2{font:600 12pt/1.3 var(--cf-body),sans-serif;margin:0 0 2mm}.cf-print-brief p{margin:0 0 3mm}.cf-print-brief section{margin:5mm 0;break-inside:avoid}
 .cf-print-brief figure{margin:3mm 0 5mm;break-inside:avoid}.cf-print-brief img{display:block;max-width:100%;width:auto;height:auto;max-height:58mm;object-fit:contain}
 .cf-print-brief li{margin:0 0 2mm}.cf-print-brief ul,.cf-print-brief ol{padding-left:5mm;margin:0}
 .cf-print-brief footer{border-top:1px solid #aaa;margin-top:5mm;padding-top:4mm;font-size:8pt;overflow-wrap:anywhere}.cf-print-brief a{text-decoration:underline}
}
