:root{--wrap:min(1180px,calc(100% - 48px))}
body{line-height:1.6;background:#fff}
.page-hero{min-height:410px;padding:64px 24px}
.page-hero-content{max-width:900px;margin:auto;text-align:center}
.page-hero h1{font-size:clamp(40px,5vw,64px);line-height:1.15;letter-spacing:-.04em;max-width:none;margin:20px auto}
.page-hero p{font-size:clamp(17px,2vw,22px);line-height:1.65;max-width:760px;margin:0 auto;text-wrap:balance}
.page-hero-actions{margin-top:26px}
.contact-section{padding:64px 0;background:#fff}
.contact-section:before,.form-card:before{display:none}
.contact-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:64px}
.intro{position:static;padding-top:12px;min-width:0}
.eyebrow{font-size:12px;font-weight:600;letter-spacing:.1em;margin-bottom:16px}
.intro h2{font-size:clamp(30px,3.2vw,42px);line-height:1.25;letter-spacing:-.035em;margin-bottom:20px}
.intro>p{font-size:16px;line-height:1.8}
.channels{margin-top:28px;gap:12px}
.channel{min-height:80px;padding:16px;border-radius:16px;box-shadow:none;gap:14px}
.channel:after{display:none}
.channel b{font-size:15px;font-weight:500;overflow-wrap:anywhere}
.channel small{font-size:11px;font-weight:600;letter-spacing:.05em}
.channel .icon{flex-basis:44px;height:44px;border-radius:12px}
.form-card{padding:32px;border-radius:20px;background:var(--p50);box-shadow:0 12px 36px #65258b0b}
.form-card h2{font-size:26px;line-height:1.35;letter-spacing:-.025em}
.form-card>p{font-size:15px;line-height:1.8;margin:10px 0 24px}
.form-grid{gap:20px;grid-template-columns:repeat(2,minmax(0,1fr))}
.field{min-width:0}
.field label{font-weight:600;font-size:13px}
.field input,.field select,.field textarea{border-radius:10px;min-height:50px;padding:12px 14px;font-size:16px;line-height:1.5}
.field textarea{min-height:140px}
.project-select{position:relative;min-width:0}
.project-select select[hidden]{display:none!important}
.project-select-trigger{width:100%;min-height:54px;padding:14px 44px 14px 16px;border:1px solid #d9c7e5;border-radius:12px;background:#fff;color:#292031;text-align:left;font:inherit;font-size:15px;font-weight:500;cursor:pointer;position:relative;transition:border-color .2s,box-shadow .2s}
.project-select-trigger:after{content:'';position:absolute;right:19px;top:22px;width:8px;height:8px;border-right:2px solid var(--p700);border-bottom:2px solid var(--p700);transform:rotate(45deg);transition:transform .2s}
.project-select-trigger:hover{border-color:var(--p500)}
.project-select-trigger:focus-visible,.is-open .project-select-trigger{outline:2px solid var(--p500);outline-offset:3px;box-shadow:0 0 0 5px #7029990b}
.is-open .project-select-trigger:after{transform:rotate(225deg);top:26px}
.project-select.is-open{z-index:20}
.project-select-menu{position:absolute;left:0;right:0;top:calc(100% + 10px);padding:7px;border:1px solid #e5d6ee;border-radius:16px;background:#fff;box-shadow:0 16px 40px #40155c25;max-height:290px;overflow-y:auto;animation:select-appear .18s ease-out}
.project-select-menu[hidden]{display:none}
.project-select-option{position:relative;min-height:44px;padding:11px 34px 11px 12px;border-radius:9px;font-size:14px;line-height:1.6;cursor:pointer;color:#392d43}
.project-select-option:hover,.project-select-option.active{background:var(--p50);color:var(--p800)}
.project-select-option[aria-selected=true]{background:var(--p700);color:#fff;font-weight:500}
.project-select-option[aria-selected=true]:after{content:'✓';position:absolute;right:13px}
@keyframes select-appear{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.project-select-menu{animation:none}.project-select-trigger,.project-select-trigger:after{transition:none}}
.field-error{font-size:13px;line-height:1.5}
.submit-row{flex-direction:column;align-items:stretch;gap:14px;margin-top:24px}
.submit-row .btn{width:100%;min-height:52px;font-weight:600;font-size:14px;box-shadow:none}
.privacy{max-width:none;font-size:12px;line-height:1.7;text-align:center}
.status{font-size:14px;font-weight:500;background:var(--p100);color:var(--p900);line-height:1.7}
.details{padding:64px 0;background:var(--p800)}
.details:after,.detail-card:after{display:none}
.detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.detail-lead{grid-column:1/-1;max-width:720px;margin:0 auto 12px;text-align:center}
.detail-lead h2{max-width:none;font-size:clamp(30px,3vw,40px);line-height:1.3;letter-spacing:-.035em}
.detail-lead p{max-width:none;font-size:16px;line-height:1.8;color:#f0e6f6}
.detail-card{min-height:0;padding:26px;border-radius:18px;box-shadow:none}
.detail-card h3{font-size:20px;font-weight:600;margin:22px 0 12px}
.detail-card p{font-size:15px;line-height:1.8;color:#f0e6f6}
.faq{padding:64px 0;background:var(--p50)}
.faq-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr);gap:64px}
.faq h2{font-size:clamp(30px,3.2vw,42px);line-height:1.25;letter-spacing:-.035em}
.faq-intro p{font-size:16px;line-height:1.8}
.faq-list{display:grid;gap:12px;padding:0;border:0;box-shadow:none}
.faq-item{border:1px solid var(--line);background:#fff;border-radius:16px;overflow:hidden}
.faq-item.open{border-color:#bd91d4}
.faq-q{padding:18px 22px;min-height:76px;font-size:16px;font-weight:600;line-height:1.6}
.faq-q span{transform:none!important;flex-basis:36px;font-weight:400}
.faq-a,.faq-item.open .faq-a{padding:0 22px;font-size:15px;line-height:1.8;max-height:0;transition:max-height .3s ease}
.faq-a p{margin:0;padding-bottom:22px}
.footer{padding:52px 0 24px;background:var(--p50)}
.footer-grid{grid-template-columns:1.5fr repeat(4,minmax(0,1fr));gap:32px}
.footer-col{gap:12px}.footer-col h3{font-weight:600;letter-spacing:.03em}
@media(max-width:980px){.contact-grid{gap:36px}.form-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){.contact-grid,.faq-grid{grid-template-columns:1fr;gap:30px}.contact-grid{max-width:680px}.detail-grid{grid-template-columns:1fr}.detail-lead{grid-column:auto}.intro>p{max-width:none}.page-hero{min-height:360px;padding:52px 24px}}
@media(max-width:520px){:root{--wrap:calc(100% - 36px)}.contact-section,.details,.faq{padding:48px 0}.form-card{padding:24px 20px}.faq-q{padding:18px}.faq-a,.faq-item.open .faq-a{padding:0 18px;font-size:16px}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.footer-brand{grid-column:1/-1}.footer-col:nth-last-child(-n+2){margin:0}}
@media(prefers-reduced-motion:reduce){.faq-a{transition:none!important}.channel:hover,.detail-card:hover,.btn:hover{transform:none}}
