@font-face{font-family:Montserrat;src:url('assets/Montserrat.ttf') format('truetype');font-weight:100 900;font-display:swap}:root{--bg:#383e42;--panel:#495156;--ink:#f6f6f3;--muted:#d2d6d8;--line:#687176;--accent:#c53931}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:125px}body{margin:0;background:var(--bg);color:var(--ink);font-family:Montserrat,Arial,sans-serif;font-size:14px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a,button,input,select,textarea{outline-offset:5px}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}::selection{background:var(--accent);color:white}.preview{padding:7px 5%;background:#495156;color:#f1f3f4;font-size:13px;letter-spacing:.13em;display:flex;justify-content:center;gap:20px}.preview span{letter-spacing:0;color:#d2d7da}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:8px 6%;border-bottom:1px solid var(--line);position:sticky;top:0;background:#383e42f7;backdrop-filter:blur(16px);z-index:10}.brand{width:115px;height:84px;display:flex;align-items:center}.brand img{width:100%;height:100%;object-fit:contain}nav{display:flex;gap:38px;font-size:13px}nav a:hover,.textlink:hover{color:#fff;text-decoration:underline;text-underline-offset:7px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:32px;background:var(--accent);color:white;padding:17px 22px;border:1px solid var(--accent);font-weight:600;font-size:13px;transition:background .2s}.button:hover{background:#a72b25}.button span{font-size:19px;line-height:1}.button.small{padding:12px 17px;font-size:13px}.hero{min-height:650px;position:relative;display:grid;grid-template-columns:1.15fr 1fr;align-items:center;padding:70px 7% 100px;overflow:hidden;background:radial-gradient(ellipse at 80% 35%,#657177 0,transparent 49%)}.eyebrow{font-size:13px;letter-spacing:.16em;font-weight:600;color:#d0d6d9;display:flex;align-items:center;gap:10px}.eyebrow i{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%}h1{font-size:clamp(43px,5.7vw,82px);font-weight:600;line-height:1.08;letter-spacing:-.055em;margin:25px 0}h1 em{font-style:normal;color:#e4e7e9}p{color:var(--muted)}.hero-copy>p{font-size:16px;line-height:1.9}.actions{display:flex;gap:28px;align-items:center;margin-top:34px}.textlink{font-size:13px;font-weight:600}.hero-mark{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:380px}.hero-mark>img{width:min(90%,390px);z-index:1;filter:drop-shadow(0 25px 30px #26303544)}.orbit{position:absolute;width:440px;height:440px;border-radius:50%;border:1px solid #ffffff09;background:radial-gradient(circle,#ffffff04,transparent 65%)}.orbit:after{content:'';position:absolute;inset:25px;border:1px solid #ffffff06;border-radius:50%}.mark-caption{font-size:13px;letter-spacing:.25em;color:#d0d6d9;margin-top:25px}.hero-bottom{position:absolute;bottom:22px;left:7%;right:7%;display:flex;justify-content:space-between;color:#c9d0d4;font-size:13px;letter-spacing:.14em}.trust{display:flex;justify-content:space-between;gap:20px;padding:23px 7%;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:13px;color:#e5e9eb;background:#485156}.section{padding:95px 7%;scroll-margin-top:25px}.section-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:45px}h2{font-size:clamp(30px,3.5vw,47px);line-height:1.17;letter-spacing:-.045em;font-weight:550;margin:18px 0 0}.section-head>p{font-size:13px;line-height:1.9;margin-bottom:4px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service{padding:30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;min-height:240px;transition:background .2s}.service:hover{background:#edf0f1}.service-top{display:flex;justify-content:space-between;color:#68747b;font-size:13px}.service svg{width:36px;height:36px;stroke:#46545c;stroke-width:1.3;fill:none;stroke-linecap:round;stroke-linejoin:round}.service h3{font-size:15px;font-weight:550;margin:22px 0 5px}.service p{font-size:13px;max-width:230px;line-height:1.8;margin:0 0 18px}.service>a{margin-top:auto;font-size:13px;color:#343e45;display:flex;justify-content:space-between}.additional{display:flex;gap:26px;flex-wrap:wrap;font-size:13px;padding-top:25px;color:#56636b}.additional>span:first-child{color:#5d6970}.lotus-section{background:#495156;display:grid;grid-template-columns:1fr 1fr}.lotus-visual{padding:60px 40px;background:radial-gradient(ellipse at center,#697a70,#45554c);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px}.lotus-visual img{width:270px;max-width:80%}.lotus-visual .eyebrow{font-size:13px;color:#e0e8e1}.edition{font-size:13px;letter-spacing:.2em;color:#d5e0d7}.lotus-copy{padding:70px 14% 65px 12%}.lotus-copy h2{font-size:36px}.lotus-copy>p{font-size:13px;line-height:1.95;margin:25px 0}.lotus-note{border-top:1px solid #7a8980;font-size:13px;color:#d3dcd5;padding-top:22px;margin-top:34px}.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.location-grid article{padding:35px;background:var(--panel);border-top:2px solid #859299}.location-top{display:flex;justify-content:space-between;gap:20px;font-size:13px;letter-spacing:.12em;color:#d4dce0}.location-grid h3{font-size:22px;font-weight:500;letter-spacing:-.04em;margin:32px 0 15px}.location-grid p{font-size:13px;line-height:1.9}.location-grid small{font-size:13px;color:#d7dee2}.tags{display:flex;gap:7px;flex-wrap:wrap;margin:25px 0}.tags span{border:1px solid #869299;padding:4px 9px;font-size:13px;color:#edf1f3}.about{text-align:center;padding:85px 20%;border-block:1px solid var(--line);background:#485156}.about .eyebrow{justify-content:center}.about p{font-size:13px;line-height:1.95;max-width:590px;margin:25px auto 0}.contact{display:grid;grid-template-columns:1fr 1fr;gap:12%}.contact>div>p{font-size:13px;line-height:1.9;margin-top:25px}.contact-note{margin-top:40px;display:flex;gap:20px;max-width:330px}.contact-note>span{font-size:30px;color:var(--accent)}.contact-note strong{font-size:13px;font-weight:550}.contact-note p{font-size:13px;line-height:1.85;margin-top:5px}form{display:flex;flex-direction:column}label{font-size:13px;color:#303c43;margin:0 0 8px}label span{color:#5e6b72;font-size:13px}input,select,textarea{background:#edf0f1;border:1px solid #b5bfc5;color:#26343b;padding:13px 14px;width:100%;border-radius:0;font-size:13px;margin-bottom:20px}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#64727a}form>.button{width:100%}.form-hint{font-size:13px;line-height:1.6;color:#56666e;margin-top:12px}.copy-button{background:transparent;border:1px solid #8c9ba3;color:white;padding:10px 18px;font-size:13px}#result{border-top:1px solid var(--line);padding-top:20px;margin-top:15px}#result label{display:block}#copy-status{font-size:13px}footer{padding:40px 7% 25px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}footer strong{display:block;font-size:13px;letter-spacing:.07em}footer span{font-size:13px;color:#d0d7db}footer>div:nth-child(2){display:flex;align-items:start;gap:25px;font-size:13px}footer button{background:none;color:#e1e6e9;border:0;padding:0;font-size:13px}footer small{width:100%;font-size:13px;color:#c7d0d5}dialog{background:#495156;color:#eee;border:1px solid #84929b;padding:40px;width:min(90%,650px);max-height:80vh}dialog::backdrop{background:#000b}dialog h2{font-size:28px}dialog p{font-size:13px}.close{position:absolute;right:15px;top:8px;background:none;border:0;color:white;font-size:28px}@media(min-width:1500px){main,header,footer,.trust{padding-left:max(7%,calc((100vw - 1280px)/2));padding-right:max(7%,calc((100vw - 1280px)/2))}main{padding:0}.hero{padding-inline:max(7%,calc((100vw - 1280px)/2))}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media(max-width:850px){nav{gap:20px}.hero{min-height:570px;padding-top:55px}.hero-mark>img{width:95%}.orbit{width:300px;height:300px}.actions{flex-direction:column;align-items:start;gap:20px}.service-grid{grid-template-columns:repeat(2,1fr)}.lotus-copy{padding:55px 10%}.lotus-copy h2{font-size:30px}.section{padding:70px 6%}.contact{gap:7%}.section-head{align-items:start}.about{padding:70px 12%}}@media(max-width:600px){.preview{font-size:13px;padding:6px 12px}.preview span{display:none}header{height:80px;padding:5px 6%}.brand{width:90px;height:68px}nav{display:none}.button.small{font-size:13px;padding:10px 12px;gap:14px}.hero{grid-template-columns:1fr;padding:48px 7% 65px;min-height:auto}.hero h1{font-size:49px}.hero-copy>p{font-size:13px}.eyebrow{font-size:13px}.hero-mark{min-height:260px;margin-top:22px}.hero-mark>img{width:245px}.orbit{width:280px;height:280px}.mark-caption{font-size:13px;margin-top:5px}.hero-bottom{font-size:13px;bottom:16px}.actions{flex-direction:row;flex-wrap:wrap;align-items:center;gap:20px}.actions .textlink{font-size:13px}.button{font-size:13px;padding:14px 16px}.trust{display:grid;grid-template-columns:1fr 1fr;font-size:13px;gap:13px;padding:20px 7%}.section{padding:58px 7%}.section-head{display:block;margin-bottom:30px}.section-head>p{font-size:13px;margin-top:20px}h2{font-size:33px}.service{padding:22px 17px;min-height:240px}.service h3{font-size:13px}.service p{font-size:13px}.service svg{width:30px;height:30px}.additional{gap:10px 18px;font-size:13px}.additional>span:first-child{width:100%}.lotus-section{grid-template-columns:1fr}.lotus-visual{padding:35px 20px;gap:12px}.lotus-visual img{width:220px}.lotus-copy{padding:40px 7%}.lotus-copy h2{font-size:32px}.location-grid{grid-template-columns:1fr;gap:18px}.location-grid article{padding:27px}.about{padding:55px 7%}.about .eyebrow{font-size:13px}.about h2{font-size:31px}.about p{font-size:13px}.contact{grid-template-columns:1fr;gap:35px}.contact-note{margin-top:22px}.contact h2{font-size:36px}footer{padding:30px 7%;gap:25px}footer>div:nth-child(2){width:100%}dialog{padding:30px 22px}}

/* Brighter surfaces, with anthracite as the darkest large background. */
.services,.contact{background:#f4f5f3;color:#303a40;--muted:#52616a;--line:#cbd2d5}
.services .eyebrow,.contact .eyebrow{color:#617079}
.services .service{background:#fff}.services .service:hover{background:#e9edef}
.services .service-top{color:#68747b}.services .textlink:hover,.contact .textlink:hover{color:#303a40}
.contact .contact-note strong{color:#303a40}.contact .contact-note p{color:#52616a}
.contact input,.contact select,.contact textarea{background:#fff;color:#26343b}
.contact .copy-button{color:#303a40;background:#fff;border-color:#8c9ba3}
.lotus-copy .textlink{color:#fff}.location-grid article{background:#495156}
.location-grid .textlink{color:#fff}
footer{background:#383e42}dialog label{color:#fff}

/* Give small labels and captions more room at narrow widths. */
.mark-caption{letter-spacing:.16em}.edition{letter-spacing:.13em}.hero-bottom{letter-spacing:.08em;gap:16px}.location-top{letter-spacing:.08em}.form-hint,footer small{line-height:1.7}
@media(max-width:600px){.hero-bottom{flex-wrap:wrap;gap:6px 16px}.mark-caption{letter-spacing:.09em}.lotus-visual .eyebrow,.edition,.about .eyebrow{text-align:center;letter-spacing:.08em}.location-top{flex-wrap:wrap;gap:8px}.preview{letter-spacing:.08em}.hero{padding-bottom:85px}}

@media(min-width:851px) and (max-width:1100px){.service-grid{grid-template-columns:repeat(2,1fr)}}

/* Improve small-screen readability without changing the layout. */
@media(max-width:600px){
 .service p,.lotus-copy>p,.lotus-note,.location-grid p,.location-grid small,.about p,.contact>div>p,.contact-note p,dialog p{font-size:14px;line-height:1.8}
 .service h3{font-size:15px;line-height:1.45}
 .service>a,.textlink,label,.contact-note strong{font-size:14px}
 input,select,textarea{font-size:16px;line-height:1.5}
 .form-hint,footer span,footer small,footer button,footer>div:nth-child(2){font-size:13px;line-height:1.75}
 .mark-caption,.edition,.hero-bottom,.eyebrow,.location-top{overflow-wrap:anywhere}
}

[hidden]{display:none!important}#form-status:empty{display:none}#form-status{font-size:14px;line-height:1.7;padding:14px;background:#e8edef;color:#303a40}button:disabled{opacity:.65;cursor:default}#email-fallback{margin:0 0 16px}
