/* Contact and policies use the same orbital palette, with a quieter reading surface. */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.footer-main{display:grid;grid-template-columns:1.35fr .7fr 1fr 1.15fr;gap:42px;padding-block:32px 45px}
.footer-intro p{font-size:18px;line-height:1.8;margin-block:22px 18px;max-width:310px}
.footer-main h2{font-size:17px;font-weight:600;margin-bottom:18px;letter-spacing:0}
.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:7px}
.footer-links a,.footer-links button{font-size:15px;color:var(--muted);text-align:start;min-height:34px;padding:4px 0;line-height:1.7}
.footer-links a:hover,.footer-links button:hover,.footer-contact>a:hover{color:var(--blue)}
.footer-contact{min-width:0}.footer-contact>a:not(.text-link){display:block;width:fit-content;font-family:'Outfit',sans-serif;font-size:20px;margin-block:7px;letter-spacing:.01em}
.footer-contact address{font-size:16px;font-style:normal;line-height:1.8;color:var(--muted);margin-block:17px 8px;max-width:270px}
.footer-contact .text-link,.footer-intro .text-link{font-size:15px}
.company-registration{display:flex;flex-wrap:wrap;gap:4px 24px;padding-top:16px;font-size:12px;line-height:1.8;color:var(--soft)}
.company-registration bdi{font-family:'Outfit',sans-serif;letter-spacing:.03em}
.contact-hero{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:70px;padding-top:170px;padding-bottom:60px;min-height:710px}
.contact-hero h1{font-size:clamp(55px,6.3vw,88px);margin-block:24px;line-height:1.12}
.contact-hero p{font-size:23px;line-height:1.8;max-width:630px;margin-bottom:30px}
.contact-orbit{min-width:0;position:relative}.contact-orbit .planet-stage{max-width:430px;margin:auto}.contact-orbit .planet-label{display:none}
.contact-location{position:relative;display:flex;align-items:center;justify-content:center;gap:9px;color:var(--blue);font-size:15px;margin-top:30px}.contact-location svg{width:18px;height:18px}
.contact-details{padding-block:30px 80px;display:grid;grid-template-columns:1fr 1fr 1.15fr;gap:22px}
.contact-channel{border:1px solid var(--line);background:linear-gradient(155deg,var(--panel),color-mix(in srgb,var(--panel-2),transparent 55%));border-radius:24px;padding:32px;display:flex;align-items:flex-start;flex-direction:column;min-width:0;transition:transform .25s,border-color .25s}
a.contact-channel:hover{border-color:var(--blue);transform:translateY(-4px)}.contact-channel>svg{width:26px;height:26px;color:var(--blue);margin-bottom:24px}.contact-channel>span{font-size:16px;color:var(--muted);margin-bottom:10px}.contact-channel>strong{font-size:clamp(22px,2.3vw,30px);font-family:'Outfit',sans-serif;font-weight:500;max-width:100%;overflow-wrap:anywhere}
.contact-channel small{display:flex;align-items:center;gap:12px;margin-top:24px;color:var(--soft);font-size:14px}.contact-channel small svg{width:15px;height:15px}.contact-channel address{font-size:20px;line-height:1.75;font-style:normal;color:var(--ink)}
.contact-topics{display:grid;grid-template-columns:1fr 1fr;gap:95px;padding-top:40px}.contact-topics h2{font-size:44px}.contact-topics .section-head{margin-bottom:24px}.contact-topics .section-head p{font-size:20px}.contact-privacy-note{font-size:16px;line-height:1.8;max-width:520px}.contact-privacy-note a{color:var(--blue);text-decoration:underline;text-underline-offset:4px}.topic-links>a{display:flex;align-items:center;gap:24px;padding-block:28px;border-bottom:1px solid var(--line)}.topic-links>a:first-child{border-top:1px solid var(--line)}.topic-links strong{display:block;font-size:24px;font-weight:500}.topic-links small{display:block;font-size:17px;color:var(--muted);margin-top:8px;line-height:1.7}.topic-links svg{width:23px;height:23px;margin-inline-start:auto;color:var(--blue)}.topic-links>a:hover strong{color:var(--blue)}
.policy-shell{padding-top:0}.policy-meta{display:flex;justify-content:space-between;flex-wrap:wrap;gap:15px;font-size:15px;color:var(--soft);padding-block:0 24px}.policy-meta a{display:flex;gap:12px;align-items:center;color:var(--blue)}.policy-meta svg{width:15px;height:15px}
.policy-switcher{display:flex;flex-wrap:wrap;gap:10px;border-block:1px solid var(--line);padding-block:20px;margin-bottom:48px}.policy-switcher a{font-size:16px;border:1px solid transparent;padding:11px 17px;border-radius:9px;color:var(--muted)}.policy-switcher a[aria-current=page]{background:var(--panel-2);border-color:var(--line);color:var(--ink)}.policy-switcher a:hover{color:var(--blue)}
.policy-layout{display:grid;grid-template-columns:255px minmax(0,1fr);gap:75px;align-items:start}.policy-toc{position:sticky;top:120px;max-height:calc(100svh - 150px);overflow:auto;padding:4px 4px 18px}.policy-toc h2{font-size:19px;margin-bottom:20px;letter-spacing:0}.policy-toc nav{display:grid;gap:3px}.policy-toc a{display:flex;align-items:baseline;gap:12px;font-size:15px;color:var(--muted);line-height:1.7;padding:9px 0}.policy-toc a>span{font-family:'Outfit',sans-serif;font-size:12px;color:var(--soft)}.policy-toc a:hover{color:var(--blue)}
.policy-content{min-width:0;max-width:880px}.policy-summary{display:flex;align-items:flex-start;gap:18px;border:1px solid var(--line);background:var(--panel);border-radius:18px;padding:28px;margin-bottom:38px}.policy-summary svg{width:26px;height:26px;color:var(--blue);margin-top:5px}.policy-summary p{font-size:21px;color:var(--ink);line-height:1.8}
.policy-article{scroll-margin-top:120px;padding-block:12px 38px;margin-bottom:25px;border-bottom:1px solid var(--line)}.policy-article h2{font-size:30px;line-height:1.5;margin-bottom:20px;letter-spacing:-.02em}.policy-article p,.policy-article li{font-size:19px;line-height:1.95;overflow-wrap:anywhere}.policy-article p+p{margin-top:20px}.policy-article ul{margin:18px 0 0;padding-inline-start:25px;color:var(--muted)}.policy-article li{padding-inline-start:9px;margin-bottom:17px}.policy-article li::marker{color:var(--blue)}.policy-article .text-link{color:var(--blue);margin-top:15px}
.policy-sources{font-size:16px;border:1px solid var(--line);border-radius:15px;padding:20px 24px;margin-top:40px}.policy-sources summary{display:flex;align-items:center;justify-content:space-between;gap:15px;cursor:pointer;list-style:none;color:var(--muted)}.policy-sources summary::-webkit-details-marker{display:none}.policy-sources svg{width:17px;height:17px}.policy-sources ul{padding-inline-start:20px;margin-bottom:0}.policy-sources li{padding:8px 0;color:var(--blue)}.policy-sources a{display:inline-flex;align-items:center;gap:10px;font-size:16px;line-height:1.8}
.policy-contact{padding-block:45px 0}.policy-contact h2{font-size:28px;margin-bottom:18px}.policy-contact a{display:inline-flex;gap:18px;align-items:center;color:var(--blue);font-family:'Outfit',sans-serif;font-size:26px}.policy-contact svg{width:20px;height:20px}
.storage-status-card{padding:25px;border:1px solid var(--line);border-radius:18px;margin-bottom:35px}.storage-status-card p{font-size:18px;margin-bottom:18px}.storage-table{border-collapse:collapse;width:100%;text-align:start;margin-bottom:24px}.storage-table caption{text-align:start;font-size:15px;color:var(--soft);padding-bottom:14px}.storage-table th{font-size:15px;text-align:start;font-weight:500;background:var(--panel-2);padding:14px}.storage-table td{font-size:16px;padding:18px 14px;border-bottom:1px solid var(--line);vertical-align:top;color:var(--muted);line-height:1.8}.storage-table code{font-size:13px;color:var(--blue);word-break:break-all}
.storage-notice{position:fixed;inset-inline:24px;bottom:20px;z-index:60;max-width:1120px;margin:auto;padding:22px 26px;display:flex;align-items:center;gap:30px;background:var(--glass);border:1px solid var(--line);border-radius:20px;backdrop-filter:blur(25px);box-shadow:0 15px 65px var(--shadow)}.storage-notice strong{font-size:19px;font-weight:500}.storage-notice p{font-size:15px;line-height:1.8;margin-top:5px;max-width:680px}.storage-notice p a{color:var(--blue);text-decoration:underline;text-underline-offset:4px}.storage-actions{display:flex;gap:10px;flex-shrink:0}.storage-actions button{border:1px solid var(--line);border-radius:9px;padding:11px 16px;min-height:46px;font-size:15px;background:var(--panel-2);white-space:nowrap}.storage-actions button:hover{border-color:var(--blue)}.storage-notice-open #assistant-launch{bottom:185px}
.storage-dialog .button-row{margin-bottom:18px}.storage-dialog .text-link{font-size:16px;color:var(--blue)}.storage-setting{display:flex;align-items:center;justify-content:space-between;gap:22px;border-top:1px solid var(--line);margin-top:25px;padding-top:22px}.storage-setting strong{font-size:19px;font-weight:500}.storage-setting p{font-size:16px;margin-top:6px}.storage-setting>span{font-size:13px;white-space:nowrap;color:var(--blue)}.storage-setting input{width:24px;height:24px;flex-shrink:0;accent-color:var(--blue)}
#brief-form .scope-note a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
@media(max-width:1180px){.footer-main{grid-template-columns:1.1fr .7fr 1fr 1.1fr;gap:25px}.policy-layout{grid-template-columns:220px minmax(0,1fr);gap:40px}.contact-hero{gap:25px}.contact-channel{padding:25px}.contact-topics{gap:45px}.storage-notice{gap:20px}.storage-actions{flex-direction:column}.storage-notice-open #assistant-launch{bottom:215px}}
@media(max-width:900px){.footer-main{grid-template-columns:1fr 1fr;gap:40px}.footer-intro{grid-column:auto}.footer-contact address{max-width:100%}.contact-hero{min-height:auto;padding-top:150px}.contact-hero h1{font-size:60px}.contact-hero p{font-size:21px}.contact-details{grid-template-columns:1fr 1fr}.contact-channel:last-child{grid-column:1/-1}.contact-channel address{max-width:550px}.policy-layout{grid-template-columns:1fr}.policy-toc{position:static;max-height:none;border-bottom:1px solid var(--line);padding-bottom:25px}.policy-toc nav{grid-template-columns:1fr 1fr;gap:0 25px}.policy-content{max-width:none}.policy-switcher{margin-bottom:30px}}
@media(max-width:650px){.footer-main{grid-template-columns:1fr 1fr;gap:32px 25px;padding-bottom:28px}.footer-intro,.footer-contact{grid-column:1/-1}.footer-intro p{max-width:400px}.footer-links a,.footer-links button{font-size:14px}.footer-main h2{font-size:16px}.footer-contact{padding-top:5px}.footer-contact>a:not(.text-link){font-size:22px}.footer-contact address{max-width:340px}.company-registration{gap:4px 16px;flex-direction:column;font-size:12px}.contact-hero{grid-template-columns:1fr;gap:20px;padding-top:140px;padding-bottom:20px}.contact-hero h1{font-size:58px}.contact-hero p{font-size:21px}.contact-orbit{max-width:330px;width:100%;margin:auto}.contact-orbit .planet-stage{width:85%}.contact-location{margin-top:10px;font-size:14px}.contact-details{grid-template-columns:1fr;gap:15px;padding-bottom:60px}.contact-channel:last-child{grid-column:auto}.contact-channel{padding:25px;min-height:190px}.contact-channel>svg{margin-bottom:17px}.contact-channel>strong{font-size:29px}.contact-channel address{font-size:21px}.contact-topics{grid-template-columns:1fr;gap:30px;padding-top:20px}.contact-topics h2{font-size:34px}.topic-links strong{font-size:23px}.topic-links small{font-size:16px}.policy-meta{font-size:14px}.policy-switcher{display:grid;grid-template-columns:1fr 1fr;gap:6px}.policy-switcher a{font-size:14px;padding:10px}.policy-layout{gap:25px}.policy-toc nav{grid-template-columns:1fr}.policy-toc a{font-size:16px;padding-block:8px}.policy-summary{padding:23px 20px;gap:13px}.policy-summary p{font-size:19px}.policy-article h2{font-size:26px}.policy-article p,.policy-article li{font-size:18px;line-height:1.95}.policy-contact h2{font-size:25px}.policy-contact a{font-size:25px}.policy-sources{padding:18px}.storage-table thead{display:none}.storage-table,.storage-table tbody,.storage-table tr,.storage-table td{display:block}.storage-table tr{border:1px solid var(--line);border-radius:12px;padding:10px;margin-bottom:14px}.storage-table td{border:0;padding:8px 6px;font-size:15px}.storage-table td:before{content:attr(data-label);display:block;font-size:12px;color:var(--soft);margin-bottom:4px}.storage-table code{font-size:14px}.storage-notice{inset-inline:12px;bottom:12px;padding:18px;display:block;border-radius:17px}.storage-notice strong{font-size:18px}.storage-notice p{font-size:14px}.storage-actions{flex-direction:row;margin-top:14px;gap:8px}.storage-actions button{flex:1;min-width:0;white-space:normal;padding:10px 8px;font-size:14px}.storage-notice-open #assistant-launch{bottom:250px}.storage-setting{gap:14px}.storage-setting strong{font-size:18px}.storage-setting p{font-size:15px}.storage-dialog .button{font-size:15px;gap:12px}.storage-dialog h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){a.contact-channel:hover{transform:none}}
