:root{--bg:#fbf8f1;--surface:#fff;--panel:#f5eedc;--panel2:#eef3ef;--fg:#17231f;--muted:#5a635f;--heading:#0c3b33;--teal:#0c3b33;--teal2:#16655a;--gold:#a87e2b;--gold-soft:#dbbe79;--cream:#f5ebcf;--line:rgba(12,59,51,.14);--on-teal:#f5ebcf;--sage:#eaf1ea;--sageb:#5e8c6a;--clay:#f6eae2;--clayb:#b5653f;--f-disp:"Fraunces",Georgia,serif;--f-body:"Inter",system-ui,sans-serif;--f-ser:"Spectral",Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--f-body);line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--f-disp);color:var(--heading);font-weight:500;line-height:1.1;margin:0;text-wrap:balance}p{margin:0}a{color:inherit}img{max-width:100%}.wrap{max-width:1120px;margin:0 auto;padding:0 20px}.eyebrow{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}.btn,.eyebrow{font-weight:600}.btn{display:inline-flex;align-items:center;gap:8px;font-size:15px;padding:12px 22px;border-radius:40px;text-decoration:none;cursor:pointer;border:1.5px solid transparent;transition:transform .15s,background .2s;font-family:var(--f-body)}.btn:hover{transform:translateY(-2px)}.btn-gold{background:var(--gold);color:#fff}.btn-teal{background:var(--teal);color:var(--on-teal)}.btn-ghost{background:transparent;border-color:var(--line);color:var(--heading)}.btn-sm{padding:8px 14px;font-size:13px}.btn[disabled]{opacity:.55;cursor:not-allowed;transform:none}.hdr{position:-webkit-sticky;position:sticky;top:0;z-index:20;background:hsla(42,56%,96%,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;gap:18px;padding:10px 0}.nav img{height:40px;width:auto}.nav-links{display:flex;gap:18px;margin-left:auto;align-items:center;flex-wrap:wrap}.nav-links a{text-decoration:none;color:var(--muted);font-size:14px;font-weight:500}.nav-links a:hover{color:var(--gold)}@media(max-width:820px){.nav-links a.hide-m{display:none}}section{padding:70px 0}.sec-head{max-width:640px;margin:0 auto 40px;text-align:center}.sec-head h2{font-size:clamp(26px,4vw,38px);margin:14px 0 0}.sec-head p{color:var(--muted);margin-top:14px;font-size:17px}.alt{background:var(--panel)}.hero{padding:60px 0}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;grid-gap:48px;gap:48px;align-items:center}@media(max-width:860px){.hero-grid{grid-template-columns:1fr;gap:36px;text-align:center}}.hero h1{font-size:clamp(34px,5.4vw,56px);letter-spacing:-.01em;margin:16px 0 0}.hero h1 i{font-style:italic;color:var(--gold)}.hero .sub{font-family:var(--f-ser);font-size:19px;color:var(--muted);margin-top:20px;max-width:34ch}@media(max-width:860px){.hero .sub{margin-left:auto;margin-right:auto}}.cta-row{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}@media(max-width:860px){.cta-row{justify-content:center}}.hero-by{margin-top:22px;font-size:13.5px;color:var(--muted)}.hero-by b{color:var(--heading);font-weight:600}.book{justify-self:center;width:260px;aspect-ratio:6/9;border-radius:5px 10px 10px 5px;background:linear-gradient(145deg,#12564a,#0a2b25);box-shadow:-2px 0 0 #0a322b,-6px 0 0 #0c3a33,-10px 0 0 #0a322b,0 30px 60px rgba(0,0,0,.35),inset 0 0 0 1px hsla(42,58%,67%,.3);padding:30px 24px;display:flex;flex-direction:column;align-items:center;text-align:center;color:var(--cream);position:relative;text-decoration:none}.book img{height:84px;margin-bottom:6px}.book .bt{font-family:var(--f-disp);font-size:25px;line-height:1.05;margin-top:8px}.book .bt i{color:var(--gold-soft);font-style:italic}.book .brule{width:60%;height:1px;background:linear-gradient(90deg,transparent,var(--gold-soft),transparent);margin:12px 0}.book .bsub{font-family:var(--f-ser);font-style:italic;font-size:12px;color:hsla(44,66%,89%,.8)}.book .bby{margin-top:auto;font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-soft)}.trust{background:var(--teal);color:var(--on-teal)}.trust .wrap{display:flex;flex-wrap:wrap;gap:30px;justify-content:space-between;padding-top:26px;padding-bottom:26px}.trust .t{flex:1 1;min-width:180px}.trust .t b{font-family:var(--f-disp);font-size:26px;display:block;color:var(--gold-soft)}.trust .t span{font-size:13px;color:hsla(44,66%,89%,.82)}.cards{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px}@media(max-width:820px){.cards{grid-template-columns:1fr}}.card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:26px 24px;display:flex;flex-direction:column}.card .ic{font-family:var(--f-disp);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:600}.card h3{font-size:21px;margin:10px 0}.card p{font-size:14.5px;color:var(--muted)}.card ul{list-style:none;padding:0;margin:10px 0 18px;flex:1 1}.card li{font-size:14px;color:var(--muted);padding:5px 0 5px 18px;position:relative}.card li:before{content:"";position:absolute;left:0;top:12px;width:6px;height:6px;border-radius:50%;background:var(--gold)}.tag{display:inline-block;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;background:var(--panel);color:var(--gold);padding:4px 10px;border-radius:20px;font-weight:700}.pills{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.pill{font-size:12.5px;border:1px solid var(--line);border-radius:30px;padding:5px 12px;color:var(--muted);background:var(--surface)}.pill b{color:var(--heading)}.lead{background:var(--teal);color:var(--on-teal);border-radius:22px;padding:46px;display:grid;grid-template-columns:1fr 1fr;grid-gap:40px;gap:40px;align-items:center}@media(max-width:820px){.lead{grid-template-columns:1fr;padding:32px}}.lead h2{color:var(--cream);font-size:clamp(24px,3.4vw,32px)}.lead .sub{color:hsla(44,66%,89%,.85);margin-top:12px;font-size:16px}.lead ul{list-style:none;padding:0;margin:18px 0 0}.lead li{font-size:14px;color:hsla(44,66%,89%,.9);padding:5px 0 5px 24px;position:relative}.lead li:before{content:"\2713";position:absolute;left:0;color:var(--gold-soft)}.form{background:hsla(0,0%,100%,.06);border:1px solid hsla(42,58%,67%,.3);border-radius:16px;padding:24px}.auth label,.form label{display:block;font-size:12.5px;letter-spacing:.04em;margin:0 0 6px;font-weight:600}.form label{color:var(--gold-soft)}.form input,.form select{width:100%;padding:12px 14px;border-radius:10px;border:1px solid hsla(42,58%,67%,.35);background:rgba(10,34,30,.5);color:var(--cream);font-family:var(--f-body);font-size:15px;margin-bottom:14px}.form input::placeholder{color:hsla(44,66%,89%,.5)}.form button{width:100%;border:none;background:var(--gold);color:#1a1403;font-weight:700;font-size:15.5px;padding:14px;border-radius:10px;cursor:pointer;font-family:var(--f-body)}.form .note{font-size:11px;color:hsla(44,66%,89%,.6);margin-top:10px}.form .note,.ok{text-align:center}.ok{padding:10px 0;font-family:var(--f-disp);font-size:22px;color:var(--cream)}.auth{max-width:460px;margin:60px auto;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:32px}.auth h1{font-size:28px;margin-bottom:6px}.auth .sub{color:var(--muted);font-size:14.5px;margin-bottom:22px}.auth label{color:var(--teal2)}.auth input,.auth select{width:100%;padding:12px 14px;border-radius:10px;border:1px solid var(--line);background:var(--bg);color:var(--fg);font-family:var(--f-body);font-size:15px;margin-bottom:14px}.auth .roles{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px;margin-bottom:14px}.auth .role{border:1.5px solid var(--line);border-radius:12px;padding:12px 8px;text-align:center;cursor:pointer;font-size:13.5px;font-weight:600;color:var(--heading);background:var(--bg)}.auth .role.on{border-color:var(--gold);background:var(--panel)}.auth .role small{display:block;font-weight:400;color:var(--muted);font-size:11.5px;margin-top:2px}.auth button{width:100%;border:none;background:var(--teal);color:var(--on-teal);font-weight:700;font-size:15.5px;padding:14px;border-radius:10px;cursor:pointer;font-family:var(--f-body)}.auth .alt{text-align:center;font-size:13.5px;color:var(--muted);margin-top:16px}.err{background:var(--clay);border-left:3px solid var(--clayb);color:#7a3d22}.err,.info{padding:10px 12px;border-radius:0 8px 8px 0;font-size:13.5px;margin-bottom:14px}.info{background:var(--sage);border-left:3px solid var(--sageb);color:#2f5a3b}.dash{max-width:980px;margin:40px auto 80px}.dash h1{font-size:30px;margin-bottom:6px}.dash .sub{color:var(--muted);margin-bottom:26px}.grid2{display:grid;grid-template-columns:1fr 1fr;grid-gap:18px;gap:18px}@media(max-width:760px){.grid2{grid-template-columns:1fr}}.tile{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:22px}.tile h3{font-size:19px;margin-bottom:8px}.tile p{font-size:14.5px;color:var(--muted);margin-bottom:14px}.status{display:inline-block;font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;border-radius:20px}.status.active,.status.approved{background:var(--sage);color:#2f5a3b}.status.pending,.status.requested{background:#fbf1d6;color:#8a6412}.status.cancelled,.status.rejected{background:var(--clay);color:#7a3d22}table.tbl{width:100%;border-collapse:collapse;font-size:13.5px;background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden}table.tbl th{background:var(--teal);color:var(--on-teal);text-align:left;padding:10px 12px;font-weight:600}table.tbl td{padding:10px 12px;border-top:1px solid var(--line);vertical-align:top}.tbl-wrap{overflow-x:auto;margin-bottom:28px}.badge-vv{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--teal2);border:1px solid var(--line);border-radius:30px;padding:6px 12px;background:var(--surface)}.badge-vv i{width:8px;height:8px;border-radius:50%;background:var(--gold);display:inline-block}footer{background:var(--teal);color:hsla(44,66%,89%,.75);padding:46px 0 34px;margin-top:20px}footer .top{display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;align-items:center;border-bottom:1px solid hsla(42,58%,67%,.2);padding-bottom:22px;margin-bottom:20px}footer img{height:46px}footer .links{display:flex;gap:20px;flex-wrap:wrap}footer .links a{color:var(--gold-soft);text-decoration:none;font-size:14px}footer .disc{font-size:12px;color:hsla(44,66%,89%,.5);line-height:1.6;max-width:760px}.frame{height:calc(100vh - 64px);min-height:600px;border:none;width:100%;display:block}