/* Service layouts and clearly identified examples. Shared navigation and controls live in styles.css. */
.service-page,.not-found-page{background:#f6f7f8;color:#101318}
.service-opening{background:#101318;color:#f6f7f8}
.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding-top:30px;color:#56616d;font-size:13px;line-height:1.6}
.breadcrumb a{color:#101318;display:inline-flex;align-items:center;min-height:32px}
.service-hero{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);align-items:center;gap:clamp(40px,5vw,76px);padding:48px 0 76px}
.service-hero>div{min-width:0}
.service-hero h1{font-family:Manrope,Arial,sans-serif;font-size:clamp(55px,4.7vw,70px);font-weight:500;line-height:1.08;letter-spacing:-.047em;max-width:610px;margin:24px 0}
.service-intro{max-width:510px;font-size:16px;line-height:1.85;color:#56616d}
.service-hero .button{margin-top:30px}
.service-band{padding:56px 0;background:#e9edf1}
.service-band>.wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px 64px;align-items:start}
.service-band .eyebrow{grid-column:1/-1}
.service-band h2,.service-content h2,.service-related h2,.service-contact h2{font-family:Manrope,Arial,sans-serif;font-size:clamp(30px,3.1vw,43px);font-weight:500;line-height:1.2;letter-spacing:-.037em;max-width:600px}
.service-band p:not(.eyebrow){font-size:15px;line-height:1.85;color:#56616d;max-width:600px}
.service-band .text-link{grid-column:2;font-size:14px;justify-self:start}
.service-content{padding-block:76px}
.service-content-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(50px,7vw,100px)}
.service-content .lead{font-size:15px;line-height:1.85;color:#56616d;max-width:370px;margin-top:22px}
.deliverable{margin-bottom:32px}
.deliverable:last-child{margin-bottom:0}
.deliverable h3{font-family:Manrope,Arial,sans-serif;font-size:21px;line-height:1.4;font-weight:600;letter-spacing:-.025em;margin:0 0 10px}
.deliverable p{font-size:15px;line-height:1.85;color:#56616d;max-width:640px;margin:0}
.service-related{padding-block:64px}
.related-links{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:38px;margin-top:30px}
.related-links>a{display:flex;justify-content:space-between;align-items:flex-start;gap:22px;border-top:1px solid #ccd3db;padding-top:24px;min-width:0}
.related-links h3{font-family:Manrope,Arial,sans-serif;font-size:23px;font-weight:500;line-height:1.35;letter-spacing:-.025em;margin:0}
.related-links p{font-size:14px;line-height:1.7;color:#56616d;margin:10px 0 0}
.related-links>a>span{font-size:29px;line-height:1.2;color:#202832;transition:transform .25s ease;flex-shrink:0}
.related-links>a:hover>span{transform:translate(3px,-3px)}
.service-contact{padding-block:58px;background:#202832;color:#f6f7f8}
.service-contact>.wrap{display:flex;justify-content:space-between;align-items:center;gap:50px}
.service-contact h2{max-width:650px}
.service-contact p{font-size:15px;line-height:1.8;max-width:600px;margin:18px 0 0;color:#bbc6d1}
.service-contact .button{flex-shrink:0;background:#f6f7f8;color:#101318}
.service-contact .button:focus-visible{outline-color:#f6f7f8}

/* These are labelled examples, with text that remains readable without motion. */
.service-exhibit{margin:0;min-width:0;padding:26px;background:#d7e0e8;color:#101318}
.exhibit-topline{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:13px;line-height:1.5;font-weight:500}
.exhibit-tag{display:inline-block;padding:6px 9px;background:#ffffff60;font-size:11px;font-weight:600;line-height:1.5}
.exhibit-canvas{padding-block:28px}
.exhibit-caption{font-size:13px;line-height:1.65;color:#56616d;max-width:510px}
.exhibit-web{background:#d7e0e8}
.exhibit-automation{background:#e9edf1}
.exhibit-flow-route{display:flex;flex-direction:column;align-items:center}
.exhibit-node{position:relative;width:100%;max-width:330px;padding:14px 18px;background:#f6f7f8;min-width:0}
.exhibit-node-trigger{background:#f6f7f8}
.exhibit-node-check{background:#d7e0e8}
.exhibit-node-action{background:#101318;color:#f6f7f8}
.exhibit-node-label{display:block;font-size:12px;font-weight:500;line-height:1.5;margin-bottom:6px;color:#56616d}
.exhibit-node strong{display:block;font-size:16px;line-height:1.5;font-weight:600;letter-spacing:-.015em}
.exhibit-node p{font-size:13px;line-height:1.65;margin:5px 0 0;color:#56616d}
.exhibit-node-action .exhibit-node-label,.exhibit-node-action p{color:#bdcbd8}
.exhibit-flow-link{position:relative;width:1px;height:18px;background:#56616d}
.exhibit-flow-link::after{content:'';position:absolute;bottom:1px;left:-3px;width:5px;height:5px;border-right:1px solid #56616d;border-bottom:1px solid #56616d;transform:rotate(45deg)}
.exhibit-flow-review{max-width:330px;margin:20px auto 0;padding-left:14px;border-left:2px solid #202832}
.exhibit-branch-label{display:block;font-size:12px;font-weight:500;line-height:1.6;margin-bottom:9px}
.exhibit-node-review{background:#f6f7f8;padding:13px 15px}
.exhibit-node-review .exhibit-node-label,.exhibit-node-review p{color:#56616d}
.exhibit-ai{background:#e9edf1}
.exhibit-ai-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}
.exhibit-document,.exhibit-extracted{min-width:0;padding:19px 17px;background:#f6f7f8}
.exhibit-panel-label{display:block;font-size:12px;line-height:1.6;font-weight:600;margin-bottom:19px}
.exhibit-document p{font-family:Manrope,Arial,sans-serif;font-size:14px;line-height:1.8;margin:0 0 16px}
.exhibit-document p:last-of-type{margin-bottom:0}
.exhibit-document mark{color:#101318;background:#d7e0e8;box-decoration-break:clone;-webkit-box-decoration-break:clone;padding-inline:2px}
.exhibit-source-note{display:block;font-size:12px;line-height:1.7;color:#56616d;margin-top:20px}
.exhibit-extracted{background:#101318;color:#f6f7f8}
.exhibit-fields{font-size:14px;line-height:1.7;margin:0}
.exhibit-fields>div+div{margin-top:20px}
.exhibit-fields dt{color:#e9edf1;font-size:12px;line-height:1.6}
.exhibit-fields dd{margin:4px 0 0}
.exhibit-fields .exhibit-unresolved{background:#d7e0e8;color:#101318;padding:10px 11px;font-size:13px}
.exhibit-review-note{font-size:13px;line-height:1.7;color:#c4d0db;margin:20px 0 0}

@media(max-width:1050px){
  .service-hero{gap:38px}
  .service-hero h1{font-size:55px}
  .service-exhibit{padding:22px}
  .exhibit-ai-grid{grid-template-columns:1fr}
  .exhibit-document p{font-size:14px;margin-bottom:10px}
}
@media(max-width:900px){
  .service-hero{grid-template-columns:1fr;gap:38px;padding:35px 0 58px}
  .service-hero h1{font-size:clamp(46px,6.7vw,64px);max-width:700px;margin-block:21px}
  .service-intro{max-width:650px}
  .service-exhibit{width:100%;max-width:650px;padding:26px}
  .exhibit-ai-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .service-band>.wrap{gap:22px 38px}
  .service-content-grid{gap:42px}
  .service-contact>.wrap{gap:30px;align-items:flex-start;flex-direction:column}
}
@media(max-width:600px){
  .breadcrumb{font-size:12px;padding-top:23px;gap:10px}
  .service-hero{padding:27px 0 47px;gap:31px}
  .service-hero h1{font-size:46px;line-height:1.12;letter-spacing:-.042em;margin:20px 0}
  .service-intro{font-size:15px;line-height:1.85}
  .service-hero .button{margin-top:25px}
  .service-band{padding-block:39px}
  .service-band>.wrap{display:block}
  .service-band .eyebrow{margin-bottom:15px}
  .service-band h2,.service-content h2,.service-related h2,.service-contact h2{font-size:31px;line-height:1.25;letter-spacing:-.03em}
  .service-band p:not(.eyebrow){font-size:15px;margin-top:20px}
  .service-band .text-link{margin-top:21px}
  .service-content{padding-block:47px}
  .service-content-grid{grid-template-columns:1fr;gap:30px}
  .service-content .lead{font-size:15px;margin-top:18px;max-width:none}
  .deliverable{margin-bottom:27px}
  .deliverable h3{font-size:21px}
  .deliverable p{font-size:15px}
  .service-related{padding-block:45px}
  .related-links{grid-template-columns:1fr;gap:28px;margin-top:26px}
  .related-links>a{padding-top:20px}
  .related-links h3{font-size:22px}
  .related-links p{font-size:14px;margin-top:8px}
  .service-contact{padding-block:42px}
  .service-contact p{font-size:15px}
  .service-contact>.wrap{gap:26px}
  .service-exhibit{padding:22px}
  .exhibit-topline{gap:9px;font-size:12px}
  .exhibit-tag{font-size:11px}
  .exhibit-canvas{padding-block:24px}
  .exhibit-caption{font-size:13px}
  .exhibit-node{padding:14px 16px}
  .exhibit-node p{font-size:13px}
  .exhibit-flow-review{margin-top:18px}
  .exhibit-ai-grid{grid-template-columns:1fr;gap:12px}
  .exhibit-document,.exhibit-extracted{padding:19px 18px}
  .exhibit-document p{font-size:15px;line-height:1.8;margin-bottom:12px}
  .exhibit-source-note{font-size:13px;margin-top:17px}
  .exhibit-fields{font-size:15px}
  .exhibit-review-note{font-size:14px}
}
@media(max-width:360px){
  .service-hero h1{font-size:42px}
  .service-exhibit{padding:18px}
}
@media(prefers-reduced-motion:reduce){
  .related-links>a>span{transition:none}
  .related-links>a:hover>span{transform:none}
  .service-exhibit,.service-content-grid,.service-band .wrap,.service-related{opacity:1!important;transform:none!important}
}

/* The service opening shares the homepage's dark studio surface. */
.service-opening .breadcrumb{color:#9cb4ca}
.service-opening .breadcrumb a{color:#f6f7f8}
.service-opening .breadcrumb a:hover{color:#ff6657}
.service-opening .eyebrow{color:#9cb4ca}
.service-opening .service-intro{color:#bbc6d1}
.service-opening .button,.service-contact .button{background:#ff6657;color:#101318}
.service-opening .button:hover,.service-contact .button:hover{background:#ff8175}
.service-opening .button:focus-visible,.service-contact .button:focus-visible{outline-color:#f6f7f8}
.service-band .text-link{color:#101318;text-decoration:underline;text-underline-offset:5px}
.exhibit-tag{background:#f6f7f8;color:#56616d}
.exhibit-web{background:#202832;color:#f6f7f8;padding:0}
.exhibit-web .exhibit-topline{padding:20px 22px}
.exhibit-web .exhibit-tag{background:#354250;color:#c4d0db}
.exhibit-project-link{display:block;position:relative;overflow:hidden;background:#101318}
.exhibit-project-link img{width:100%;height:auto;aspect-ratio:1410/990;object-fit:cover;transition:transform .45s cubic-bezier(.22,1,.36,1)}
.exhibit-project-link:hover img{transform:scale(1.018)}
.exhibit-project-link:focus-visible{outline:3px solid #ff6657;outline-offset:-3px}
.exhibit-project-action{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 22px;font-size:13px;color:#f6f7f8;background:#202832}
.exhibit-project-action>span{font-size:21px;color:#ff6657;line-height:1}
.exhibit-web .exhibit-caption{padding:0 22px 21px;color:#b8c5d1}
.exhibit-node-action,.exhibit-extracted{background:#202832}
.exhibit-fields dt{color:#9cb4ca}
.exhibit-brand{background:#edf0e7;color:#243c48}
.exhibit-brand .exhibit-tag{background:#dce3d8;color:#243c48}
.exhibit-brand-content{padding-block:28px}
.exhibit-brand-logo{width:154px;height:auto;margin-bottom:30px}
.exhibit-brand-deliverable+.exhibit-brand-deliverable{margin-top:24px}
.exhibit-brand-deliverable strong{font-size:20px;font-weight:600;line-height:1.4;letter-spacing:-.025em;display:block}
.exhibit-brand-deliverable p{font-size:14px;line-height:1.75;margin-top:7px;color:#4b606b}
.exhibit-brand .exhibit-caption{color:#4b606b}

/* Privacy and missing-page content uses the light reading surface. */
.privacy-page{background:#f6f7f8;color:#101318}
.privacy-page .privacy-main,.privacy-page .privacy-footer{color:#101318}
.privacy-page .privacy-eyebrow,.privacy-page .privacy-updated,.privacy-page .privacy-copy p,.privacy-page .privacy-copy li,.privacy-page .privacy-index a,.privacy-page .privacy-footer{color:#56616d}
.privacy-page .privacy-copy strong,.privacy-page .privacy-copy a,.privacy-page .privacy-index a:hover,.privacy-page .privacy-footer a:hover{color:#101318}
.privacy-page .privacy-copy a,.privacy-page .privacy-index a:hover,.privacy-page .privacy-footer a:hover{text-decoration:underline;text-underline-offset:4px}
.privacy-page a:focus-visible{outline-color:#101318}
.privacy-page .site-header a:focus-visible{outline-color:#ff6657}
.not-found-main{padding-block:80px 100px;min-height:58vh}
.not-found-main h1{font-size:clamp(44px,7vw,88px);font-weight:500;line-height:1.08;letter-spacing:-.05em;max-width:800px;margin:28px 0}
.not-found-main>p:not(.eyebrow){max-width:520px;font-size:16px;line-height:1.8;color:#56616d;margin-bottom:32px}
.not-found-main .button{background:#101318;color:#f6f7f8}
.not-found-main .button:hover{background:#202832}
@media(max-width:600px){
  .exhibit-web .exhibit-topline{padding:17px 18px}
  .exhibit-project-action{padding:13px 18px}
  .exhibit-web .exhibit-caption{padding:0 18px 18px}
  .not-found-main{padding-block:60px 70px;min-height:55vh}
  .not-found-main>p:not(.eyebrow){font-size:15px}
}
@media(prefers-reduced-motion:reduce){
  .exhibit-project-link img{transition:none}
  .exhibit-project-link:hover img{transform:none}
}
