@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=DM+Serif+Display&display=swap');
button[aria-label^="Powered by Netlify"]{display:none!important}
:root{--forest:#073d35;--deep:#042b26;--mint:#5de0cd;--cream:#f7f5ed;--paper:#fff;--ink:#102e2a;--muted:#61736f;--line:#dce6e2;--sand:#f4d27a;--shadow:0 24px 70px rgba(3,43,38,.12)}*{box-sizing:border-box}html{background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif}body{margin:0}button,input,textarea{font:inherit}.auth-view{min-height:100svh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 80% 10%,rgba(93,224,205,.22),transparent 30%),linear-gradient(140deg,var(--cream),#eaf5f0)}.auth-card{width:min(100%,520px);padding:clamp(32px,6vw,64px);background:rgba(255,255,255,.9);border:1px solid #fff;border-radius:30px;box-shadow:var(--shadow);backdrop-filter:blur(18px)}.admin-brand{display:flex;gap:13px;align-items:center;color:var(--forest);text-decoration:none}.admin-brand strong,.admin-brand small{display:block}.admin-brand strong{font-family:"DM Serif Display";font-size:1.22rem;font-weight:400}.admin-brand small{margin-top:2px;font-size:.66rem;letter-spacing:.15em;text-transform:uppercase}.brand-wave{display:grid;place-items:center;width:44px;height:44px;font-size:2rem;border:1px solid currentColor;border-radius:50%}.auth-card .eyebrow{margin-top:70px}.eyebrow{margin:0 0 12px;color:#37726a;font-size:.7rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.auth-card h1{margin:0;font-family:"DM Serif Display";font-size:clamp(2.5rem,7vw,4rem);font-weight:400;line-height:.95}.muted{color:var(--muted);line-height:1.65}.auth-card form,.fields{display:grid;gap:18px;margin-top:32px}label{display:grid;gap:8px;font-size:.74rem;font-weight:700;letter-spacing:.05em}label small{color:#718681;font-weight:500;letter-spacing:0}input,textarea{width:100%;padding:14px 15px;color:var(--ink);background:#fbfcfa;border:1px solid var(--line);border-radius:11px;outline:none;transition:.2s}input:focus,textarea:focus{border-color:#4ac6b5;box-shadow:0 0 0 4px rgba(74,198,181,.12)}textarea{resize:vertical}.primary,.secondary{min-height:48px;padding:12px 20px;font-weight:700;border:0;border-radius:999px;cursor:pointer}.primary{color:#fff;background:var(--forest);box-shadow:0 10px 24px rgba(7,61,53,.18)}.primary:hover{background:#0b554a}.secondary{color:var(--forest);background:#e4f4ef;border:1px solid #c8e8df}.text-button{margin-top:18px;padding:0;color:var(--forest);background:none;border:0;border-bottom:1px solid;cursor:pointer}.notice{min-height:22px;margin-bottom:0;color:#a23939}.app{min-height:100svh}.sidebar{position:fixed;z-index:5;inset:0 auto 0 0;display:flex;flex-direction:column;width:270px;padding:32px 22px;color:#fff;background:var(--deep)}.admin-brand.inverse{color:#fff}.sidebar nav{display:grid;gap:8px;margin-top:70px}.nav-item{display:flex;gap:13px;align-items:center;padding:13px 15px;color:rgba(255,255,255,.67);text-align:left;background:transparent;border:0;border-radius:12px;cursor:pointer}.nav-item span{color:var(--mint);font-size:.66rem}.nav-item:hover,.nav-item.is-active{color:#fff;background:rgba(255,255,255,.09)}.sidebar-bottom{display:grid;gap:12px;margin-top:auto;padding:20px 14px 0;border-top:1px solid rgba(255,255,255,.12)}.sidebar-bottom a,.sidebar-bottom button{width:max-content;padding:0;color:rgba(255,255,255,.72);font-size:.78rem;text-decoration:none;background:none;border:0;cursor:pointer}.workspace{margin-left:270px;min-height:100svh}.workspace-header{position:sticky;z-index:4;top:0;display:flex;justify-content:space-between;gap:24px;align-items:center;padding:22px clamp(24px,5vw,72px);background:rgba(247,245,237,.88);border-bottom:1px solid rgba(7,61,53,.08);backdrop-filter:blur(18px)}.workspace-header h1{margin:0;font-family:"DM Serif Display";font-size:2rem;font-weight:400}.header-actions{display:flex;gap:16px;align-items:center}.header-actions span{color:var(--muted);font-size:.72rem}.panel{display:none;padding:clamp(36px,5vw,72px)}.panel.is-active{display:block}.panel-intro{max-width:720px;margin-bottom:40px}.panel-intro h2{margin:0;font-family:"DM Serif Display";font-size:clamp(2.5rem,5vw,4.5rem);font-weight:400;line-height:1}.panel-intro p{color:var(--muted)}.editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}.editor-card{padding:28px;background:var(--paper);border:1px solid rgba(7,61,53,.09);border-radius:22px;box-shadow:0 12px 36px rgba(7,61,53,.06)}.editor-card.wide{grid-column:1/-1}.card-heading{display:flex;justify-content:space-between;gap:18px;align-items:start;margin-bottom:26px;padding-bottom:18px;border-bottom:1px solid var(--line)}.card-heading span{font-family:"DM Serif Display";font-size:1.6rem}.card-heading small{color:var(--muted);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase}.fields{margin:0}.fields.two{grid-template-columns:repeat(2,minmax(0,1fr))}.fields .full{grid-column:1/-1}.image-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:28px}.image-pair strong{display:block;margin-bottom:9px;font-size:.75rem}.single-image,.gallery-item{position:relative;overflow:hidden;background:#dcebe6;border-radius:14px}.single-image{aspect-ratio:16/9}.single-image img,.gallery-item img{width:100%;height:100%;object-fit:cover}.image-actions{position:absolute;right:9px;bottom:9px;display:flex;gap:6px}.image-actions button,.gallery-toolbar button{padding:8px 11px;color:#fff;font-size:.68rem;font-weight:700;background:rgba(3,35,31,.75);border:1px solid rgba(255,255,255,.3);border-radius:999px;backdrop-filter:blur(8px);cursor:pointer}.destination-editors{display:grid;gap:22px}.destination-card{display:grid;grid-template-columns:.7fr 1.3fr;gap:28px}.destination-card .gallery-editor{align-self:start}.gallery-editor{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.gallery-item{aspect-ratio:4/3}.gallery-item .image-actions{opacity:0;transition:.2s}.gallery-item:hover .image-actions{opacity:1}.gallery-toolbar{display:flex;align-items:center;justify-content:center;min-height:100px;border:1px dashed #9ab8b0;border-radius:14px}.gallery-toolbar button{color:var(--forest);background:#e1f2ed;border:0}.main-gallery-card{margin-top:22px}.review-number{color:#4b8f85;font-size:.72rem;font-weight:700;letter-spacing:.12em}.link-button{display:inline-flex;align-items:center;text-decoration:none}.toast{position:fixed;z-index:30;right:24px;bottom:24px;max-width:360px;padding:14px 20px;color:#fff;background:var(--forest);border-radius:12px;box-shadow:var(--shadow);opacity:0;transform:translateY(15px);pointer-events:none;transition:.25s}.toast.is-visible{opacity:1;transform:none}.is-uploading{opacity:.55;pointer-events:none}@media(max-width:1000px){.sidebar{position:static;width:auto;min-height:auto}.sidebar nav{grid-template-columns:repeat(4,1fr);margin-top:28px}.sidebar-bottom{display:none}.workspace{margin:0}.destination-card{grid-template-columns:1fr}}@media(max-width:720px){.sidebar{padding:22px 16px}.sidebar nav{display:flex;overflow:auto}.nav-item{flex:0 0 auto}.workspace-header{align-items:flex-start;flex-direction:column}.header-actions{width:100%;justify-content:space-between}.header-actions span{display:none}.panel{padding:36px 16px}.editor-grid,.fields.two,.image-pair{grid-template-columns:1fr}.editor-card.wide,.fields .full{grid-column:auto}.gallery-editor{grid-template-columns:repeat(2,minmax(0,1fr))}}

[hidden] { display: none !important; }
.gallery-item:has(.gallery-caption-fields) { aspect-ratio: auto; overflow: visible; }
.gallery-item:has(.gallery-caption-fields) img { display: block; aspect-ratio: 4 / 3; height: auto; border-radius: 14px 14px 0 0; }
.gallery-item:has(.gallery-caption-fields) .image-actions { top: 9px; bottom: auto; }
.gallery-caption-fields { display: grid; gap: 7px; padding: 9px; background: #f0f7f3; border-radius: 0 0 14px 14px; }
.gallery-caption-fields label { font-size: .64rem; letter-spacing: 0; }
.gallery-caption-fields input { padding: 7px 9px; font-size: .75rem; }
.check-field { display: flex; gap: 10px; align-items: start; line-height: 1.45; font-size: .73rem; letter-spacing: 0; }
.check-field input { width: auto; margin: 2px 0 0; }
.review-intro-card { margin-bottom: 22px; }
#add-review { margin-top: 22px; }
.remove-review { margin: 0; border: 0; color: #8a2e2e; font-size: .72rem; }
.main-gallery-card .gallery-editor { grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); }
@media (hover: none) { .gallery-item .image-actions { opacity: 1; } }
