*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'Inter',-apple-system,sans-serif;color:#0F1412;background:#FAF8F2;line-height:1.65;min-height:100vh;overflow-x:hidden;}
.bg-canvas{position:fixed;inset:0;z-index:-2;background:radial-gradient(circle at 18% 18%,rgba(180,240,90,0.24),transparent 34%),radial-gradient(circle at 84% 28%,rgba(26,74,48,0.13),transparent 30%),radial-gradient(circle at 45% 78%,rgba(193,219,201,0.34),transparent 42%),linear-gradient(135deg,#FAF8F2 0%,#F0F7F2 50%,#DCEDE2 100%);}
.bg-canvas::after{content:'';position:absolute;inset:0;background:linear-gradient(115deg,rgba(255,255,255,0.32),transparent 30%,rgba(180,240,90,0.1) 58%,transparent 78%);opacity:0.8;}
.orb{position:fixed;border-radius:50%;filter:blur(90px);opacity:0.35;z-index:-1;pointer-events:none;}
.orb-1{width:520px;height:520px;background:#B4F05A;top:-150px;right:-120px;}
.orb-2{width:620px;height:620px;background:#1A4A30;bottom:-260px;left:-260px;opacity:0.18;}
.container{max-width:1040px;margin:0 auto;padding:0 32px;}
.nav{position:sticky;top:0;z-index:20;padding:16px 0;}
.nav-inner{max-width:1240px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,rgba(255,255,255,0.82),rgba(255,255,255,0.48));backdrop-filter:blur(30px) saturate(190%);-webkit-backdrop-filter:blur(30px) saturate(190%);border:1px solid rgba(255,255,255,0.72);border-radius:16px;box-shadow:0 10px 34px rgba(15,20,18,0.07),inset 0 1px 0 rgba(255,255,255,0.76);position:relative;overflow:hidden;}
.nav-inner::after,.toc::after,.terms-card::after,.contact-box::after{content:'';position:absolute;inset:0;border-radius:inherit;background:linear-gradient(115deg,rgba(255,255,255,0.52),rgba(255,255,255,0.04) 38%,rgba(180,240,90,0.12) 62%,rgba(255,255,255,0.18));opacity:0.42;pointer-events:none;}
.nav-links{display:flex;gap:26px;align-items:center;}
.nav-links a{color:#0F1412;text-decoration:none;font-size:14px;font-weight:600;transition:color .2s;}
.nav-links a:hover,.nav-links a.active{color:#1A4A30;}
.wm{font-weight:900;letter-spacing:-1.5px;line-height:1;font-size:22px;text-decoration:none;}
.wm .w1{color:#0F1412;}.wm .w2{color:#1A4A30;}
.btn{padding:11px 18px;border-radius:10px;font-size:14px;font-weight:700;border:none;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:8px;transition:all .2s;font-family:inherit;background:#1A4A30;color:#fff;}
.btn:hover{background:#0F3320;transform:translateY(-2px);box-shadow:0 10px 24px rgba(26,74,48,0.24);}
.hero{padding:72px 0 38px;}
.hero-pill{display:inline-flex;align-items:center;gap:8px;background:rgba(180,240,90,0.22);border:1px solid rgba(180,240,90,0.5);border-radius:999px;padding:6px 14px;font-size:12px;color:#3D6600;font-weight:800;margin-bottom:22px;}
.hero-pill .dot{width:6px;height:6px;border-radius:50%;background:#5A8A00;}
h1{font-size:56px;font-weight:900;letter-spacing:-2.2px;line-height:1.05;margin-bottom:18px;max-width:840px;}
.grad{background:linear-gradient(135deg,#1A4A30 0%,#5A8A00 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.lede{font-size:18px;color:#4B5A52;max-width:780px;}
.meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px;}
.meta span{background:rgba(255,255,255,0.72);border:1px solid rgba(26,74,48,0.1);border-radius:999px;padding:6px 12px;font-size:12px;color:#4B5A52;font-weight:700;}
.terms-wrap{padding:34px 0 90px;}
.terms-grid{display:grid;grid-template-columns:260px 1fr;gap:34px;align-items:start;}
.toc{position:sticky;top:112px;background:linear-gradient(135deg,rgba(255,255,255,0.76),rgba(255,255,255,0.36));backdrop-filter:blur(30px) saturate(185%);-webkit-backdrop-filter:blur(30px) saturate(185%);border:1px solid rgba(255,255,255,0.68);border-radius:18px;padding:20px;box-shadow:0 16px 44px rgba(15,20,18,0.08),inset 0 1px 0 rgba(255,255,255,0.76),inset 0 -24px 58px rgba(180,240,90,0.1);overflow:hidden;}
.toc h2{font-size:12px;text-transform:uppercase;letter-spacing:1.5px;color:#6C6E69;margin-bottom:12px;}
.toc a{display:block;color:#1A4A30;text-decoration:none;font-size:13px;font-weight:700;margin:8px 0;}
.terms-card{background:linear-gradient(135deg,rgba(255,255,255,0.78),rgba(255,255,255,0.42));backdrop-filter:blur(32px) saturate(190%);-webkit-backdrop-filter:blur(32px) saturate(190%);border:1px solid rgba(255,255,255,0.72);border-radius:24px;box-shadow:0 24px 70px rgba(15,20,18,0.1),inset 0 1px 0 rgba(255,255,255,0.82),inset 0 -30px 70px rgba(180,240,90,0.11);padding:42px;position:relative;overflow:hidden;}
section{padding:0 0 34px;margin-bottom:34px;border-bottom:1px solid rgba(26,74,48,0.1);}
section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0;}
h2{font-size:25px;font-weight:800;letter-spacing:-0.5px;line-height:1.2;margin-bottom:12px;color:#0F1412;}
h3{font-size:16px;font-weight:800;margin:22px 0 8px;color:#1A4A30;}
p{font-size:15px;color:#3F4C45;margin-bottom:12px;}
ul{padding-left:20px;margin:10px 0 16px;}
li{font-size:15px;color:#3F4C45;margin-bottom:8px;}
strong{color:#0F1412;}
.notice{background:rgba(180,240,90,0.16);border:1px solid rgba(180,240,90,0.4);border-radius:14px;padding:16px 18px;margin:18px 0;color:#244A13;}
.notice p{margin:0;color:#244A13;font-size:14px;}
.contact-box{background:linear-gradient(135deg,rgba(26,74,48,0.92),rgba(15,51,32,0.84));backdrop-filter:blur(24px) saturate(170%);-webkit-backdrop-filter:blur(24px) saturate(170%);color:#FAF8F2;border:1px solid rgba(180,240,90,0.28);border-radius:20px;padding:24px;margin-top:14px;box-shadow:0 24px 70px rgba(26,74,48,0.28),inset 0 1px 0 rgba(255,255,255,0.13);position:relative;overflow:hidden;}
.contact-box h2,.contact-box p{color:#FAF8F2;}
.contact-box a{color:#B4F05A;font-weight:800;}
footer{padding:60px 32px 40px;border-top:1px solid rgba(26,74,48,0.08);background:linear-gradient(135deg,rgba(255,255,255,0.64),rgba(255,255,255,0.34));backdrop-filter:blur(24px) saturate(170%);-webkit-backdrop-filter:blur(24px) saturate(170%);}
.footer-grid{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;margin-bottom:36px;}
.footer-col h5{font-size:11px;font-weight:700;letter-spacing:1.5px;color:#6C6E69;margin-bottom:14px;text-transform:uppercase;}
.footer-col a{display:block;color:#4B5A52;font-size:13px;text-decoration:none;margin-bottom:8px;transition:color .2s;cursor:pointer;}
.footer-col a:hover{color:#1A4A30;}
.footer-bottom{max-width:1240px;margin:0 auto;padding-top:24px;border-top:1px solid rgba(26,74,48,0.08);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;}
.footer-bottom p{font-size:12px;color:#6C6E69;margin:0;}
.social-links{display:flex;align-items:center;gap:9px;margin-top:16px;}
.social-links a{width:36px;height:36px;border-radius:8px;border:1px solid rgba(26,74,48,.16);background:rgba(255,255,255,.55);color:#1A4A30;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-size:19px;transition:background .2s,color .2s,border-color .2s;}
.social-links a:hover{background:#1A4A30;color:#B4F05A;border-color:#1A4A30;}
.sm-chat-widget{position:fixed;right:22px;bottom:22px;z-index:1200;display:inline-flex;align-items:center;gap:9px;padding:13px 18px;border-radius:999px;background:#1A4A30;color:#fff;text-decoration:none;font-size:14px;font-weight:800;box-shadow:0 16px 38px rgba(26,74,48,0.28),inset 0 1px 0 rgba(255,255,255,0.16);border:1px solid rgba(180,240,90,0.28);transition:transform .2s,box-shadow .2s,background .2s;}
.sm-chat-widget:hover{background:#0F3320;transform:translateY(-2px);box-shadow:0 20px 46px rgba(26,74,48,0.34);}
.sm-chat-widget i{font-size:21px;color:#B4F05A;}
@media (max-width:860px){
  .container{padding:0 20px;}
  .nav-inner{margin:0 16px;}
  .nav-links{display:none;}
  h1{font-size:38px;letter-spacing:-1.4px;}
  .hero{padding:46px 0 28px;}
  .terms-grid{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .toc{position:static;}
  .terms-card{padding:26px;}
  .sm-chat-widget{right:16px;bottom:16px;padding:12px 15px;}
}
@media (max-width:520px){
  .sm-chat-widget span{display:none;}.sm-chat-widget{width:52px;height:52px;justify-content:center;padding:0;}
}

@media (max-width:768px){
  .orb{display:none;}
  .glass,.glass-strong,.glass-dark,.nav-inner,.mobile-menu,.splash,.identity-card,.apptology-band,.apptology-card{backdrop-filter:blur(16px) saturate(155%);-webkit-backdrop-filter:blur(16px) saturate(155%);}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important;}
}



/* RESPONSIVE DEVICE PASS */
a{overflow-wrap:anywhere;}
.btn{min-height:44px;justify-content:center;text-align:center;}
@media (max-width:900px){
  .container{padding:0 20px;}
  .nav{padding-top:calc(12px + env(safe-area-inset-top));}
  .nav-inner{margin:0 12px;padding:10px 12px;gap:10px;flex-wrap:wrap;overflow:visible;}
  .wm{font-size:19px;letter-spacing:-1px;flex:1;min-width:0;}
  .nav-links{display:flex!important;order:3;width:100%;gap:8px;overflow-x:auto;padding:10px 0 2px;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
  .nav-links::-webkit-scrollbar{display:none;}
  .nav-links a{flex:0 0 auto;padding:8px 10px;border-radius:999px;background:rgba(255,255,255,0.56);border:1px solid rgba(26,74,48,0.08);font-size:12px;white-space:nowrap;}
  .nav .btn{padding:10px 12px;font-size:12px;white-space:nowrap;max-width:142px;overflow:hidden;text-overflow:ellipsis;}
  .hero{padding-top:44px;}
  h1{font-size:38px;letter-spacing:-1.4px;line-height:1.08;}
  .lede{font-size:16px;}
  .hero-actions,.route-actions,.status-actions{width:100%;}
  .hero-actions .btn,.route-actions .btn,.status-actions .btn{flex:1 1 180px;}
  .footer-grid{grid-template-columns:1fr 1fr;gap:30px;}
  footer{padding:44px 20px 32px;}
  .footer-bottom{align-items:flex-start;}
  .sm-chat-widget{right:16px;bottom:calc(16px + env(safe-area-inset-bottom));}
}
@media (max-width:640px){
  .nav-inner{margin:0 10px;}
  .nav .btn{max-width:120px;}
  h1{font-size:33px;}
  .hero-pill,.section-tag{white-space:normal;line-height:1.35;}
  .glass,.contact-route,.policy-card,.terms-card,.support-card,.identity-card,.apptology-band,.status-band{padding:22px;}
  .contact-grid,.support-grid,.story-grid,.value-grid,.footer-grid{grid-template-columns:1fr!important;}
  .toc{position:relative;top:auto;max-height:none;}
  .toc a{padding:10px 0;}
  .meta{gap:8px;}
  .meta span{white-space:normal;}
}
@media (max-width:380px){
  .container{padding:0 16px;}
  .nav .btn{display:none;}
  .wm{font-size:17px;}
  h1{font-size:28px;line-height:1.1;}
  .lede{font-size:14px;}
  .hero{padding-top:34px;}
  section{padding:44px 0;}
  .glass,.contact-route,.policy-card,.terms-card,.support-card,.identity-card,.apptology-band,.status-band{padding:18px;border-radius:18px;}
  .section-title{font-size:25px;}
  .btn{width:100%;padding:12px 14px;}
  .terms-card section{padding:0 0 28px;margin-bottom:28px;}
  .terms-card section:last-child{padding-bottom:0;margin-bottom:0;}
  .identity-row{flex-direction:column;gap:4px;}
  .identity-row span:last-child{text-align:left;}
  .sm-chat-widget span{display:none;}
  .sm-chat-widget{width:52px;height:52px;justify-content:center;padding:0;}
}
