/* ============================================================
   LCS — Components
   ============================================================ */

/* NAV */
nav{position:sticky;top:0;z-index:60;background:rgba(250,251,251,.82);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);}
.nav{display:flex;align-items:center;justify-content:space-between;height:70px;}
.brand{display:flex;align-items:center;gap:11px;font-family:var(--font-display);font-weight:800;font-size:20px;color:var(--ink);}
.brand .mk{width:38px;height:38px;flex:none;}
.brand small{display:block;font-family:var(--font-body);font-weight:600;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-top:2px;}
.navlinks{display:flex;align-items:center;gap:28px;}
.navlinks a{font-weight:500;font-size:15px;color:var(--ink);opacity:.82;}
.navlinks a:hover{opacity:1;color:var(--teal);}
.nav-right{display:flex;align-items:center;gap:14px;}
.lang{display:flex;align-items:center;gap:6px;font-weight:600;font-size:14px;color:var(--teal);border:1.5px solid var(--line);border-radius:40px;padding:8px 14px;cursor:pointer;background:#fff;}
.burger{display:none;background:none;border:none;cursor:pointer;padding:8px;}
.burger span{display:block;width:22px;height:2px;background:var(--ink);margin:4px 0;border-radius:2px;}

/* CHIPS */
.chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px;}
.chip{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid var(--line);border-radius:40px;padding:8px 14px;font-size:13px;font-weight:600;color:var(--teal);}
.chip svg{color:var(--ok);}

/* HERO CARD (bridge) */
.hero-card{background:#fff;border-radius:var(--r-lg);box-shadow:var(--shadow);padding:26px;border:1px solid var(--line);}
.hc-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;}
.hc-head .t{font-family:var(--font-display);font-weight:700;font-size:17px;}
.hc-badge{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ok);background:rgba(30,142,99,.1);padding:5px 10px;border-radius:20px;}
.bridge{display:flex;align-items:center;justify-content:space-between;margin:20px 4px 22px;}
.bnode{display:flex;flex-direction:column;align-items:center;gap:8px;width:82px;text-align:center;}
.bnode .ic{width:52px;height:52px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:24px;}
.bnode .ic.you{background:var(--mist);}
.bnode .ic.lcs{background:var(--teal);color:#fff;box-shadow:0 8px 18px rgba(18,78,92,.3);}
.bnode .ic.gov{background:#FCE7DE;}
.bnode small{font-size:11px;font-weight:600;color:var(--muted);line-height:1.2;}
.bline{flex:1;height:2px;background:repeating-linear-gradient(90deg,var(--line) 0 7px,transparent 7px 14px);margin:0 4px;position:relative;top:-16px;}
.hc-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line);font-size:14px;}
.hc-row .k{color:var(--muted);width:96px;flex:none;}
.hc-row .v{font-weight:600;}
.hc-cta{margin-top:16px;width:100%;justify-content:center;}

/* STAT */
.stat{flex:1;min-width:150px;}
.stat b{font-family:var(--font-display);font-weight:800;font-size:34px;display:block;}
.stat span{font-size:14px;opacity:.82;}

/* STEP */
.step{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:30px 26px;box-shadow:var(--shadow-sm);}
.step .n{width:44px;height:44px;border-radius:50%;background:var(--mist);color:var(--teal);font-family:var(--font-display);font-weight:800;font-size:20px;display:flex;align-items:center;justify-content:center;}
.step h3{font-size:22px;font-weight:700;margin:16px 0 8px;}
.step p{color:var(--muted);font-size:15px;}

/* SERVICE CARD */
.svc{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:22px;transition:.18s;}
.svc:hover{box-shadow:var(--shadow);transform:translateY(-2px);border-color:#CFDCDE;}
.svc .ic{width:46px;height:46px;border-radius:12px;background:var(--mist-2);display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:14px;}
.svc h3{font-size:17px;font-weight:700;}
.svc p{font-size:13.5px;color:var(--muted);margin-top:5px;}

/* FORMAT CARD */
.fmt{border-radius:var(--r-lg);padding:34px;color:#fff;position:relative;overflow:hidden;}
.fmt.inp{background:linear-gradient(135deg,#124E5C,#0D3A45);}
.fmt.vid{background:linear-gradient(135deg,#EE6C4D,#DA5537);}
.fmt h3{font-size:26px;font-weight:800;}
.fmt p{opacity:.92;margin-top:10px;font-size:15px;}
.fmt ul{list-style:none;margin-top:18px;display:flex;flex-direction:column;gap:9px;}
.fmt li{display:flex;gap:9px;font-size:14.5px;align-items:flex-start;}
.fmt li::before{content:"✓";font-weight:700;}

/* PERSON CARD */
.person{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;text-align:center;box-shadow:var(--shadow-sm);}
.avatar{width:80px;height:80px;border-radius:50%;margin:0 auto 14px;overflow:hidden;}
.person h3{font-size:18px;font-weight:700;}
.person .role{font-size:13px;color:var(--coral);font-weight:600;margin-top:2px;}
.verified{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;color:var(--ok);background:rgba(30,142,99,.1);padding:4px 10px;border-radius:20px;margin-top:10px;}
.langs{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;margin-top:12px;}
.langs span{font-size:11px;font-weight:600;background:var(--mist);color:var(--teal);padding:4px 9px;border-radius:20px;}

/* PRICE CARD */
.price{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:30px 28px;display:flex;flex-direction:column;}
.price.feat{border:2px solid var(--coral);box-shadow:var(--shadow);position:relative;}
.price.feat .tag{position:absolute;top:-13px;left:28px;background:var(--coral);color:#fff;font-size:12px;font-weight:700;padding:5px 12px;border-radius:20px;}
.price h3{font-size:20px;font-weight:700;}
.price .amt{font-family:var(--font-display);font-weight:800;font-size:42px;margin:12px 0 4px;}
.price .amt small{font-size:16px;color:var(--muted);font-weight:600;}
.price .desc{font-size:14px;color:var(--muted);min-height:42px;}
.price ul{list-style:none;margin:18px 0;display:flex;flex-direction:column;gap:10px;flex:1;}
.price li{display:flex;gap:9px;font-size:14px;align-items:flex-start;}
.price li::before{content:"✓";color:var(--ok);font-weight:800;}

/* BOUNDARY */
.boundary{background:var(--ink);color:#fff;border-radius:var(--r-lg);padding:52px;display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center;}
.boundary h2{font-size:34px;font-weight:800;color:#fff;}
.boundary p{opacity:.85;margin-top:14px;font-size:16px;}
.bcards{display:flex;flex-direction:column;gap:14px;}
.bcard{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:16px 18px;}
.bcard b{display:block;font-size:15px;}
.bcard span{font-size:13px;opacity:.8;}

/* BOOKING */
.booker{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);max-width:820px;margin:44px auto 0;overflow:hidden;}
.bk-prog{display:flex;background:var(--paper);border-bottom:1px solid var(--line);}
.bk-prog .p{flex:1;text-align:center;padding:14px 6px;font-size:12.5px;font-weight:600;color:var(--muted);border-bottom:3px solid transparent;}
.bk-prog .p.active{color:var(--teal);border-bottom-color:var(--coral);}
.bk-prog .p.done{color:var(--ok);}
.bk-body{padding:34px 36px;min-height:300px;}
.bk-body h3{font-size:23px;font-weight:800;margin-bottom:6px;}
.bk-body .sub{color:var(--muted);font-size:15px;margin-bottom:22px;}
.opt-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.opt{border:1.5px solid var(--line);border-radius:14px;padding:16px;cursor:pointer;display:flex;gap:12px;align-items:center;transition:.15s;font-size:14.5px;font-weight:600;background:#fff;}
.opt:hover{border-color:#BcD;background:var(--mist-2);}
.opt.sel{border-color:var(--coral);background:#FEF3EE;box-shadow:0 0 0 3px rgba(238,108,77,.12);}
.opt .em{font-size:22px;}
.slots{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;}
.slot{border:1.5px solid var(--line);border-radius:10px;padding:11px 6px;text-align:center;font-size:14px;font-weight:600;cursor:pointer;background:#fff;}
.slot:hover{border-color:var(--teal);}
.slot.sel{background:var(--teal);color:#fff;border-color:var(--teal);}
.field{margin-bottom:16px;}
.field label{display:block;font-size:13px;font-weight:600;margin-bottom:6px;}
.field input,.field select,.field textarea{width:100%;border:1.5px solid var(--line);border-radius:10px;padding:12px 14px;font-family:var(--font-body);font-size:15px;}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--teal);}
.consent{display:flex;gap:11px;align-items:flex-start;background:var(--mist-2);border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin-bottom:14px;font-size:13.5px;}
.consent input{margin-top:3px;width:18px;height:18px;flex:none;accent-color:var(--coral);}
.bk-foot{display:flex;justify-content:space-between;padding:20px 36px;border-top:1px solid var(--line);background:var(--paper);}
.summary{background:var(--mist-2);border-radius:14px;padding:20px;}
.summary .r{display:flex;justify-content:space-between;padding:8px 0;font-size:14px;border-bottom:1px dashed var(--line);}
.summary .r:last-child{border:none;}
.summary .r b{font-weight:700;}
.confirm{text-align:center;padding:20px 0;}
.confirm .tick{width:74px;height:74px;border-radius:50%;background:rgba(30,142,99,.12);color:var(--ok);display:flex;align-items:center;justify-content:center;font-size:38px;margin:0 auto 18px;}

/* FAQ */
.qa{border-bottom:1px solid var(--line);}
.qa button{width:100%;text-align:left;background:none;border:none;padding:22px 4px;font-size:17px;font-weight:700;font-family:var(--font-display);cursor:pointer;display:flex;justify-content:space-between;gap:16px;color:var(--ink);}
.qa .a{max-height:0;overflow:hidden;transition:.28s;color:var(--muted);font-size:15px;}
.qa.open .a{max-height:260px;padding-bottom:20px;}
.qa .plus{color:var(--coral);flex:none;transition:.2s;}
.qa.open .plus{transform:rotate(45deg);}

/* CTA BAND */
.cta-band{background:linear-gradient(135deg,var(--teal),var(--teal-d));color:#fff;border-radius:var(--r-lg);padding:56px;text-align:center;}
.cta-band h2{font-size:38px;font-weight:800;color:#fff;}
.cta-band p{opacity:.9;margin:14px auto 26px;max-width:520px;font-size:17px;}

/* FOOTER */
footer{background:var(--ink);color:#C6D4D8;padding:60px 0 30px;margin-top:8px;}
.f-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.4fr;gap:36px;}
.f-grid h4{color:#fff;font-size:14px;font-weight:700;margin-bottom:14px;letter-spacing:.04em;}
.f-grid a{display:block;font-size:14px;padding:5px 0;opacity:.82;}
.f-grid a:hover{opacity:1;color:#fff;}
.sub-box{display:flex;gap:8px;margin-top:12px;}
.sub-box input{flex:1;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:#fff;border-radius:10px;padding:11px 13px;font-size:14px;}
.sub-box input::placeholder{color:#8FA6AC;}
.socials{display:flex;gap:10px;margin-top:14px;}
.socials a{width:38px;height:38px;border-radius:10px;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;padding:0;}
.legal{border-top:1px solid rgba(255,255,255,.12);margin-top:40px;padding-top:22px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:13px;opacity:.7;}
.legal a{opacity:1;}

/* legal page body */
.legal-page{max-width:820px;margin:0 auto;padding:60px 24px 90px;}
.legal-page h1{font-size:38px;font-weight:800;margin-bottom:8px;}
.legal-page h2{font-size:22px;font-weight:700;margin:28px 0 8px;}
.legal-page p,.legal-page li{color:var(--muted);font-size:15.5px;margin-bottom:10px;}
.legal-page ul{padding-left:20px;}
.legal-page .back{display:inline-block;margin-bottom:24px;color:var(--teal);font-weight:600;}
.legal-page .warn{background:#FEF3EE;border:1px solid var(--coral);border-radius:12px;padding:16px 18px;color:var(--coral-d);font-size:14px;margin:22px 0;}
