.simple-header{justify-content:space-between;padding:12px max(24px,calc((100% - 1040px)/2));gap:20px;border-bottom:1px solid #f0f0f0;position:sticky;top:0}
.simple-header .vis-logo{width:175px}.simple-header nav{display:flex;gap:32px}.simple-header nav a{font-size:13px}
.simple-home{text-align:center;background:#fff}.simple-home section{scroll-margin-top:90px}
.simple-eyebrow{font-size:16px;font-weight:600;margin:0 0 22px;color:#383838}
.simple-hero{position:relative;padding:100px 24px 112px;background:#fff}
.simple-hero h1{font-size:clamp(44px,6.5vw,84px);line-height:1.18;letter-spacing:-.045em;font-weight:650;margin:0}.simple-hero h1 span{color:#ad0000}
.simple-lead{font-size:clamp(18px,2.2vw,24px);color:#5a5a5c;margin:28px 0 22px;line-height:1.65}
.simple-link{display:inline-flex;gap:9px;align-items:center;color:#ad0000;font-size:17px;text-decoration:none}.simple-link:hover{text-decoration:underline}.simple-link span{font-size:26px}
.brand-rule{width:72px;height:13px;margin:65px auto 0;background:linear-gradient(to bottom,#ad0000 0 1px,transparent 1px 6px,#ad0000 6px 7px,transparent 7px 12px,#ad0000 12px 13px)}
.simple-about{padding:105px 24px;background:#f0f0f0}.simple-about h2,.simple-contact h2{font-size:clamp(34px,4.6vw,58px);font-weight:600;letter-spacing:-.035em;line-height:1.25;margin:0 0 25px}.simple-about>p:last-child{font-size:20px;line-height:1.8;color:#5a5a5c;margin:0}
.simple-services{max-width:1088px;margin:0 auto;padding:110px 24px}.simple-section-head{margin-bottom:48px}.simple-section-head h2{font-size:clamp(30px,4vw,46px);letter-spacing:-.035em;line-height:1.3;margin:0 0 16px}.simple-section-head p{color:#5a5a5c;font-size:19px;margin:0}
.simple-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;text-align:left}.simple-service-grid article{background:#f0f0f0;border-radius:24px;min-height:320px;padding:42px;display:flex;flex-direction:column;align-items:flex-start}.service-label{font-size:14px;color:#ad0000;font-weight:600}.simple-service-grid h3{font-size:clamp(28px,3.3vw,40px);line-height:1.28;font-weight:600;letter-spacing:-.03em;margin:25px 0 24px}.simple-service-grid p{font-size:16px;line-height:1.7;color:#5a5a5c;margin:auto 0 0;max-width:340px}
.simple-contact{padding:95px 24px 105px;border-top:1px solid #f0f0f0}.simple-contact>p{font-size:19px;color:#5a5a5c}.simple-contact .simple-eyebrow{font-size:15px;color:#ad0000}.simple-contact .contact-pending{font-size:14px;margin-top:28px;color:#5a5a5c}
.simple-footer{max-width:1040px;margin:auto;padding:26px 24px 0;display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px;border-top:1px solid #dedede;color:#5a5a5c;font-size:12px}.simple-footer p{margin:0}.simple-footer a{color:#5a5a5c;text-decoration:none}.simple-footer small{flex-basis:100%;font-size:12px}.font-credit{font-size:11px}.test-warning{font-size:11px;padding:6px 14px}
@media(max-width:600px){.simple-header{padding:10px 16px;gap:8px;flex-wrap:nowrap}.simple-header .vis-logo{width:140px}.simple-header nav{gap:14px}.simple-header nav a{font-size:12px}.simple-hero{padding:70px 18px 75px}.simple-hero h1{font-size:clamp(38px,8.8vw,52px)}.simple-lead{font-size:17px}.brand-rule{margin-top:45px}.simple-about{padding:70px 20px}.simple-about>p:last-child{font-size:17px}.simple-services{padding:75px 18px}.simple-service-grid{grid-template-columns:1fr;gap:14px}.simple-service-grid article{min-height:280px;padding:30px;border-radius:20px}.simple-contact{padding:70px 20px}.simple-contact>p{font-size:17px}.simple-section-head p{font-size:17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.simple-positioning{font-size:14px;color:#5a5a5c;line-height:1.7;margin:0 0 24px}
.simple-home details{width:100%}.simple-home summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;font-weight:500}.simple-home summary::-webkit-details-marker{display:none}.simple-home summary::after{content:"+";font-family:Arial,sans-serif;font-size:23px;font-weight:400;flex-shrink:0}.simple-home details[open]>summary::after{content:"−"}.simple-home summary:focus-visible,.simple-home a:focus-visible{outline:2px solid #ad0000;outline-offset:5px;border-radius:4px}
.service-detail{margin-top:22px;border-top:1px solid #dedede;padding-top:10px}.service-detail summary{font-size:15px;color:#ad0000}.simple-service-grid .service-detail p{font-size:14px;margin:12px 0;line-height:1.85}.service-detail a{display:inline-block;font-size:14px;color:#ad0000;text-decoration:none;margin:8px 0 0;min-height:32px}
.simple-faq{max-width:760px;margin:auto;padding:0 24px 90px;text-align:left}.simple-faq h2{font-size:clamp(28px,4vw,40px);letter-spacing:-.03em;margin:0 0 28px;text-align:center}.simple-faq details{border-bottom:1px solid #dedede;padding:12px 0}.simple-faq summary{font-size:16px}.simple-faq details p{font-size:15px;color:#5a5a5c;line-height:1.9;margin:10px 32px 15px 0}
.simple-home .consult-entry{width:min(100%,360px);margin:30px auto 0}.consult-entry>summary{background:#ad0000;color:#fff;border-radius:24px;padding:8px 24px;width:180px;margin:auto;font-size:16px;box-sizing:border-box}.consult-panel{padding-top:26px}.consult-panel p{font-size:14px;color:#5a5a5c;line-height:1.8}.consult-qr{display:block;width:240px;height:auto;max-width:100%;margin:0 auto 16px}.consult-panel .simple-link{font-size:14px}.simple-contact .contact-pending{margin:0}
@media(max-width:600px){.simple-faq{padding:0 20px 65px}.simple-positioning{font-size:13px;max-width:260px;margin:0 auto 24px}}
.registration-home{max-width:1040px;margin:0 auto;padding:65px 24px 50px;background:#fff;text-align:center}.registration-home h1{font-size:clamp(30px,4.5vw,50px);letter-spacing:-.035em;line-height:1.3;margin:0 0 20px}.registration-intro{color:#5a5a5c;font-size:16px;line-height:1.8;margin:0 auto 45px;max-width:520px}.registration-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;text-align:left}.registration-card{display:flex;flex-direction:column;align-items:flex-start;background:#f0f0f0;border:1px solid transparent;border-radius:20px;padding:26px;text-decoration:none;color:#383838;min-width:0;min-height:175px;margin:0}.registration-number{font-family:Arial,sans-serif;color:#5a5a5c;font-size:13px}.registration-card h2{font-size:20px;font-weight:600;line-height:1.5;margin:18px 0 24px;overflow-wrap:anywhere}.registration-action{font-size:14px;color:#ad0000;margin-top:auto}.registration-card[href]:hover{border-color:#ad0000;background:#fff}.registration-card[href]:focus-visible{outline:2px solid #ad0000;outline-offset:4px}.registration-card.is-closed .registration-action{color:#5a5a5c}.registration-help{font-size:14px;color:#5a5a5c;line-height:1.8;margin-top:32px}.registration-help a{color:#ad0000}.simple-header nav a[aria-current=page]{color:#ad0000}
@media(max-width:800px){.registration-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.simple-header{flex-wrap:wrap}.simple-header nav{gap:18px;flex-wrap:wrap}.registration-home{padding:45px 18px}.registration-grid{grid-template-columns:1fr}.registration-card{padding:24px;min-height:140px}.registration-intro{font-size:14px;margin-bottom:30px}}
.registration-card{position:relative;isolation:isolate;overflow:hidden;aspect-ratio:3/4;min-height:0;padding:0;background:#383838;color:#fff;border:0}.registration-cover{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.registration-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding-bottom:85px;font-size:14px;color:#bdbdbd;background:linear-gradient(145deg,#5a5a5c,#383838)}.registration-overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;padding:24px;background:linear-gradient(to bottom,transparent 20%,rgba(0,0,0,.15) 38%,rgba(0,0,0,.86) 100%)}.registration-card .registration-number{color:#fff;opacity:.8}.registration-card h2{margin:10px 0 16px;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.4)}.registration-card .registration-action{color:#fff;margin:0;font-size:13px}.registration-card.is-closed .registration-action{color:#fff;opacity:.7}.registration-card[href]:hover{background:#383838;box-shadow:0 0 0 2px #ad0000}.registration-card[href]:hover .registration-action{text-decoration:underline}.registration-card.is-closed .registration-cover{filter:grayscale(.7)}
@media(max-width:600px){.registration-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.registration-card{aspect-ratio:3/4;border-radius:16px}.registration-overlay{padding:15px}.registration-card h2{font-size:16px;margin:8px 0 12px}.registration-placeholder{font-size:11px;padding-bottom:95px}.registration-card .registration-number{font-size:11px}}
@media(max-width:360px){.registration-grid{grid-template-columns:1fr}.registration-card{aspect-ratio:3/4}.registration-card h2{font-size:21px}.registration-overlay{padding:24px}.registration-placeholder{font-size:14px}}
.registration-overlay{background:linear-gradient(to bottom,rgba(24,16,12,.04) 30%,rgba(24,16,12,.12) 55%,rgba(24,16,12,.85) 100%)}
.registration-cover{object-position:center center}.registration-card h2{letter-spacing:.02em}.registration-card .registration-number{letter-spacing:.12em}
.homa-service{display:block;text-align:left;background:#f0f0f0;padding:36px 42px;border-radius:24px;margin-top:20px;text-decoration:none;color:#383838}.homa-service h3{font-size:clamp(26px,3.3vw,38px);line-height:1.3;margin:16px 0 20px;letter-spacing:-.03em}.homa-service:hover .simple-link{text-decoration:underline}.homa-service:focus-visible{outline:2px solid #ad0000;outline-offset:4px}
@media(max-width:600px){.homa-service{padding:30px;border-radius:20px;margin-top:14px}}
.simple-tangmi{padding:85px 24px;background:#f0f0f0;margin-bottom:85px}.simple-tangmi h2{font-size:clamp(30px,4vw,46px);line-height:1.3;letter-spacing:-.035em;margin:0 0 22px}.simple-tangmi>p:not(.simple-eyebrow){font-size:17px;color:#5a5a5c;line-height:1.8;margin:0 0 25px}
@media(max-width:600px){.simple-tangmi{padding:65px 20px;margin-bottom:65px}.simple-header nav{gap:16px}}
.tangmi-lead{max-width:690px;margin:0 auto 35px;font-size:17px;line-height:1.9;color:#5a5a5c}.tangmi-concepts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;text-align:left;margin:42px 0 22px}.tangmi-concepts article{border-top:1px solid #dedede;padding-top:22px}.tangmi-concepts h2{font-size:21px;margin:0 0 12px}.tangmi-concepts p{font-size:15px;line-height:1.9;color:#5a5a5c;margin:0}.tangmi-sources{text-align:left;font-size:12px;color:#5a5a5c;margin-bottom:55px}.tangmi-sources summary{cursor:pointer;min-height:32px}.tangmi-sources a{color:#5a5a5c}.tangmi-projects{border-top:1px solid #dedede;padding-top:55px}.tangmi-projects>h2{font-size:clamp(27px,4vw,38px);margin:0 0 20px;letter-spacing:-.03em}
@media(max-width:600px){.tangmi-lead{font-size:15px;text-align:left}.tangmi-concepts{grid-template-columns:1fr;gap:20px;margin-top:28px}.tangmi-sources{margin-bottom:35px}.tangmi-projects{padding-top:35px}}
.home-media{max-width:1000px;margin:36px auto 65px;padding:0 20px}.home-media img{display:block;width:100%;height:auto;max-height:780px;object-fit:contain;border-radius:16px}.simple-hero .home-media{padding:0;margin:36px auto}.home-media img[src]{background:#fff}
