
#contact{--green:#172b25;--ivory:#f3f1ec;--lime:#dbe8a8;font-family:Arial,sans-serif;color:var(--ivory)}#contact *{box-sizing:border-box}#contact .stage{height:760px;position:relative;overflow:hidden;background:var(--green);isolation:isolate}#contact header{position:relative;z-index:5;display:flex;align-items:center;padding:25px 32px;border-bottom:1px solid #ffffff25;gap:30px}#contact .logo{font-size:26px;font-weight:800;font-style:italic;letter-spacing:-1px}#contact nav{margin-left:auto;margin-right:80px;display:flex;flex-wrap:wrap;gap:18px;font-size:12px}#contact nav span:last-child{text-decoration:underline;text-underline-offset:5px}#contact button{font:inherit;color:inherit;border:1px solid currentColor;background:transparent;border-radius:40px;padding:14px 22px;min-height:44px}#contact button:hover{background:#ffffff15}#contact small{font-size:11px;letter-spacing:1.6px;text-transform:uppercase}#contact h1{font-size:clamp(45px,6.6vw,76px);font-weight:400;letter-spacing:-3px;line-height:1.04;margin:20px 0 26px}#contact h2{font-size:42px;font-weight:400;letter-spacing:-1.8px;line-height:1.1;margin:18px 0}#contact p{font-size:15px;line-height:1.6}#contact .intro{position:absolute;z-index:2;transition:opacity .3s,transform .65s}#contact .shape{position:absolute;z-index:1;transition:all 1s cubic-bezier(.22,1,.36,1);background:radial-gradient(ellipse at 40% 30%,#eff3c9,#a3b489 45%,#486647 75%,#1e392e);box-shadow:0 0 70px #c7de9b20,inset 0 0 0 1px #eaf1d580}#contact footer{position:absolute;bottom:24px;left:32px;right:32px;display:flex;justify-content:space-between;gap:15px;font-size:11px;z-index:4}#contact .opened .intro{opacity:0;transform:translateY(-20px);visibility:hidden}#contact .inside{position:absolute;z-index:3;left:8%;right:8%;top:135px;opacity:0;visibility:hidden;transform:translateY(25px);transition:opacity .45s .2s,transform .65s .15s;color:var(--green)}#contact .opened .inside{opacity:1;visibility:visible;transform:none}#contact .inside button{border-color:#172b2540}#contact .back{padding:8px 0;border:0;font-size:12px}#contact .choices{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0}#contact .choices button[aria-pressed=true]{background:var(--green);color:var(--ivory)}#contact .result{border-top:1px solid #172b2533;padding-top:20px;display:grid;grid-template-columns:1.3fr 1fr;gap:35px}#contact .result p{margin:0 0 14px}#contact .result a{display:inline-block;color:inherit;font-size:17px;text-underline-offset:6px}#contact .orb .shape{width:440px;height:440px;right:5%;top:170px;border-radius:50%}#contact .orb .intro{left:6%;top:195px;width:57%}#contact .orb .intro button{background:var(--ivory);color:var(--green);border:0}#contact .orb.opened .shape{width:92%;height:570px;right:4%;top:110px;border-radius:32px}#contact .slit .shape{width:6px;left:50%;top:125px;height:505px;box-shadow:0 0 45px #dbe8a877}#contact .slit .intro{inset:205px 7% auto;display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}#contact .slit h1{font-size:65px}#contact .slit .intro p{max-width:220px;margin-bottom:28px}#contact .slit.opened .shape{width:92%;left:4%;height:570px;top:110px;border-radius:4px;background:#dce2c9}#contact .diamond .shape{width:360px;height:360px;left:calc(50% - 180px);top:215px;transform:rotate(45deg);border-radius:25px}#contact .diamond .intro{top:215px;left:10%;right:10%;text-align:center}#contact .diamond .intro h1{text-shadow:0 2px 30px #172b2544}#contact .diamond .intro button{background:var(--green)}#contact .diamond.opened .shape{width:92%;height:570px;left:4%;top:110px;transform:rotate(0);border-radius:25px;background:#dce2c9}#contact .horizon{background:var(--ivory);color:var(--green)}#contact .horizon header{border-color:#172b2525}#contact .horizon .shape{width:130%;height:430px;left:-15%;top:455px;border-radius:50% 50% 0 0;background:radial-gradient(ellipse at 50% 0%,#a5b88a,#456443 55%,#172b25);box-shadow:0 -15px 65px #789b6330}#contact .horizon .intro{top:155px;left:10%;right:10%;text-align:center}#contact .horizon h1{margin:18px 0 20px}#contact .horizon footer{color:var(--ivory)}#contact .horizon.opened .shape{width:92%;left:4%;top:110px;height:570px;border-radius:24px;background:#dce2c9}#contact .horizon.opened footer{color:var(--green)}#contact .frame .shape{width:340px;height:475px;right:8%;top:145px;border-radius:4px;transform:perspective(900px) rotateY(-22deg);box-shadow:18px 18px 0 #53674b,36px 36px 0 #2c4435}#contact .frame .intro{left:6%;top:205px;width:52%}#contact .frame .intro h1{font-size:68px}#contact .frame.opened .shape{width:92%;right:4%;top:110px;height:570px;transform:perspective(900px) rotateY(0);border-radius:12px;box-shadow:0 0 0 transparent;background:#dce2c9}#contact .frame .inside .result{grid-template-columns:1fr 1fr}#contact .frame .inside{left:10%;right:10%}
@media(max-width:650px){#contact .stage{height:900px}#contact header{padding:20px;display:block;height:110px}#contact nav{margin:17px 0 0;gap:12px;font-size:11px}#contact .logo{font-size:23px}#contact h1,#contact .slit h1,#contact .frame .intro h1{font-size:49px;letter-spacing:-2px}#contact .orb .shape{width:300px;height:300px;top:300px;right:-30px}#contact .orb .intro,#contact .frame .intro{left:8%;top:170px;width:84%}#contact .slit .intro{top:170px;grid-template-columns:1fr;gap:8px;left:8%;right:8%}#contact .slit .shape{left:90%;height:600px}#contact .slit .intro p{max-width:75%}#contact .diamond .shape{width:245px;height:245px;left:calc(50% - 122px);top:260px}#contact .diamond .intro{top:220px}#contact .frame .shape{width:220px;height:340px;right:10%;top:330px}#contact .inside{top:145px;left:9%;right:9%}#contact h2{font-size:34px}#contact .result,#contact .frame .inside .result{grid-template-columns:1fr;gap:20px}#contact .choices{gap:6px}#contact .choices button{padding:11px 13px;font-size:13px}#contact .opened .shape{height:710px!important}#contact footer{left:20px;right:20px;flex-wrap:wrap;font-size:10px}#contact .horizon .shape{top:480px}#contact .horizon .intro{top:175px}}
@media(prefers-reduced-motion:reduce){#contact *{transition:none!important}}
#contact .theme-0{--page:#172b25;--text:#f3f1ec;--light:#eff3c9;--mid:#a3b489;--deep:#486647;--edge:#1e392e;--panel:#dde4cf;--green:#172b25;--ivory:#f3f1ec;--cta:#e3eac5;--cta-ink:#172b25}
#contact .theme-1{--page:#f3f1ec;--text:#343d29;--light:#f7f0c7;--mid:#c6ca99;--deep:#88936c;--edge:#616f4d;--panel:#e4e6d5;--green:#343d29;--ivory:#f3f1ec;--cta:#343d29;--cta-ink:#f3f1ec}
#contact .theme-2{--page:#793f31;--text:#fff0df;--light:#fff0cb;--mid:#e4b68b;--deep:#bb7858;--edge:#8b4936;--panel:#f1dfca;--green:#593125;--ivory:#fff0df;--cta:#f1dfca;--cta-ink:#593125}
#contact .theme-3{--page:#111e35;--text:#edf2fb;--light:#ddf2ff;--mid:#9cbfe7;--deep:#456eb1;--edge:#243b68;--panel:#dce7f4;--green:#172c4b;--ivory:#edf2fb;--cta:#b9d5f3;--cta-ink:#172c4b}
#contact .theme-4{--page:#252729;--text:#f1f0ed;--light:#ffffff;--mid:#c9cecf;--deep:#7e898d;--edge:#454e52;--panel:#e2e5e4;--green:#292d30;--ivory:#f1f0ed;--cta:#e2e5e4;--cta-ink:#292d30}
#contact .theme-5{--page:#30231e;--text:#f8efdf;--light:#fff3d2;--mid:#d6bd96;--deep:#997c59;--edge:#5b4533;--panel:#eee2ce;--green:#403025;--ivory:#f8efdf;--cta:#e5d0aa;--cta-ink:#403025}
#contact .theme-6{--page:#332337;--text:#faedf4;--light:#fff0e9;--mid:#d9b4ca;--deep:#a06d99;--edge:#604469;--panel:#eedded;--green:#442c45;--ivory:#faedf4;--cta:#e8c7d8;--cta-ink:#442c45}
#contact .theme-7{--page:#12383c;--text:#edf8f4;--light:#e0fff1;--mid:#a4d7c7;--deep:#50978c;--edge:#245b5b;--panel:#d7ebe3;--green:#153c3c;--ivory:#edf8f4;--cta:#bce4d4;--cta-ink:#153c3c}
#contact .stage.orb{background:var(--page);color:var(--text)}
#contact .orb header{border-color:color-mix(in srgb,var(--text) 18%,transparent)}
#contact .orb .shape{background:radial-gradient(ellipse at 40% 30%,var(--light),var(--mid) 45%,var(--deep) 75%,var(--edge));box-shadow:0 0 70px color-mix(in srgb,var(--mid) 14%,transparent),inset 0 0 0 1px color-mix(in srgb,var(--light) 45%,transparent)}
#contact .orb .intro button{background:var(--cta);color:var(--cta-ink)}
#contact .orb .intro button:hover{filter:brightness(1.08)}
#contact .orb.opened .shape{background:var(--panel)}
#contact .orb .inside button{border-color:color-mix(in srgb,var(--green) 25%,transparent)}
#contact .orb .inside button:hover{background:color-mix(in srgb,var(--green) 8%,transparent)}
#contact .orb .choices button[aria-pressed=true]{background:var(--green);color:var(--ivory)}
#contact .orb .result{border-color:color-mix(in srgb,var(--green) 20%,transparent)}
#contact .orb .shape{overflow:hidden;transform:translateY(var(--float,0px));transition:width 1s cubic-bezier(.22,1,.36,1),height 1s cubic-bezier(.22,1,.36,1),right 1s cubic-bezier(.22,1,.36,1),top 1s cubic-bezier(.22,1,.36,1),border-radius 1s cubic-bezier(.22,1,.36,1),transform .8s ease}
#contact .orb .shape:before{content:'';position:absolute;inset:-20%;border-radius:50%;background:radial-gradient(ellipse at 35% 28%,#ffffffb3 0%,#e8eff080 15%,transparent 48%),conic-gradient(from 20deg,transparent,#ffffff20,transparent 45%,#151c2233,transparent);filter:blur(16px);animation:db-silver-light 12s ease-in-out infinite alternate;opacity:.8;transition:opacity .3s}
#contact .orb .shape:after{content:'';position:absolute;inset:0;border-radius:inherit;box-shadow:inset 2px 3px 5px #ffffff50,inset -12px -18px 40px #11182035;transition:opacity .3s}
#contact .orb.opened .shape:before,#contact .orb.opened .shape:after{opacity:0}
@keyframes db-silver-light{from{transform:rotate(-20deg) translate(-3%,-2%)}to{transform:rotate(30deg) translate(5%,4%)}}
@media(prefers-reduced-motion:reduce){#contact .orb .shape:before{animation:none}#contact .orb .shape{transform:none}}
/* Contact-only shell, keeping the shared navigation and inquiry dialog. */
body[data-view=contact],body[data-view=contact]>header{background:#252729;color:#f1f0ed}
body[data-view=contact]>header{border-color:#ffffff25}
body[data-view=contact]>header .brand img{filter:brightness(0) invert(1);mix-blend-mode:normal}
body[data-view=contact] .edition-bar{display:none}
#contact{padding:0;max-width:none;width:100%;margin:0}
#contact .stage{height:max(700px,calc(100svh - 88px));max-width:1600px;margin:0 auto}
#contact .orb .shape{top:95px}
#contact .orb .intro{top:140px}
#contact .orb.opened .shape{top:35px;height:calc(100% - 105px)}
#contact .inside{top:65px}
#contact .inside h2{font-size:42px}
#contact .inside-label{display:block;margin-top:22px}
#contact .result p a{margin:0;font-size:16px}
#contact .eclipse-inquiry{display:block;margin-top:30px;font-size:13px}
#contact .count{padding:2px 6px;margin-left:6px}
#contact .motion-paused .shape:before{animation-play-state:paused}
#contact button:focus-visible,#contact a:focus-visible{outline:2px solid currentColor;outline-offset:5px}
@media(min-width:1200px){#contact .orb .shape{width:500px;height:500px;right:10%}#contact .orb.opened .shape{width:92%;right:4%;height:calc(100% - 105px)}#contact .orb .intro{left:8%}#contact h1{font-size:92px}}
@media(max-width:650px){#contact .stage{height:900px}#contact .orb .intro{top:70px}#contact .orb .shape{top:270px;right:5%;width:280px;height:280px}#contact .orb.opened .shape{top:20px;right:4%;width:92%;height:810px!important}#contact .inside{top:40px}#contact .inside h2{font-size:34px}#contact .eclipse-inquiry{margin-top:20px}#contact .result{gap:24px}#contact footer{bottom:25px}}
#contact .orb .intro,#contact .orb .intro h1,#contact .orb .intro small{color:#f1f0ed} #contact .inside,#contact .inside h2,#contact .inside p,#contact .inside small{color:#292d30}
/* Department contacts and message form. */
#contact .stage.opened{min-height:960px}
#contact .result{grid-template-columns:1fr 1.2fr;gap:60px}
#contact .result h3{font-size:26px;font-weight:400;letter-spacing:-.7px;margin:0 0 14px;color:#292d30}
#contact .department-info h3{margin:12px 0}
#contact .result .department-phone{font-size:28px;margin:0 0 26px;text-decoration:none}
#contact .general-contact{margin-top:10px}
#contact .department-form{min-width:0;margin:0}
#contact .department-form .form-department{font-size:13px;margin:0 0 22px}
#contact .contact-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
#contact .department-form label{display:flex;flex-direction:column;gap:7px;font-size:13px;position:relative;margin:0 0 16px}
#contact .department-form .field-label{display:block;position:static}
#contact .department-form input,#contact .department-form textarea{width:100%;min-width:0;background:#f6f7f380;border:1px solid #292d303b;color:#292d30;border-radius:8px;padding:11px 12px;font:inherit;font-size:16px;box-shadow:none}
#contact .department-form textarea{resize:vertical;min-height:110px;max-height:200px}
#contact .department-form .prepare-contact{background:#292d30;color:#f1f0ed;border-color:#292d30}
#contact .department-form .form-note,#contact .department-form .form-status{font-size:12px;line-height:1.5;margin:12px 0 0;max-width:480px}
@media(max-width:800px){#contact .result{gap:30px}}
@media(max-width:650px){#contact .stage.opened{height:1500px;min-height:1500px}#contact .orb.opened .shape{height:calc(100% - 85px)!important}#contact .result{grid-template-columns:1fr;gap:32px}#contact .contact-form-grid{grid-template-columns:1fr 1fr;gap:12px}#contact .inside{left:9%;right:9%}#contact .choices{gap:8px}#contact .department-form textarea{min-height:110px}}
#contact .orb .inside .prepare-contact,#contact .orb .inside .prepare-contact:hover{background:#292d30;color:#f1f0ed;border-color:#292d30}

#contact .contact-selections{margin:20px 0 24px;padding:18px 0;border-top:1px solid #292d3025;border-bottom:1px solid #292d3025}
#contact .contact-selections>small{display:block;margin-bottom:12px}
#contact .contact-selections a{font-size:13px;margin-top:12px}
#contact [data-contact-products]{max-height:250px;overflow:auto;overscroll-behavior:contain}
#contact .contact-product-row{display:grid;grid-template-columns:48px 1fr 36px;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #292d3015;font-size:13px;line-height:1.5}
#contact .contact-product-row img{width:48px;height:42px;object-fit:contain}
#contact .contact-product-row button{padding:0;min-height:36px;width:36px;font-size:20px}
