html { scroll-behavior: smooth; background: #0a0a0a; }
body { background:#0a0a0a; color:#fff; }
*, *::before, *::after { box-sizing:border-box; }
img { max-width:100%; }
button,a,input { -webkit-tap-highlight-color:transparent; }
button,a { touch-action:manipulation; }
:focus-visible { outline:3px solid #ffa500; outline-offset:5px; }
[data-id] { scroll-margin-top:24px; }
.site-header { position:absolute; top:0; left:0; width:100%; z-index:30; padding:14px 24px; color:#fff; }
.header-inner { max-width:1140px; margin:auto; display:flex; align-items:center; gap:18px; }
.header-logo { width:158px; flex-shrink:0; display:block; }
.header-logo img { width:100%; display:block; }
.site-nav { display:flex; align-items:center; gap:36px; }
.site-nav a { color:#fff; font:700 16px/1.4 Poppins,sans-serif; white-space:nowrap; text-decoration:none; }
.site-nav a:hover { color:#ff6b35; }
.menu-toggle { display:none; width:44px; height:44px; background:#151515; color:#fff; border:1px solid #444; border-radius:8px; align-items:center; justify-content:center; }
.menu-toggle svg { width:25px; height:25px; }
.site-footer { padding:64px max(24px,calc((100vw - 1250px)/2)); background:#0a0a0a; font-family:Poppins,sans-serif; color:#fff; }
.footer-head { display:flex; align-items:center; justify-content:space-between; gap:30px; margin-bottom:48px; }
.footer-head p { font-size:24px; font-weight:700; max-width:460px; line-height:1.35; }
.footer-head em { color:#ff4d2e; font-style:normal; }
.site-cta { border:0; border-radius:999px; color:#fff; background:linear-gradient(110deg,#ff4d2e,#ffa500); font:700 15px/1.4 Poppins,sans-serif; padding:22px 32px; cursor:pointer; display:inline-block; text-decoration:none; }
.footer-links { display:flex; justify-content:space-between; align-items:center; gap:20px; border-top:1px solid #333; padding-top:28px; font-size:14px; }
.footer-links nav { display:flex; gap:24px; }
.footer-links a { color:#ddd; text-decoration:none; }
.footer-note { margin-top:32px; border-top:1px solid #333; padding-top:26px; color:#aaa; font-size:11px; line-height:1.7; }
.modal-open { overflow:hidden; }
#inquiry-dialog { width:min(1000px,calc(100% - 40px)); max-height:calc(100dvh - 40px); padding:0; border:1px solid #333; border-radius:24px; color:#fff; background:#111; overflow:auto; overscroll-behavior:contain; font-family:Poppins,sans-serif; }
#inquiry-dialog::backdrop { background:rgba(0,0,0,.82); backdrop-filter:blur(7px); }
.modal-grid { display:grid; grid-template-columns:1.1fr 1fr; min-height:620px; }
.modal-copy { padding:40px; min-width:0; position:relative; }
.modal-close { position:absolute; top:14px; right:14px; z-index:5; width:40px; height:40px; border-radius:50%; background:#222; color:#fff; border:1px solid #555; font-size:28px; cursor:pointer; line-height:1; }
.modal-copy h2 { color:#fff; font:800 28px/1.15 Poppins,sans-serif; margin:10px 36px 18px 0; }
.modal-copy h2 span { color:#ff4d2e; }
.modal-intro { margin:0 0 24px; color:#bbb; font-size:14px; line-height:1.6; }
.modal-image { position:relative; min-height:360px; background-size:cover; background-position:center; border-radius:0 24px 24px 0; }
.modal-image span { position:absolute; bottom:16px; right:16px; font-size:10px; opacity:.8; }
.field-row { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.modal-copy label { color:#e8e8e8; font-size:13px; display:block; margin-bottom:16px; }
.modal-copy input:not([type=checkbox]):not([type=hidden]) { width:100%; height:48px; margin-top:6px; padding:12px 14px; background:#1d1d1d; border:1px solid #4d4d4d; border-radius:9px; color:#fff; font:400 16px Poppins,sans-serif; }
.modal-copy input::placeholder { color:#929292; opacity:1; }
.phone-field { display:flex; align-items:center; background:#1d1d1d; border:1px solid #4d4d4d; border-radius:9px; margin-top:6px; }
.phone-field strong { padding-left:14px; padding-right:10px; font-size:16px; font-weight:500; }
.modal-copy .phone-field input { border:0!important; margin-top:0!important; padding-left:8px!important; }
.field-note { color:#aaa; font-size:11px; line-height:1.4; margin-top:7px; display:block; }
.consent { display:flex!important; align-items:flex-start; gap:10px; font-size:11px!important; line-height:1.6; }
.consent input { width:17px; height:17px; flex-shrink:0; margin-top:2px; accent-color:#ff4d2e; }
.consent a { color:#ff7047; text-decoration:underline; }
.modal-submit { width:100%; border:0; background:linear-gradient(110deg,#ff4d2e,#ffa500); color:white; border-radius:10px; padding:15px; font:700 16px Poppins,sans-serif; cursor:pointer; }
.preview-note { font-size:11px; color:#aaa; margin:14px 0 0; line-height:1.5; }
.modal-status { padding:24px; background:#1a1a1a; border-radius:12px; border:1px solid #ff4d2e; color:white; line-height:1.7; }
.map-consent { min-height:280px; width:100%; height:100%; border:0; background:#202020; color:white; padding:30px; font:600 14px/1.7 Poppins,sans-serif; cursor:pointer; }
.styles_op_1fxws8p_map,.styles_op_1m3l5ys_map { display:flex; align-items:flex-end; justify-content:center; padding:24px; background:radial-gradient(ellipse at center,#333 0,#1b1b1b 70%); color:#fff; font:500 12px/1.5 Poppins,sans-serif; text-decoration:underline; }
.styles_op_1fxws8p_mapVeil,.styles_op_1m3l5ys_mapVeil,.styles_op_1fxws8p_marker,.styles_op_1m3l5ys_marker { pointer-events:none; }
[class*="_spotlight"] { display:none!important; }
.info-page { max-width:1250px; margin:auto; padding:160px 24px 80px; font-family:Poppins,sans-serif; }
.info-page h1 { font-size:clamp(36px,6vw,70px); color:#fff; font-weight:800; line-height:1.1; margin:20px 0 28px; }
.info-page h1 span,.info-eyebrow { color:#ff4d2e; }
.info-eyebrow { font-size:12px; font-weight:600; letter-spacing:.18em; text-transform:uppercase; }
.info-page h2 { font-size:26px; color:#fff; margin:38px 0 16px; font-weight:700; line-height:1.3; }
.info-page p { color:#ccc; line-height:1.8; margin:0 0 20px; }
.info-page a { color:#ff7b50; }
.info-grid { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:start; }
.info-grid img { width:100%; border-radius:18px; }
.info-panel { background:#171717; border:1px solid #333; padding:28px; border-radius:18px; }
.info-panel a { color:#fff; }
.legal-content { max-width:840px; }
.legal-content ul { padding-left:25px; color:#ccc; line-height:1.8; }
@media(max-width:1050px) {
 .site-nav { gap:20px; } .site-nav a { font-size:14px; }
 .header-logo { width:145px; }
}
@media(max-width:800px) {
 .site-header { padding:16px 20px; }
 .header-inner { justify-content:space-between; }
 .header-logo { width:130px; }
 .menu-toggle { display:flex; }
 .site-nav { display:none; position:absolute; top:94px; left:20px; right:20px; background:#141414; border:1px solid #444; border-radius:16px; padding:24px; box-shadow:0 20px 70px #000; flex-direction:column; align-items:stretch; gap:0; }
 .site-nav.is-open { display:flex; }
 .site-nav a { padding:12px 4px; font-size:17px; }
 .footer-head { flex-direction:column; align-items:flex-start; }
 .footer-links { align-items:flex-start; flex-direction:column; }
 .info-grid { grid-template-columns:1fr; gap:32px; }
 .modal-grid { grid-template-columns:1fr; min-height:0; }
 .modal-image { display:none; }
 .modal-copy { padding:32px 24px; }
 #inquiry-dialog { width:calc(100% - 24px); max-height:calc(100dvh - 24px); border-radius:18px; }
 .modal-copy h2 { font-size:26px; }
 [class*="_ctaArrow"],[class*="_arrow"] { display:none!important; }
 .styles_op_1fxws6e_hero,.styles_op_1m3l5yq_hero { min-height:100svh!important; padding-top:145px!important; padding-bottom:65px!important; }
 .styles_op_1fxws6e_ebPos,.styles_op_1fxws6e_hlPos,.styles_op_1fxws6e_stPos,.styles_op_1fxws6e_ctaPos,
 .styles_op_1m3l5yq_ebPos,.styles_op_1m3l5yq_hlPos,.styles_op_1m3l5yq_stPos,.styles_op_1m3l5yq_ctaPos { transform:none!important; }
 [class*="_eyebrow"] { white-space:normal!important; }
 [class*="_cell"] { position:relative!important; top:auto!important; }
 .styles_op_1fxws8q_stickyItem { position:relative!important; top:auto!important; }
 [class*="_grain"] { display:none; }
}
@media(max-width:420px) {
 .field-row { grid-template-columns:1fr; gap:0; }
 .modal-copy { padding:30px 20px 24px; }
 .site-cta { font-size:12px; padding:18px 22px; }
 .styles_op_1fxws6e_headline,.styles_op_1m3l5yq_headline { font-size:36px!important; }
}
@media(prefers-reduced-motion:reduce) {
 html { scroll-behavior:auto; }
 *,*::before,*::after { animation:none!important; transition-duration:.01ms!important; }
 [class*="_headline"],[class*="_title"],[class*="_inner"],[class*="_card"] { opacity:1!important; filter:none!important; }
 [class*="_bg"],[class*="_inner"] { transform:none!important; }
}
