:root{--sunny-gold:#ffb800;--soft-cream:#fdf6f0;--trusting-ocean:#0f4c5c;--safari-green:#2a9d8f;--ink:#12343f;--muted:#5a7178;--card:rgba(255,255,255,0.72);--shadow:0 18px 50px rgba(15,76,92,0.12);--radius:18px;--font-display:"Fraunces","Palatino Linotype",Palatino,serif;--font-body:"DM Sans","Segoe UI",sans-serif}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%}body{font-family:var(--font-body);color:var(--ink);background:radial-gradient(1200px 600px at 10% -10%,rgba(255,184,0,.28),transparent 55%),radial-gradient(900px 500px at 90% 0,rgba(42,157,143,.18),transparent 50%),linear-gradient(180deg,#fff9f2 0,var(--soft-cream) 42%,#f7efe6 100%)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(1120px,calc(100% - 2rem));margin-inline:auto}.site-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.15rem 0}.brand{font-family:var(--font-display);font-weight:700;font-size:clamp(1.35rem,2.4vw,1.85rem);letter-spacing:-.02em;color:var(--trusting-ocean)}.brand span{color:var(--sunny-gold)}.nav{display:flex;flex-wrap:wrap;gap:.85rem;align-items:center;font-size:.95rem;color:var(--trusting-ocean)}.nav a:hover{color:var(--safari-green)}.btn-compact{padding:.55rem .95rem;font-size:.9rem}.oauth-stack{margin:0 0 1.1rem;padding-bottom:1rem;border-bottom:1px solid rgba(15,76,92,.1)}.oauth-row{display:grid;grid-gap:.55rem;gap:.55rem}.btn-oauth{width:100%;background:#fff;color:var(--trusting-ocean);border:1px solid rgba(15,76,92,.18);box-shadow:none}.btn-oauth:hover{background:rgba(255,255,255,.92)}@media (max-width:720px){.site-header{flex-direction:column;align-items:flex-start}.nav{width:100%}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:0;border-radius:999px;padding:.85rem 1.35rem;font:inherit;font-weight:700;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--sunny-gold);color:var(--trusting-ocean);box-shadow:0 10px 24px rgba(255,184,0,.35)}.btn-secondary{background:var(--trusting-ocean);color:#fff}.btn-ghost{background:transparent;color:var(--trusting-ocean);border:1px solid rgba(15,76,92,.2)}.hero{display:grid;grid-gap:1.5rem;gap:1.5rem;padding:2.5rem 0 3.5rem;min-height:min(78vh,720px);align-content:end}.hero-panel{max-width:40rem;animation:rise .7s ease both}.hero h1{font-family:var(--font-display);font-size:clamp(2.4rem,6vw,4.4rem);line-height:.98;letter-spacing:-.03em;margin:.35rem 0 .85rem;color:var(--trusting-ocean)}.hero p{margin:0;font-size:1.08rem;line-height:1.55;color:var(--muted);max-width:34rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.4rem}.hero-visual{border-radius:28px;min-height:280px;background:linear-gradient(135deg,rgba(15,76,92,.55),rgba(42,157,143,.35)),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cpath fill='%23FFB800' fill-opacity='0.18' d='M0 80h160v80H0z'/%3E%3Cpath fill='%232A9D8F' fill-opacity='0.2' d='M0 0h160v80H0z'/%3E%3C/svg%3E");background-size:cover;box-shadow:var(--shadow);animation:fade .9s ease both}.section{padding:2.5rem 0 3rem}.section h2{font-family:var(--font-display);font-size:clamp(1.7rem,3vw,2.4rem);color:var(--trusting-ocean);margin:0 0 .5rem}.section .lede{color:var(--muted);margin:0 0 1.5rem;max-width:40rem}.grid{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.stay-card{background:var(--card);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(15,76,92,.08);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:transform .18s ease}.stay-card:hover{transform:translateY(-3px)}.stay-card .media{height:160px;background:linear-gradient(160deg,rgba(42,157,143,.55),rgba(15,76,92,.65)),radial-gradient(circle at 30% 20%,rgba(255,184,0,.45),transparent 45%)}.stay-card .body{padding:1rem 1.1rem 1.2rem}.stay-card h3{margin:0 0 .35rem;font-size:1.1rem;color:var(--trusting-ocean)}.meta{color:var(--muted);font-size:.92rem}.price{margin-top:.7rem;font-weight:700;color:var(--safari-green)}.form-shell{width:min(480px,100%);margin:2rem auto 3rem;background:rgba(255,255,255,.8);border:1px solid rgba(15,76,92,.08);border-radius:24px;padding:1.5rem;box-shadow:var(--shadow)}.form-shell h1{font-family:var(--font-display);margin:0 0 .35rem}.form-shell h1,label{color:var(--trusting-ocean)}label{display:grid;grid-gap:.35rem;gap:.35rem;margin-bottom:.9rem;font-size:.92rem}input,select,textarea{width:100%;border:1px solid rgba(15,76,92,.18);border-radius:12px;padding:.75rem .85rem;font:inherit;background:#fff;color:var(--ink)}.search-bar{display:grid;grid-gap:.75rem;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));background:rgba(255,255,255,.85);border-radius:20px;padding:.9rem;border:1px solid rgba(15,76,92,.08);box-shadow:var(--shadow);margin:1.5rem 0 2rem}.site-footer{padding:2rem 0 2.5rem;color:var(--muted);font-size:.9rem;border-top:1px solid rgba(15,76,92,.08);margin-top:2rem}.site-footer-links a{color:var(--trusting-ocean);text-decoration:underline;text-underline-offset:.15em}.terms-agree{display:flex;gap:.65rem;align-items:flex-start;margin:.75rem 0 1rem;font-size:.92rem;color:var(--trusting-ocean)}.terms-agree input[type=checkbox]{width:auto;margin-top:.2rem;accent-color:var(--safari-green)}.terms-agree a{color:var(--safari-green);font-weight:600}.legal-doc{width:min(760px,100%);margin:1.5rem auto 3rem;line-height:1.65;color:var(--trusting-ocean)}.legal-doc h1{font-family:var(--font-display);font-size:clamp(1.6rem,4vw,2.2rem);margin:0 0 .75rem}.legal-doc h2{margin-top:2rem;font-size:1.25rem}.legal-doc h3{margin-top:1.25rem;font-size:1.05rem}.legal-doc ul{padding-left:1.2rem}.legal-doc blockquote{margin:1rem 0;padding:.9rem 1rem;border-left:4px solid var(--sunny-gold,#ffb800);background:rgba(255,184,0,.12);border-radius:0 12px 12px 0}.legal-review-banner{background:rgba(176,60,60,.12);color:#7a1f1f;font-weight:600;font-size:.92rem}.alert,.legal-review-banner{border-radius:12px;padding:.75rem .9rem}.alert{margin-bottom:1rem;background:rgba(255,184,0,.18);color:var(--trusting-ocean)}.alert-error{background:rgba(176,60,60,.12);color:#7a1f1f}.confirm-card{width:min(640px,100%);margin:2rem auto 3rem;background:rgba(255,255,255,.86);border-radius:24px;padding:1.75rem;box-shadow:var(--shadow);animation:rise .6s ease both}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes fade{0%{opacity:0}to{opacity:1}}@media (min-width:900px){.hero{grid-template-columns:1.1fr .9fr;align-items:end}}