/* Selected visual direction 02: ultramarine, ceramic, and a movable orange piece. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
h1,h2{font-family:var(--serif);font-weight:600;letter-spacing:-.055em}
.page-home .site-header{position:absolute;inset:0 0 auto;background:transparent;color:var(--white)}
.page-home .site-header .brand-mark,.page-home .menu-toggle .icon{filter:brightness(0) invert(1)}
.page-home .nav-links>a:hover,.page-home .nav-links>a[aria-current="page"]{color:#fff}
.page-home .site-header :focus-visible{outline-color:var(--white)}
.page-home .nav-links>a:hover{text-decoration:underline;text-underline-offset:7px}
.nav-inner{height:100px}.nav-links{gap:42px}.language{margin-right:0}
.sculpture-hero{position:relative;isolation:isolate;aspect-ratio:1422 / 900;min-height:690px;overflow:hidden;background:var(--blue);color:var(--white)}
.sculpture-stage{position:absolute;inset:0;z-index:-1;user-select:none}
.sculpture-picture{display:block;width:100%;height:100%}
.sculpture-scene{width:100%;height:100%;object-fit:cover;object-position:center top;pointer-events:none}
.sculpture-piece{position:absolute;left:64.75%;top:13.8%;width:31.95%;aspect-ratio:.92;padding:0;background:none;touch-action:none;user-select:none;cursor:grab;transform:translate(var(--piece-x,0px),var(--piece-y,0px));transition:transform .7s cubic-bezier(.22,.72,.21,1);outline-offset:8px}
.sculpture-piece img{width:100%;height:100%;object-fit:contain;pointer-events:none;user-select:none}
.sculpture-piece:disabled{cursor:default;pointer-events:none}.sculpture-piece.is-dragging{cursor:grabbing;transition:none}
.sculpture-piece:focus-visible{outline:2px dashed var(--white);border-radius:10px}
.sculpture-content{position:absolute;left:0;right:0;bottom:6.3%;pointer-events:none}
.hero-services{color:var(--white);font-size:clamp(15px,1.35vw,21px);letter-spacing:.03em;line-height:1.5;margin-bottom:8px}
.sculpture-content h1{font-size:clamp(89px,9.55vw,156px);font-weight:600;line-height:1.15;letter-spacing:-.025em;color:var(--white)}
.sculpture-hint{position:absolute;right:4.2%;top:24.5%;display:flex;align-items:center;gap:13px;font-size:12px;line-height:1.6;color:var(--white);pointer-events:none}
.hint-arrow{filter:brightness(0) invert(1);transform:rotate(-145deg);width:24px;height:24px}
.hero-circle{position:absolute;right:3.7%;bottom:4.5%;width:clamp(145px,13.7vw,205px);height:clamp(134px,11.8vw,180px);display:flex;justify-content:center;align-items:center;gap:8px;border:1.5px solid var(--white);border-radius:50%;font-family:var(--serif);font-size:clamp(16px,1.4vw,21px);font-weight:600;transition:color .25s,background .25s,transform .25s}
.hero-circle .icon{filter:brightness(0) invert(1);width:20px;height:20px}
.hero-circle:hover{background:var(--white);color:var(--blue);transform:rotate(-5deg)}
.hero-circle:hover .icon{filter:none;transform:translate(2px,-2px)}
.sculpture-hero a:focus-visible{outline-color:var(--white)}
.opening-band{padding:36px 0 38px}
.opening-band>.container{display:flex;align-items:center;justify-content:space-between;gap:40px}
.opening-band h2{font-size:clamp(32px,3.8vw,58px);line-height:1.4;letter-spacing:-.055em}
.opening-band p{font-size:12px;margin-top:24px}
.opening-band .text-link{font-size:14px;flex:none;align-self:center;margin-top:3px;padding-bottom:10px}
.down-arrow{transform:rotate(180deg)}
.opening-band .text-link:hover .down-arrow{transform:rotate(180deg) translateY(-4px)}
.scenario-section{border-top:1px solid var(--line);padding-top:56px}
.scenario-intro h2{font-size:43px}.scenario-copy h3{font-family:var(--serif);font-weight:600;font-size:31px;letter-spacing:-.04em}
.scenario-tabs button[aria-selected="true"]{color:var(--blue)}
.scenario-tabs button[aria-selected="true"]:after{background:var(--blue)}
.service-item h3{font-family:var(--serif);font-weight:600;letter-spacing:-.035em}
.process-section{background:var(--blue)}
.process-section .eyebrow{color:#e3e9ff}.process-note,.process-list p{color:#e3e9ff}
.process-list li{border-color:#8daafa70}.process-list li>span{color:#ffb08c}
.process-grid h2 em{color:var(--white)}
.roadmap-main h2{line-height:1.3}.roadmap-status{color:var(--blue)}
.about-section{background:var(--paper)}
.contact-section{background:var(--blue);color:var(--white)}
.contact-section .eyebrow,.contact-copy>p,.contact-links small,.faq-list details p,.brief-box>p,.form-note,.brief-result p{color:#e4eaff}
.contact-title{font-weight:600;line-height:1.26;letter-spacing:-.065em}
.contact-links a:hover>span{border-bottom-color:var(--white)}
.contact-section .icon{filter:brightness(0) invert(1)}
.faq-list details,.brief-box,.brief-result,.privacy-hint{border-color:#abc1ff70}
.brief-box input,.brief-box select,.brief-box textarea{color:var(--white);border-color:#abc1ff90}
.brief-box textarea::placeholder{color:#d0dcff}
.brief-box form .button,.result-actions .primary{background:var(--paper);color:var(--blue)}
.brief-box form .button:hover,.result-actions .primary:hover{background:#fff;color:var(--ink)}
.brief-box .primary .icon{filter:none}
.brief-box .secondary{color:var(--white)}
.brief-box .secondary:hover{background:#ffffff12}
.brief-box :focus-visible,.contact-section a:focus-visible,.contact-section summary:focus-visible{outline-color:var(--white)}
.product-hero h1,.legal-heading h1{color:var(--blue)}
.product-hero h1 em{color:var(--blue)}
.product-cta{background:var(--blue);color:var(--white)}
.product-cta .eyebrow,.product-cta .container>p:last-child{color:#e3e9ff}
.product-cta .primary{background:var(--paper);color:var(--blue)}
.product-cta .primary .icon{filter:none}
.lang-en .sculpture-content h1{font-family:Georgia,var(--serif);font-size:clamp(75px,8.8vw,140px);font-weight:400;line-height:1.06;letter-spacing:-.065em}
.lang-en .hero-circle{font-family:Georgia,var(--serif);font-weight:400;letter-spacing:0}
.lang-en .hero-services{font-size:clamp(13px,1.1vw,18px);letter-spacing:0}
.lang-en .opening-band h2{font-family:Georgia,var(--serif);font-weight:400;letter-spacing:-.045em}
@media(min-width:1700px){.sculpture-hero{max-height:1100px}.sculpture-content{bottom:7%}.hero-circle{right:max(4%,calc((100vw - 1600px)/2))}}
@media(max-width:1150px){.nav-links{gap:30px}.sculpture-content h1{font-size:9.7vw}.hero-services{margin-bottom:20px}.sculpture-hint{font-size:10px;gap:8px}.hero-circle{right:3.5%}.scenario-intro h2{font-size:36px}.scenario-copy h3{font-size:28px}}
@media(max-width:900px){
 .nav-inner{height:82px}.page-home .site-header{background:var(--blue)}.page-home .nav-links{background:var(--blue);color:var(--white);border-color:#ffffff60}.nav-links{gap:0}
 .sculpture-hero{aspect-ratio:auto;min-height:720px}
 .sculpture-stage{height:100%;inset:0}
 .sculpture-piece{width:42%;left:58%;top:18%}
 .sculpture-scene{object-fit:cover;object-position:57% top}
 .sculpture-content{bottom:58px}.sculpture-content h1{font-size:88px;line-height:1.14}.hero-services{font-size:15px;margin-bottom:20px}
 .sculpture-hint{right:4%;top:15%;font-size:10px}
 .hero-circle{width:142px;height:132px;right:4%;bottom:6%;font-size:15px}
 .opening-band{padding-block:30px}.opening-band h2{font-size:34px}.opening-band .text-link{font-size:12px}.opening-band p{margin-top:17px;font-size:10px}
 .scenario-section{padding-top:40px}.scenario-intro h2{font-size:31px}.scenario-copy h3{font-size:26px}
 .lang-en .sculpture-content h1{font-size:78px}.lang-en .hero-services{max-width:290px;font-size:13px}.lang-en .opening-band h2{font-size:31px}
}
@media(max-width:640px){
 .nav-inner{height:76px}.page-home .site-header{background:var(--blue)}.page-home .nav-links{top:76px}
 .sculpture-hero{min-height:740px;height:calc(100svh - 34px);max-height:850px}
 .sculpture-stage{width:100%;height:100%;inset:0;transform:none}
 .sculpture-scene{object-fit:cover;object-position:center top}
 .sculpture-piece{left:57%;top:12%;width:44%}
 .sculpture-content{bottom:141px;width:calc(100% - 40px)}
 .sculpture-content h1{font-size:clamp(54px,15vw,91px);line-height:1.16;letter-spacing:-.07em}
 .hero-services{font-size:11px;letter-spacing:0;margin-bottom:17px}
 .sculpture-hint{top:53%;right:20px;max-width:170px;font-size:10px;gap:8px}
 .hint-arrow{width:19px;height:19px;transform:rotate(-90deg)}
 .hero-circle{width:126px;height:105px;right:22px;bottom:24px;font-size:13px;gap:5px}
 .hero-circle .icon{width:16px;height:16px}
 .opening-band{padding-block:31px 29px}.opening-band>.container{display:block}.opening-band h2{font-size:30px;line-height:1.4;max-width:340px}.opening-band p{font-size:10px;margin-top:18px}.opening-band .text-link{font-size:11px;margin-top:23px;padding-bottom:6px;gap:18px}
 .scenario-section{padding-top:34px}.scenario-intro h2{font-size:29px}.scenario-copy h3{font-size:25px}
 .brief-box{border-top-color:#abc1ff70}.contact-title{font-size:clamp(31px,8.7vw,51px)}
 .lang-en .sculpture-content{bottom:154px}.lang-en .sculpture-content h1{font-size:clamp(49px,13vw,75px);line-height:1.1;letter-spacing:-.065em}.lang-en .hero-services{max-width:290px;font-size:11px;line-height:1.6}.lang-en .sculpture-hint{max-width:132px}.lang-en .opening-band h2{font-size:31px;max-width:310px}
}
@media(prefers-reduced-motion:reduce){.sculpture-piece,.hero-circle{transition:none}.hero-circle:hover{transform:none}}
@media print{.sculpture-stage,.sculpture-hint,.hero-circle{display:none}.sculpture-hero{min-height:0;aspect-ratio:auto;background:white;color:black;overflow:visible}.sculpture-content{position:static;padding-block:30px}.sculpture-content h1{font-size:40pt;color:black}.hero-services{color:black}.opening-band{padding:20px 0}.process-section{background:white;color:black}.process-section p{color:#333}}
