.legacy-anchor{display:block;position:relative;scroll-margin-top:120px;height:0;pointer-events:none}
.depth-feature{position:relative;isolation:isolate;max-width:1160px;margin:36px auto 72px;color:#142637}
.depth-stage{position:relative;height:clamp(280px,42vw,575px);padding:24px;perspective:1150px;overflow:clip;border-radius:26px;background:linear-gradient(135deg,#eaf3ff,#f5faff 55%,#dceaff);border:1px solid #dce8f7}
.depth-photo-plane{position:absolute;inset:24px;transform-style:preserve-3d;border-radius:18px;overflow:hidden;box-shadow:0 28px 65px #183c7f25,0 2px 6px #153d6720}
.depth-photo-plane img{width:100%;height:100%;object-fit:cover;transform:scale(1.02)}
.inner-main .depth-feature .depth-photo-plane img{width:100%;height:100%;max-height:none;object-fit:cover;margin:0}
.depth-glass,.depth-orbit{position:absolute;pointer-events:none}
.depth-glass{width:clamp(62px,11vw,140px);aspect-ratio:1;border:1px solid #e4f4ffb5;border-radius:20px;background:linear-gradient(135deg,#e4f8ff45,#4b70f944);box-shadow:8px 18px 35px #153b8d25;backdrop-filter:blur(3px)}
.depth-glass--one{right:3.5%;top:7%;rotate:-12deg}.depth-glass--two{left:3%;bottom:7%;width:clamp(45px,7vw,90px);rotate:18deg;background:linear-gradient(130deg,#67d9ed77,#ebf7ff44)}
.depth-orbit{width:clamp(85px,15vw,175px);height:clamp(85px,15vw,175px);right:7%;bottom:3%;border:2px solid #cbe6ffb8;border-radius:50%;rotate:20deg;box-shadow:inset 0 0 16px #a0c2ff66,0 14px 30px #27497e20}
.depth-feature--about .depth-photo-plane img{object-position:center 54%}.depth-feature--service .depth-photo-plane img{object-position:center 50%}
.page-service .page-grid>.page-card,.page-about .page-grid>.page-card{position:relative;border:1px solid #d8e4f4;padding:clamp(22px,3vw,35px);transition:background .3s ease}
.page-service .page-grid>.page-card:hover,.page-service .page-grid>.page-card:focus-within,.page-about .page-grid>.page-card:hover{background:#edf3ff}
.page-service .page-grid>.page-card h3 a{display:inline-block;padding:3px 0}.page-service .page-grid>.page-card h3 a:focus-visible{outline:3px solid #496bff;outline-offset:5px;border-radius:3px}
.depth-reveal{transition:opacity 1.85s cubic-bezier(.16,.68,.18,1),translate 1.85s cubic-bezier(.16,.68,.18,1),rotate 1.85s cubic-bezier(.16,.68,.18,1);transition-delay:var(--reveal-delay,0ms)}
.depth-reveal.is-pending{opacity:0;translate:0 38px;rotate:x 3deg}.depth-reveal:focus-within{opacity:1!important;translate:none!important;rotate:none!important;transition:none!important}
html[data-motion-paused=true] .depth-reveal{opacity:1;translate:none;rotate:none;transition:none}
.inner-main .contact-form input,.inner-main .contact-form textarea,.inner-main .contact-form select{max-width:100%}
.contact-form{max-width:850px;margin:auto}
.contact-form .form-field{padding:24px 0;border-bottom:1px solid var(--line)}
.contact-form .form-label{font-size:17px;font-weight:600;display:block;margin-bottom:14px}
.contact-form .field-tag{font-size:11px;font-weight:400;margin-left:12px;padding:3px 9px;border:1px solid var(--line);border-radius:20px}
.contact-form .field-tag.required{color:#345bcb;border-color:#8ba7ed}
.contact-form input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.contact-form select,.contact-form textarea{display:block;width:100%;max-width:100%;padding:15px;border:1px solid #aabbd2;border-radius:6px;background:#fbfdff;color:var(--ink);font-size:17px}
.contact-form input[type=checkbox],.contact-form input[type=radio]{width:20px;height:20px;accent-color:#4667ef}
.contact-form .tel-group{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:10px}
.contact-form .tel-group input{min-width:0;width:100%}
.contact-form .checkbox-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.contact-form .checkbox-item{display:flex;gap:9px;align-items:flex-start;font-size:16px}
.contact-form .checkbox-item input{flex-shrink:0;margin-top:5px}
.contact-form .form-submit{margin-top:35px}
.contact-form fieldset{border:0;padding:0;margin:0;min-width:0}
.contact-form .field-note{font-size:14px;line-height:1.8}
.contact-form .hp-wrap{display:none!important}
.contact-form textarea{resize:vertical}
.contact-form .button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:13px 30px;border:1px solid #4767ff;border-radius:30px;background:#4767ff;color:#fff;cursor:pointer;font-size:16px}
.contact-form .button:disabled{opacity:.55;cursor:default}
.inner-main :where(input,textarea,select):focus-visible{outline:3px solid #496bff;outline-offset:3px}
@media(max-width:760px){
 .depth-feature{margin:28px auto 48px}.depth-stage{height:clamp(275px,73vw,440px);padding:13px;border-radius:18px;perspective:1600px}.depth-photo-plane{inset:13px;border-radius:12px}
 .depth-glass{border-radius:12px}.page-service .page-grid>.page-card,.page-about .page-grid>.page-card{padding:24px}
 .depth-reveal.is-pending{translate:0 25px;rotate:none}.depth-glass,.depth-orbit{backdrop-filter:none}
 .contact-form .checkbox-grid{grid-template-columns:1fr}.contact-form .tel-group{gap:6px}
}
@media(prefers-reduced-motion:reduce){
 .depth-reveal,.depth-reveal.is-pending{opacity:1!important;translate:none!important;rotate:none!important;transition:none!important}
 .depth-stage{perspective:none}
}
