/* Searchable service information, kept separate from the 3D chapter layout. */
.seo-section{padding:90px 0;background:#080c13}.seo-section h2{max-width:830px;margin:0 0 24px;font-size:clamp(32px,4vw,56px);line-height:1.1;letter-spacing:-.045em;font-weight:600;text-wrap:balance}.seo-intro{max-width:760px;color:var(--muted);font-size:18px;line-height:1.7}.seo-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:38px}.seo-link-grid>a{display:flex;flex-direction:column;padding:30px;border:1px solid #ffffff18;border-radius:18px;background:#101721;transition:border-color .2s,transform .2s}.seo-link-grid>a:hover{border-color:#d8b35b88;transform:translateY(-3px)}.seo-link-grid>a>span{font-size:11px;letter-spacing:.08em;color:var(--accent)}.seo-link-grid h3{font-size:26px;line-height:1.2;letter-spacing:-.025em;font-weight:550}.seo-link-grid p{color:var(--muted);font-size:15px;margin:0 0 25px}.seo-link-grid b{font-size:12px;color:#ecd397;font-weight:500;margin-top:auto}.seo-faq{background:#0b1019}.seo-faq .container{max-width:1000px}.seo-faq details{border-bottom:1px solid #ffffff18;padding:22px 0}.seo-faq summary{font-size:18px;font-weight:500;cursor:pointer;padding-right:15px}.seo-faq details p{color:var(--muted);font-size:16px;max-width:80ch;margin-bottom:4px}.seo-faq a,.seo-contact a{color:#e8cc8d;text-decoration:underline;text-underline-offset:4px}.seo-contact{font-size:15px}.seo-footer-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:14px 28px;padding-block:28px;font-size:13px;color:var(--muted)}.seo-footer-nav a:hover{color:var(--accent-bright)}
.service-page{background:#080c13}.service-page .skip-link{position:absolute;top:0;left:10px;z-index:1100;transform:translateY(-150%);padding:10px;background:#e5c77e;color:#111}.service-page .skip-link:focus{transform:none}.service-hero{padding-top:145px;padding-bottom:65px}.breadcrumbs{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-bottom:44px}.breadcrumbs a{color:#e4c984}.service-hero h1{font-size:clamp(40px,6vw,78px);letter-spacing:-.055em;line-height:1.06;font-weight:600;margin:15px 0 20px;max-width:1000px;text-wrap:balance}.service-headline{color:#d4b971;font-size:clamp(21px,2.4vw,30px);line-height:1.3;max-width:800px}.service-hero .button{margin-top:14px}.service-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:70px;padding-bottom:100px;align-items:start}.service-article section{margin-bottom:42px}.service-article h2{font-size:clamp(25px,3vw,35px);letter-spacing:-.03em;font-weight:550;line-height:1.2;margin-top:0}.service-article p{font-size:17px;color:#b7c0cd;line-height:1.8}.service-aside figure{margin:0 0 30px}.service-aside img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:18px}.service-aside figcaption{color:var(--muted);font-size:11px;margin-top:10px}.service-contact{border:1px solid #ffffff1c;border-radius:18px;padding:26px;display:flex;flex-direction:column;gap:12px;background:#101722}.service-contact h2{font-size:25px;line-height:1.15;margin:0}.service-contact p{color:var(--muted);font-size:14px;margin:0}.service-contact>a:not(.button){font-size:14px;color:#ead29b;overflow-wrap:anywhere}.service-contact .button{font-size:12px;padding:12px}.related-services{display:flex;flex-direction:column;gap:12px;color:#ead29b}.related-services a{text-decoration:underline;text-underline-offset:4px}.gallery-service-intro{max-width:780px;margin:0 0 35px;color:var(--muted)}
@media(max-width:900px){.seo-link-grid{grid-template-columns:1fr}.seo-section{padding:65px 0}.service-layout{grid-template-columns:1fr;gap:25px}.service-hero{padding-top:125px;padding-bottom:45px}.service-aside{display:grid;grid-template-columns:1fr 1fr;gap:25px}.service-aside figure{margin:0}}
@media(max-width:560px){.service-aside{grid-template-columns:1fr}.seo-link-grid>a{padding:24px}.seo-faq summary{font-size:16px}.seo-intro{font-size:16px}.breadcrumbs{margin-bottom:30px}.service-article p{font-size:16px}.service-hero h1{font-size:42px}}
@media(prefers-reduced-motion:reduce){.seo-link-grid>a{transition:none}.seo-link-grid>a:hover{transform:none}}
.home-3d .product-hero h1{font-size:clamp(46px,5vw,76px)}
@media(max-width:759px){.home-3d .product-hero h1{font-size:clamp(34px,9.5vw,52px)}}
.service-page .space-menu-icon{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
.service-page .space-menu-orbit,.service-page .space-menu-close{transform-origin:12px 12px}
.service-page .nav-toggle{border-radius:13px}
.service-hero h1{hyphens:auto;overflow-wrap:break-word}
@media(max-width:560px){.service-hero h1{font-size:clamp(34px,10vw,42px)}}

/* Answers keep their natural height; JS animates only during an interaction. */
#faq-title,.seo-faq>.container>.eyebrow,.seo-faq summary{-webkit-user-select:none;user-select:none}
.seo-faq .faq-answer{display:flow-root;overflow:hidden}
.seo-faq summary{position:relative;list-style:none;padding-right:36px;line-height:1.5}
.seo-faq summary::-webkit-details-marker{display:none}
.seo-faq summary::marker{content:""}
.seo-faq summary::after{content:"";position:absolute;right:5px;top:50%;width:8px;height:8px;border-right:1.5px solid #d8bd7b;border-bottom:1.5px solid #d8bd7b;transform:translateY(-70%) rotate(45deg);transition:transform .28s ease}
.seo-faq details[data-expanded="true"] summary::after,.seo-faq details[open]:not([data-faq-enhanced]) summary::after{transform:translateY(-20%) rotate(225deg)}
@media(prefers-reduced-motion:reduce){.seo-faq summary::after{transition:none}}
