.gv-root{font-family:'Inter Tight','Helvetica Neue',Arial,sans-serif;font-weight:400;color:#000000;background:#FFFFFF;-webkit-font-smoothing:antialiased;overflow-x:hidden}
.gv-root a{color:#006FF1}
.wrap{max-width:1240px;margin:0 auto;padding-left:clamp(16px,4vw,40px);padding-right:clamp(16px,4vw,40px);box-sizing:border-box}
.sec{padding-top:clamp(80px,10vw,140px);padding-bottom:clamp(80px,10vw,140px)}
.sec-sm{padding-top:clamp(56px,7vw,96px);padding-bottom:clamp(56px,7vw,96px)}
.dark{background:#000000;color:#FFFFFF}
.light{background:#FFFFFF;color:#000000}
.mist{background:#F5F5F8;color:#000000}
.eyebrow{margin:0 0 20px;font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#4D4D4D}
.dark .eyebrow{color:#A6A6A6}
.h1{margin:0 0 28px;font-size:clamp(44px,5.6vw,76px);line-height:1.06;letter-spacing:-.025em;font-weight:500}
.h1-page{margin:0 0 28px;font-size:clamp(40px,5vw,68px);line-height:1.06;letter-spacing:-.025em;font-weight:500}
.h2{margin:0 0 24px;font-size:clamp(36px,4.2vw,56px);line-height:1.08;letter-spacing:-.025em;font-weight:500}
.h3{margin:0 0 10px;font-size:24px;line-height:1.2;letter-spacing:-.01em;font-weight:500}
.h4{margin:0 0 8px;font-size:20px;line-height:1.25;font-weight:500}
.lead{margin:0;font-size:clamp(18px,1.5vw,21px);line-height:1.5;color:#4D4D4D}
.dark .lead{color:#D9D9D9}
.body{margin:0;font-size:17px;line-height:1.55;color:#4D4D4D}
.dark .body{color:#A6A6A6}
.small{margin:0;font-size:13px;line-height:1.55;color:#4D4D4D}
.dark .small{color:#A6A6A6}
.statement{margin:0 auto;max-width:900px;text-align:center;font-size:clamp(26px,2.9vw,40px);line-height:1.3;letter-spacing:-.015em;font-weight:400}
.rule{border-top:1px solid #000000;padding-top:24px}
.dark .rule{border-top-color:#333333}
.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:48px}
.grid-4{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
.split{display:flex;flex-wrap:wrap;gap:64px}
.col{flex:1 1 460px;min-width:0}
.site-header{position:sticky;top:0;z-index:20;background:#000000;color:#FFFFFF}
.header-row{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#FFFFFF !important}
.brand-mark{width:34px;height:34px;display:block}
.brand-word{font-size:22px;font-weight:600;letter-spacing:-.02em}
.g-stroke{fill:none;stroke:currentColor;stroke-width:7;stroke-linejoin:miter}
.nav{display:flex;gap:36px;font-size:15px}
.navlink{color:#FFFFFF !important;text-decoration:none;font-weight:500;padding:6px 0;border-bottom:1px solid transparent;transition:opacity .2s ease}
.navlink:hover{opacity:.65}
.is-active{border-bottom-color:#FFFFFF}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:0 24px;border-radius:4px;font-size:16px;font-weight:500;text-decoration:none;border:1px solid transparent;box-sizing:border-box;cursor:pointer;font-family:inherit;transition:background .2s ease,color .2s ease,border-color .2s ease}
.btn-sm{min-height:44px;padding:0 18px;font-size:15px}
.btn-light{background:#FFFFFF;color:#000000 !important;border-color:#FFFFFF}
.btn-light:hover{background:#E6E6E6;border-color:#E6E6E6}
.btn-outline-light{background:transparent;color:#FFFFFF !important;border-color:#FFFFFF}
.btn-outline-light:hover{background:#FFFFFF;color:#000000 !important}
.btn-dark{background:#000000;color:#FFFFFF !important;border-color:#000000}
.btn-dark:hover{background:#006FF1;border-color:#006FF1}
.btn-outline-dark{background:transparent;color:#000000 !important;border-color:#000000}
.btn-outline-dark:hover{background:#000000;color:#FFFFFF !important}
.arrow{display:inline-block;transition:transform .2s ease}
.btn:hover .arrow,.textlink:hover .arrow,.textlink-light:hover .arrow{transform:translateX(4px)}
.textlink{color:#000000 !important;text-decoration:none;font-weight:500;font-size:15px;display:inline-flex;align-items:center;gap:10px}
.textlink:hover{color:#006FF1 !important}
.textlink-light{color:#FFFFFF !important;text-decoration:none;font-weight:500;font-size:15px;display:inline-flex;align-items:center;gap:10px}
.textlink-light:hover{opacity:.7}
.footlink{color:#A6A6A6 !important;text-decoration:none}
.footlink:hover{color:#FFFFFF !important}
.card{display:flex;flex-direction:column;gap:16px;padding:32px;border:1px solid #E3E3E8;border-radius:4px;background:#FFFFFF;color:#000000 !important;text-decoration:none;transition:border-color .25s ease}
.card:hover{border-color:#000000}
.card-dark{display:flex;flex-direction:column;gap:14px;padding:32px;border:1px solid #262626;border-radius:4px;background:#0B0B0B;color:#FFFFFF}
.tag{display:inline-block;padding:6px 10px;border:1px solid #000000;border-radius:4px;font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}
.dark .tag{border-color:#FFFFFF}
.row-line{display:flex;flex-wrap:wrap;gap:12px 48px;padding:28px 0;border-top:1px solid #E3E3E8}
.dark .row-line{border-top-color:#262626}
.row-line > .k{flex:0 1 260px;font-size:20px;font-weight:500}
.row-line > .v{flex:1 1 380px;min-width:0}
.list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}
.list li{position:relative;padding-left:22px;font-size:16px;line-height:1.5;color:#4D4D4D}
.list li::before{content:'';position:absolute;left:0;top:9px;width:8px;height:8px;border-radius:50%;background:#006FF1}
.dark .list li{color:#A6A6A6}
.step-n{font-size:14px;color:#4D4D4D;margin:0 0 16px}
.dark .step-n{color:#A6A6A6}
.table-wrap{overflow-x:auto;border-top:1px solid #000000}
.cmp{width:100%;border-collapse:collapse;min-width:620px;font-size:16px}
.cmp th,.cmp td{text-align:left;padding:20px 16px 20px 0;border-bottom:1px solid #E3E3E8;vertical-align:top;line-height:1.5}
.cmp th{font-weight:500;color:#000000}
.cmp td{color:#4D4D4D}
.cmp thead th{font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#4D4D4D}
.faq{border-top:1px solid #E3E3E8;padding:24px 0}
.faq summary{cursor:pointer;font-size:20px;font-weight:500;list-style:none;display:flex;justify-content:space-between;gap:24px}
.faq summary::after{content:'+';font-weight:400;font-size:24px;line-height:1}
.faq[open] summary::after{content:'\2212'}
.faq p{margin:14px 0 0;max-width:820px;font-size:17px;line-height:1.55;color:#4D4D4D}
.avatar{width:100%;aspect-ratio:4/5;background:#ECECF1;border-radius:4px;display:flex;align-items:flex-end;padding:16px;box-sizing:border-box;font-size:13px;color:#4D4D4D}
.dotring{fill:none;stroke:#FFFFFF;stroke-linecap:round;stroke-width:3;stroke-dasharray:0 10}
.o1{stroke-opacity:.18}.o2{stroke-opacity:.3}.o3{stroke-opacity:.45}.o4{stroke-opacity:.62}
.drift{animation:gvDrift 7s linear infinite}
.drift-rev{animation:gvDrift 9s linear infinite reverse}
.drift-slow{animation:gvDrift 14s linear infinite}
@keyframes gvDrift{to{stroke-dashoffset:-40}}
.arc{fill:none;stroke:#FFFFFF;stroke-opacity:.22;stroke-width:1}
.flow{fill:none;stroke-width:2;stroke-linecap:round;stroke-dasharray:2 24;animation:gvFlow 3s linear infinite}
.flow-rev{animation-direction:reverse}
@keyframes gvFlow{to{stroke-dashoffset:-52}}
.pulse{fill:none;stroke-width:1.5;transform-box:fill-box;transform-origin:center;animation:gvPulse 3.2s ease-out infinite}
@keyframes gvPulse{0%{transform:scale(1);opacity:.8}100%{transform:scale(3.2);opacity:0}}
.d1{animation-delay:.6s}.d2{animation-delay:1.2s}.d3{animation-delay:1.8s}.d4{animation-delay:2.4s}
.ico{fill:none;stroke:#FFFFFF;stroke-width:1.4}
.ico-dark{fill:none;stroke:#000000;stroke-width:1.4}
.wave{fill:none;stroke:#FFFFFF;stroke-opacity:.14;stroke-linecap:round;stroke-width:2.4;stroke-dasharray:0 12;animation:gvDrift2 10s linear infinite}
.wave-rev{animation-direction:reverse}
@keyframes gvDrift2{to{stroke-dashoffset:-48}}
.spin-slow{transform-box:fill-box;transform-origin:center;animation:gvSpin 60s linear infinite}
@keyframes gvSpin{to{transform:rotate(360deg)}}
.rise{animation:gvRise 1s cubic-bezier(.2,.7,.2,1) both}
.r2{animation-delay:.12s}.r3{animation-delay:.24s}
@keyframes gvRise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.track{position:relative;height:1px;background:#CFCFD6;overflow:hidden}
.comet{position:absolute;top:0;left:-200px;height:1px;width:200px;background:#006FF1;animation:gvComet 5s linear infinite}
@keyframes gvComet{to{left:100%}}
.gv-input{width:100%;box-sizing:border-box;min-height:52px;padding:14px 16px;border:1px solid #CFCFD6;border-radius:4px;font:inherit;font-size:16px;color:#000000;background:#FFFFFF}
.gv-input:focus{outline:2px solid #006FF1;outline-offset:1px;border-color:#006FF1}
.gv-input::placeholder{color:#6B6B73}
.field{display:flex;flex-direction:column;gap:8px}
.field label{font-size:14px;font-weight:500}
.gv-root a:focus-visible,.gv-root button:focus-visible,.gv-root summary:focus-visible{outline:2px solid #006FF1;outline-offset:3px}
.photo-band{position:relative;overflow:hidden;background:#000000;color:#FFFFFF}
.photo-band > img{display:block;width:100%;height:clamp(360px,44vw,640px);object-fit:cover}
.photo-band .cap{position:absolute;left:0;right:0;bottom:0;padding-top:140px;padding-bottom:clamp(32px,4vw,56px);background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.74) 100%)}
.photo-band .eyebrow{margin-bottom:14px}
.band-line{margin:0;max-width:820px;font-size:clamp(28px,3.4vw,48px);line-height:1.12;letter-spacing:-.02em;font-weight:500;color:#FFFFFF}
.photo{display:block;width:100%;height:auto;object-fit:cover;background:#ECECF1}
.ar-43{aspect-ratio:4/3}
.photo-frame{overflow:hidden;border-radius:4px}
.photo-frame img{transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.photo-frame:hover img{transform:scale(1.03)}
.zoom{animation:gvZoom 24s ease-in-out infinite alternate;transform-origin:center}
@keyframes gvZoom{from{transform:scale(1)}to{transform:scale(1.06)}}
@media (max-width:960px){.hide-md{display:none !important}}
@media (prefers-reduced-motion:reduce){.gv-root *{animation:none !important;transition:none !important}}
.no-motion *{animation:none !important}
