:root{
  --ink:#102b3d;
  --ink-soft:#4c6472;
  --green:#309760;
  --green-deep:#23734a;
  --green-soft:#eaf5ef;
  --paper:#f7faf8;
  --line:#dce7e1;
  --white:#fff;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--paper);color:var(--ink)}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
.tp-entry-shell{min-height:100svh;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(430px,.92fr)}
.tp-entry-brand{position:relative;min-height:100svh;overflow:hidden;background:#0d2a2a;color:#fff}
.tp-entry-map{position:absolute;inset:0;background:url('/assets/home-toura-passport-map.png') center/cover no-repeat;transform:scale(1.045);filter:saturate(.88) contrast(1.02)}
.tp-entry-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,32,32,.92) 0%,rgba(7,38,35,.78) 42%,rgba(12,42,39,.36) 100%),linear-gradient(0deg,rgba(5,24,24,.72) 0%,transparent 50%,rgba(5,24,24,.24) 100%)}
.tp-entry-brand-inner{position:relative;z-index:1;min-height:100svh;padding:48px clamp(40px,5vw,78px) 34px;display:flex;flex-direction:column}
.tp-wordmark{display:inline-flex;width:max-content;align-items:baseline}.tp-wordmark strong{display:flex;gap:5px;font-size:24px;letter-spacing:.13em;font-weight:780}.tp-wordmark b{color:#79d6a3;font-weight:780}
.tp-entry-message{margin:auto 0;max-width:710px;padding:70px 0}
.tp-entry-kicker{margin:0 0 18px;font-size:12px;font-weight:800;letter-spacing:.22em;color:#9ce5bd}
.tp-entry-message h1{margin:0;font-size:clamp(48px,5.4vw,78px);line-height:.98;letter-spacing:-.045em;font-weight:760;max-width:760px}
.tp-entry-mission{margin:26px 0 0;font-size:clamp(22px,2.2vw,32px);font-weight:560;letter-spacing:-.02em}.tp-entry-mission em{color:#9ce5bd;font-style:normal;font-weight:790}
.tp-entry-copy{max-width:610px;margin:22px 0 0;font-size:16px;line-height:1.7;color:rgba(255,255,255,.78)}
.tp-entry-links{display:flex;gap:22px;align-items:center;flex-wrap:wrap;font-size:13px;color:rgba(255,255,255,.72)}.tp-entry-links a{transition:color .18s ease}.tp-entry-links a:hover{color:#fff}.tp-entry-links a:first-child{color:#b9efcf;font-weight:740}
.tp-entry-access{min-height:100svh;display:grid;place-items:center;background:linear-gradient(180deg,#fbfdfc 0%,#f4f8f6 100%);padding:48px clamp(34px,4.5vw,72px)}
.tp-entry-access-inner{width:min(100%,500px)}
.tp-access-heading{display:flex;align-items:center;gap:14px;margin-bottom:28px}.tp-access-mark{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:var(--green);color:#fff;font-weight:850;letter-spacing:.04em;box-shadow:0 12px 26px rgba(48,151,96,.18)}.tp-access-heading p{margin:0 0 3px;font-size:10px;font-weight:800;letter-spacing:.18em;color:#789087}.tp-access-heading h2{margin:0;font-size:26px;letter-spacing:-.03em}
.tp-access-lead{margin:0 0 28px;color:var(--ink-soft);font-size:16px;line-height:1.55}
.tp-access-actions{display:grid;gap:12px}.tp-btn{min-height:54px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-weight:780;font-size:15px;border:1px solid transparent;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.tp-btn:hover{transform:translateY(-1px)}.tp-btn-primary{background:var(--green);color:#fff;box-shadow:0 12px 25px rgba(48,151,96,.18)}.tp-btn-primary:hover{background:var(--green-deep)}.tp-btn-secondary{background:#fff;border-color:var(--line);color:var(--ink)}.tp-btn-secondary:hover{box-shadow:0 10px 24px rgba(16,43,61,.08)}
.tp-access-rule{display:flex;align-items:center;gap:14px;margin:25px 0;color:#94a69e;font-size:12px}.tp-access-rule::before,.tp-access-rule::after{content:"";height:1px;background:var(--line);flex:1}
.tp-business-card{display:grid;grid-template-columns:44px 1fr auto;gap:13px;align-items:center;border:1px solid #cfe3d8;background:var(--green-soft);border-radius:18px;padding:16px 17px;transition:transform .16s ease,box-shadow .16s ease}.tp-business-card:hover{transform:translateY(-1px);box-shadow:0 12px 26px rgba(16,43,61,.07)}.tp-business-icon{width:42px;height:42px;border-radius:13px;background:#fff;display:grid;place-items:center;color:var(--green);font-weight:900}.tp-business-card strong{display:block;font-size:15px}.tp-business-card small{display:block;margin-top:4px;color:#608070;font-size:12px}.tp-business-card>b{font-size:20px;color:var(--green)}
.tp-explore-link{display:flex;justify-content:center;gap:8px;margin:24px auto 0;font-size:14px;font-weight:730;color:var(--green-deep);width:max-content}.tp-explore-link span{transition:transform .16s ease}.tp-explore-link:hover span{transform:translateX(3px)}
.tp-access-note{margin:28px 0 0;padding-top:22px;border-top:1px solid var(--line);font-size:12px;line-height:1.6;color:#789087;text-align:center}
@media(max-width:900px){.tp-entry-shell{grid-template-columns:1fr}.tp-entry-brand{min-height:54svh}.tp-entry-brand-inner{min-height:54svh;padding:30px 26px 24px}.tp-entry-message{padding:48px 0 42px}.tp-entry-message h1{font-size:clamp(40px,10vw,62px)}.tp-entry-links{display:none}.tp-entry-access{min-height:auto;padding:42px 24px 52px}}
@media(max-width:520px){.tp-entry-brand{min-height:48svh}.tp-entry-brand-inner{min-height:48svh}.tp-entry-copy{display:none}.tp-wordmark strong{font-size:19px}.tp-entry-mission{font-size:20px}.tp-entry-access{padding-top:34px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
