:root{
  --theme:#8b0810;
  --theme-dark:#64050b;
  --theme-deep:#390307;
  --theme-light:#fff1f2;
  --theme-soft:#fff8f8;
  --theme-hover:#a80c16;
  --theme-border:rgba(139,8,16,.18);
  --text-main:#241214;
  --text-muted:#685256;
  --on-theme:#ffffff;
  --on-dark:#fff7f7;
  --white:#ffffff;
  --shadow-soft:0 16px 40px rgba(57,3,7,.12);
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;overflow-x:hidden;overflow-y:auto;scroll-behavior:smooth}body{background:var(--theme-light);color:var(--text-main);font-family:Arial,Helvetica,sans-serif;line-height:1.72;font-size:16px}a{text-decoration:none}.container,.section-inner,.header-inner,.footer-inner{width:min(1200px,calc(100% - 48px));margin:0 auto}.site-header{position:sticky;top:0;width:100%;z-index:9999;background:rgba(100,5,11,.96);color:var(--on-dark);box-shadow:var(--shadow-soft);backdrop-filter:blur(10px)}.header-inner{max-width:1280px;min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:18px}.logo img{max-width:158px}.main-nav{display:none;align-items:center;gap:4px}.main-nav a{color:var(--on-dark);font-weight:700;font-size:14px;padding:12px 10px;border-radius:999px;white-space:nowrap}.main-nav a.active,.main-nav a:hover{color:var(--on-dark);background:rgba(255,255,255,.12);box-shadow:inset 0 -2px 0 var(--theme-light)}.header-actions{display:flex;align-items:center;gap:10px}.main-btn{display:inline-flex;align-items:center;justify-content:center;background:var(--theme);color:var(--on-theme);border-radius:999px;box-shadow:var(--shadow-soft);font-weight:800;padding:12px 20px;border:0;transition:.2s ease}.main-btn:hover{background:var(--theme-hover);transform:translateY(-1px)}.text-link{color:var(--theme);font-weight:800}.text-link:hover{color:var(--theme-hover)}.mobile-menu-toggle{width:42px;height:42px;border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.08);border-radius:12px;color:var(--on-dark);display:inline-flex;flex-direction:column;gap:5px;align-items:center;justify-content:center}.mobile-menu-toggle span{width:20px;height:2px;background:currentColor;border-radius:4px}.mobile-drawer{position:fixed;top:0;left:0;width:82%;max-width:320px;height:100vh;transform:translateX(-100%);transition:transform .28s ease;z-index:10001;background:var(--theme-dark);color:var(--on-dark);padding:20px;box-shadow:20px 0 60px rgba(0,0,0,.26);overflow:auto}.mobile-drawer.is-open{transform:translateX(0)}.drawer-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);opacity:0;visibility:hidden;z-index:10000;transition:.25s}.drawer-overlay.is-open{opacity:1;visibility:visible}body.menu-open{overflow:hidden}.drawer-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:20px}.drawer-logo img{max-width:150px}.drawer-close{border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.08);color:var(--on-dark);border-radius:12px;width:40px;height:40px;font-size:24px}.mobile-nav{display:grid;gap:8px}.mobile-nav a{color:var(--on-dark);padding:12px 10px;border-radius:12px;background:rgba(255,255,255,.06);font-weight:700}.section{padding:76px 0}.hero,.hero-section{display:grid;gap:34px;padding:72px 0}.hero-copy{min-width:0}.eyebrow,.tag{display:inline-flex;align-items:center;gap:8px;background:rgba(139,8,16,.09);color:var(--theme-dark);border:1px solid var(--theme-border);border-radius:999px;padding:7px 12px;font-weight:800;font-size:14px;margin:0 8px 8px 0}.hero h1,h1{font-size:38px;line-height:1.08;margin:14px 0 20px;color:var(--theme-dark);letter-spacing:-.04em}.hero p,.lead{font-size:18px;color:var(--text-muted);max-width:760px}.hero-visual{background:linear-gradient(145deg,var(--white),#ffe6e8);border:1px solid var(--theme-border);border-radius:32px;box-shadow:var(--shadow-soft);padding:30px;min-height:420px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.hero-visual:before{content:"";position:absolute;inset:auto -80px -100px auto;width:240px;height:240px;background:rgba(139,8,16,.16);border-radius:50%}.hero-visual img{position:relative;max-height:420px;width:auto}.hero-mini{display:grid;grid-template-columns:1fr;gap:16px;margin-top:24px}.card,.zone-card,.info-card,.faq-item,.notice{background:var(--white);color:var(--text-main);border:1px solid var(--theme-border);box-shadow:var(--shadow-soft);border-radius:24px;padding:24px}.section-title,h2,h3,.category-number,.highlight{color:var(--theme-dark)}h2{font-size:30px;line-height:1.18;margin:0 0 20px}h3{font-size:21px;margin:0 0 12px}.grid,.feature-grid,.zone-grid{display:grid;gap:22px}.service-strip{background:linear-gradient(135deg,#fff,var(--theme-soft));border:1px solid var(--theme-border);border-radius:28px;padding:28px;box-shadow:var(--shadow-soft)}.category-pill{border:1px solid var(--theme-border);background:var(--white);border-radius:24px;padding:20px;transition:.2s}.category-pill:hover{transform:translateY(-3px);box-shadow:var(--shadow-soft)}.category-number{font-weight:900;font-size:14px;letter-spacing:.08em}.content-split{display:grid;gap:30px;margin:34px 0}.visual-card{min-height:320px;border-radius:30px;background:linear-gradient(145deg,#fff,#ffe4e6);border:1px solid var(--theme-border);box-shadow:var(--shadow-soft);display:flex;align-items:center;justify-content:center;padding:28px}.visual-card img{max-height:280px}.app-section{display:grid;gap:30px;background:linear-gradient(135deg,#fff,var(--theme-soft));border:1px solid var(--theme-border);border-radius:34px;padding:34px;box-shadow:var(--shadow-soft);align-items:center}.app-section img{max-height:430px;margin:auto}.security-section{display:grid;gap:24px}.faq{display:grid;gap:16px}.notice{border-left:6px solid var(--theme);background:linear-gradient(90deg,#fff,var(--theme-soft))}.footer{background:var(--theme-deep);color:var(--on-dark);padding:58px 0 26px}.footer a{color:var(--on-dark)}.footer a:hover{color:var(--theme-light)}.footer-inner{display:grid;gap:28px}.footer-brand img{max-width:165px;margin-bottom:14px}.footer-links{display:grid;gap:10px}.footer small,.footer p{color:rgba(255,247,247,.82)}.page-hero{padding:70px 0 34px}.page-grid{display:grid;gap:24px}.wide-card{background:var(--white);border:1px solid var(--theme-border);border-radius:28px;padding:30px;box-shadow:var(--shadow-soft)}.two-col{display:grid;gap:26px}.image-panel{display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#fff,#ffe7e9);border:1px solid var(--theme-border);border-radius:28px;padding:28px;box-shadow:var(--shadow-soft)}.image-panel img{max-height:360px}.list-check{padding-left:18px}.list-check li{margin:8px 0}.footer-note{border-top:1px solid rgba(255,255,255,.14);margin-top:30px;padding-top:20px}
@media (min-width:768px){.hero-mini{grid-template-columns:repeat(3,1fr)}.grid{grid-template-columns:repeat(2,1fr)}.feature-grid{grid-template-columns:repeat(2,1fr)}.faq{grid-template-columns:repeat(2,1fr)}.two-col{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1024px){body{font-size:17px}.main-nav{display:flex}.mobile-menu-toggle{display:none}.hero,.hero-section{grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);align-items:center;gap:48px}.hero h1,h1{font-size:62px}.section{padding:96px 0}.feature-grid.info-four{grid-template-columns:repeat(4,1fr)}.feature-grid.core-three{grid-template-columns:repeat(3,1fr)}.zone-grid{grid-template-columns:repeat(4,1fr)}.content-split{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:46px;margin:44px 0}.app-section{grid-template-columns:.9fr 1.1fr;padding:48px}.security-section{grid-template-columns:.9fr 1.1fr}.footer-inner{grid-template-columns:1.2fr .8fr .8fr 1fr}.page-grid{grid-template-columns:1fr 1fr}.desktop-wide{grid-column:1/-1}}
@media (min-width:1280px){.container,.section-inner,.header-inner,.footer-inner{width:min(1280px,calc(100% - 72px))}.hero h1,h1{font-size:68px}.hero-visual{min-height:500px}.section{padding:108px 0}}
@media (max-width:767px){.container,.section-inner,.header-inner,.footer-inner{width:min(100% - 28px,1200px)}.header-inner{min-height:66px}.logo img{max-width:126px}.main-btn{padding:10px 14px;font-size:14px}.hero,.hero-section{padding:44px 0}.hero h1,h1{font-size:36px}.section{padding:56px 0}.hero-visual{min-height:300px;padding:20px}.card,.zone-card,.info-card,.faq-item,.notice{padding:20px}.app-section{padding:22px}.footer{padding-top:42px}}
