/* Local hero concept only. Existing site assets and downstream content are retained. */
.hero.concept-hero{display:flex;flex-direction:column;justify-content:center;min-height:900px;min-height:max(820px,100svh);padding:150px 7vw 0;background:#05070b;isolation:isolate}
.hero.concept-hero::after{background:linear-gradient(90deg,rgba(5,7,11,.22),transparent);z-index:-1}
.concept-atmosphere{position:absolute;z-index:-2;inset:-8%;pointer-events:none;background:radial-gradient(ellipse at 84% 43%,#142d4c 0%,#0b1728 26%,transparent 61%);animation:concept-depth 4s ease-out both}
.concept-atmosphere::after{content:"";position:absolute;inset:12% 8% 15% 48%;border-right:1px solid #ffffff0f;transform:skewX(-17deg);background:linear-gradient(110deg,transparent 22%,#365a7910 23%,transparent 70%)}
.concept-copy{position:relative;max-width:1100px;padding-bottom:68px}
.concept-kicker{font-size:11px;letter-spacing:.24em;color:#aab8c9;margin:0 0 32px}
.hero.concept-hero h1{max-width:none;font-family:Inter,Arial,sans-serif;font-size:clamp(76px,10.2vw,150px);font-weight:500;line-height:.97;letter-spacing:-.065em;margin:0;color:#fff}
.concept-hero h1>span{display:block}.concept-period{color:#7f9cbb}
.concept-message{font-size:clamp(24px,2.6vw,39px);font-weight:500;line-height:1.65;letter-spacing:.015em;margin:36px 0 0;color:#fff}.concept-message>span{display:inline-block}
.concept-lead{color:#b8c2d0;font-size:15px;line-height:1.9;margin:16px 0 0}
.concept-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:30px}
.concept-primary,.concept-secondary{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:52px;font-size:13px;text-decoration:none}.concept-primary{background:#fff;color:#080d15;padding:12px 24px}.concept-secondary{color:#e0e6ef;border-bottom:1px solid #ffffff45;padding:10px 0}
.concept-actions a:focus-visible,.concept-footer a:focus-visible{outline:2px solid #fff;outline-offset:6px}.concept-primary:hover{background:#dbe4ef}.concept-secondary:hover{border-color:#fff}
.concept-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #ffffff28;padding:26px 0 28px;margin-top:auto;color:#aebaca;font-size:12px}.concept-footer a{color:#f0f3f8;letter-spacing:.12em;font-size:13px}.concept-footer i{font-style:normal;color:#708199;margin:0 12px}.concept-footer b{margin-left:35px;font-weight:400}
@keyframes concept-depth{from{opacity:.5;transform:translateX(2%) scale(1.025)}to{opacity:1;transform:none}}
@media(max-width:760px){.hero.concept-hero{min-height:830px;min-height:max(830px,100svh);padding:125px 24px 0}.concept-copy{padding-bottom:42px}.concept-kicker{font-size:9px;letter-spacing:.18em;margin-bottom:30px}.hero.concept-hero h1{font-size:clamp(62px,17vw,110px);line-height:1.02;letter-spacing:-.065em}.concept-message{font-size:clamp(21px,5.9vw,32px);margin-top:30px;line-height:1.65}.concept-message>span{display:block}.concept-lead{font-size:13px}.concept-break{display:none}.concept-actions{gap:12px;align-items:stretch;flex-direction:column;margin-top:27px}.concept-primary,.concept-secondary{min-height:50px;font-size:13px}.concept-secondary{align-self:flex-start;gap:24px}.concept-footer{align-items:flex-start;flex-direction:column;gap:16px;padding:22px 0 25px;font-size:11px}.concept-footer a{font-size:11px;letter-spacing:.06em}.concept-footer i{margin:0 6px}.concept-footer b{margin-left:16px}.concept-atmosphere{background:radial-gradient(ellipse at 100% 36%,#142d4c 0%,#0b1728 27%,transparent 66%)}}
@media(prefers-reduced-motion:reduce){.concept-atmosphere{animation:none;transform:none}html{scroll-behavior:auto!important}}

/* Refinement scoped to this concept stylesheet; shared /3d/ CSS is untouched. */
.eyebrow::before{background:#7f9cbb}
.contact{background:#080f1b}
.service-card.service-design .service-page-link,.service-card.service-print .service-page-link,.service-card.service-web .service-page-link,.service-card.service-3d .service-page-link{background:#0b1420;border:1px solid #a7b6c875;color:#fff;box-shadow:none;animation:none;filter:none;transition:background-color 180ms ease,border-color 180ms ease}
.service-card.service-design .service-page-link:hover,.service-card.service-print .service-page-link:hover,.service-card.service-web .service-page-link:hover,.service-card.service-3d .service-page-link:hover{background:#152235;border-color:#b9c8d9;box-shadow:none;filter:none;transform:none}
@media(prefers-reduced-motion:no-preference){.concept-kicker,.concept-hero h1,.concept-message,.concept-lead{animation:concept-copy-entry .85s ease-out 1 backwards}.concept-hero h1{animation-delay:.06s}.concept-message{animation-delay:.12s}.concept-lead{animation-delay:.18s}}
@keyframes concept-copy-entry{from{opacity:.35;transform:translateY(7px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.concept-kicker,.concept-hero h1,.concept-message,.concept-lead{animation:none;opacity:1;transform:none}}

/* Top-page-only treatment; original assets and independent /3d/ stay intact. */
.service-3d .service-image img{filter:saturate(.72) brightness(.94)}
.social-project-status span{background:#7f9cbb}
.concept-line{white-space:nowrap}
.concept-letter{display:inline-block;vertical-align:baseline}
.concept-letter>span{display:inline-block;transition:transform 200ms ease-out,color 200ms ease-out}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.concept-letter:hover>span{transform:translateY(-5px);color:#bdd0e4}}
@media(prefers-reduced-motion:no-preference){.concept-letter.is-tapped>span{transform:translateY(-4px);color:#bdd0e4}}
@media(prefers-reduced-motion:reduce){.concept-letter>span{transition:none;transform:none!important}.concept-letter:hover>span,.concept-letter.is-tapped>span{color:#bdd0e4}}

/* Final LINE treatment: original green accent, white copy, unchanged QR. */
.contact-line-preview::before{background:#06c755}
.contact-line-preview strong,.contact-line-preview .contact-channel-kicker,.contact-line-preview .contact-line-description,.contact-line-preview .contact-channel-status{color:#fff}
.contact-line-preview:hover{border-bottom-color:#06c755}
