:root{--ink:#203139;--muted:#5f7078;--teal:#087d7b;--teal-bright:#11aaa6;--coral:#ff6b57;--cream:#fff3e8;--paper:#fbfcfa;--soft:#f3f7f5;--line:#dde8e4;--shadow:0 18px 48px #20313914}*{box-sizing:border-box}html{color:var(--ink);background:var(--paper);scroll-behavior:smooth}body{background:var(--paper);margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:var(--teal);text-underline-offset:4px}img{max-width:100%}.page-hero{isolation:isolate;background:linear-gradient(135deg, #ffffffed, #ffffffbd), radial-gradient(circle at 84% 18%, #11aaa624, transparent 28rem), var(--paper);border-bottom:1px solid var(--line);min-height:clamp(500px,66vh,720px);padding:24px clamp(20px,4vw,56px) clamp(58px,8vw,96px);position:relative;overflow:hidden}body[data-template=guide] .page-hero{color:#fff;background:linear-gradient(90deg, #142229e0 0%, #142229b8 46%, #14222942 100%), linear-gradient(0deg, #142229b8, #14222924 58%), var(--hero-image) center / cover no-repeat;border-bottom:0}.site-header{z-index:2;width:min(1180px,100%);box-shadow:var(--shadow);backdrop-filter:blur(16px);background:#ffffffe0;border:1px solid #2031391f;border-radius:24px;align-items:center;gap:22px;margin-inline:auto;padding:12px;display:flex;position:relative}body[data-template=guide] .site-header{background:#ffffffeb}.brand{background:#fff;border:1px solid #20313914;border-radius:17px;align-items:center;padding:7px 9px;display:inline-flex}.brand img{width:205px;height:auto;display:block}.main-nav{flex-wrap:wrap;justify-content:center;gap:clamp(14px,2.6vw,34px);margin-left:auto;display:flex}.main-nav a,.home-link{color:var(--ink);letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:850;text-decoration:none}.main-nav a:hover,.home-link:hover{color:var(--teal)}.home-link{color:#fff;background:var(--ink);border-radius:999px;align-items:center;min-height:40px;padding:0 14px;display:inline-flex}.home-link:hover{color:#fff;background:var(--teal)}.hero-inner{z-index:1;width:min(1180px,100%);margin:clamp(78px,10vw,128px) auto 0;position:relative}.breadcrumbs{color:var(--muted);flex-wrap:wrap;gap:9px;margin:0 0 24px;font-size:.78rem;display:flex}body[data-template=guide] .breadcrumbs{color:#ffffffc2}body[data-template=guide] .breadcrumbs a{color:#b6f0eb}.eyebrow{color:var(--teal);letter-spacing:.18em;text-transform:uppercase;margin:0 0 18px;font-size:.72rem;font-weight:900}body[data-template=guide] .eyebrow{color:#b6f0eb}h1{letter-spacing:-.06em;text-wrap:balance;max-width:900px;margin:0;font-family:Manrope,Inter,ui-sans-serif,sans-serif;font-size:clamp(3rem,7vw,6.4rem);line-height:.94}.dek{max-width:760px;color:var(--muted);margin:28px 0 0;font-size:clamp(1.05rem,1.7vw,1.26rem);line-height:1.65}body[data-template=guide] .dek{color:#ffffffe6}.hero-meta{box-shadow:var(--shadow);background:#ffffffdb;border:1px solid #2031391a;border-radius:999px;flex-wrap:wrap;gap:10px;margin-top:30px;padding:10px;display:inline-flex}.hero-meta span,.hero-meta time{color:var(--ink);background:#fff;border-radius:999px;padding:8px 12px;font-size:.72rem;font-weight:760}.hero-meta span{color:var(--teal);text-transform:uppercase;letter-spacing:.08em;font-size:.64rem}main{width:min(1180px,100% - 40px);margin-inline:auto;padding:clamp(46px,7vw,82px) 0 clamp(72px,9vw,120px)}article{width:min(900px,100%);margin-inline:auto}article section{margin-top:52px;scroll-margin-top:34px}article h2{letter-spacing:-.045em;text-wrap:balance;max-width:780px;margin:0 0 16px;font-family:Manrope,Inter,ui-sans-serif,sans-serif;font-size:clamp(1.75rem,3.2vw,2.85rem);line-height:1.05}article h3{letter-spacing:.08em;text-transform:uppercase;margin:28px 0 9px;font-size:.82rem}article p,article li{color:#40525a;font-size:1rem;line-height:1.75}article ul{padding-left:20px}article li+li{margin-top:8px}article section>h2:first-child:before{content:"";background:var(--teal-bright);border-radius:999px;width:42px;height:5px;margin:0 0 16px;display:block}.guide-brief,.affiliate-disclosure,.guide-index,.notice,.principle,.legal-data,.policy-table,.route-grid{border-radius:24px}.notice{color:#40525a;background:var(--cream);border:1px solid #ff6b5738;margin:28px 0;padding:20px 22px;box-shadow:0 12px 32px #ff6b5714}.principle{border-top:1px solid var(--line);grid-template-columns:42px 1fr;gap:17px;padding:22px 0;display:grid}.principle>span{color:var(--coral);font-family:ui-monospace,monospace;font-size:.75rem;font-weight:800}.principle h3{margin:0 0 5px}.principle p{margin:0}.legal-data{border:1px solid var(--line);background:#fff;margin:26px 0;overflow:hidden}.legal-data div{border-bottom:1px solid var(--line);grid-template-columns:minmax(130px,.6fr) 1.4fr;gap:24px;padding:16px 18px;display:grid}.legal-data div:last-child{border-bottom:0}.legal-data dt{color:var(--teal);letter-spacing:.1em;text-transform:uppercase;font-size:.68rem;font-weight:850}.legal-data dd{margin:0;font-size:.92rem;line-height:1.5}.policy-table{border-collapse:separate;border-spacing:0;border:1px solid var(--line);background:#fff;width:100%;margin:24px 0;font-size:.83rem;line-height:1.5;overflow:hidden}.policy-table th,.policy-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:14px 12px}.policy-table th{color:var(--teal);background:var(--soft);letter-spacing:.08em;text-transform:uppercase;font-size:.65rem}.route-grid{grid-template-columns:repeat(2,1fr);gap:16px;margin-top:32px;display:grid}.route-card{min-height:300px;color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;padding:0 24px 24px;text-decoration:none;overflow:hidden}.route-card img{object-fit:cover;width:calc(100% + 48px);height:155px;margin:0 -24px 22px;display:block}.route-card:hover{transform:translateY(-2px)}.route-card small{color:var(--teal);letter-spacing:.12em;text-transform:uppercase;font-size:.65rem;font-weight:850}.route-card h3{letter-spacing:-.035em;text-transform:none;margin:24px 0 9px;font-family:Manrope,sans-serif;font-size:1.35rem}.route-card p{color:var(--muted);margin:0;font-size:.86rem;line-height:1.55}.button-link{color:#fff;background:var(--ink);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;align-items:center;min-height:44px;margin-top:24px;padding:0 17px;font-size:.68rem;font-weight:850;text-decoration:none;display:inline-flex}.button-link:hover{background:var(--teal)}.form-grid{grid-template-columns:1fr 1fr;gap:20px;margin-top:30px;display:grid}.form-grid label{color:var(--teal);letter-spacing:.08em;text-transform:uppercase;gap:7px;font-size:.67rem;font-weight:850;display:grid}.form-grid label.wide{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea{width:100%;min-height:50px;color:var(--ink);background:#fff;border:1px solid #c8d6d2;border-radius:14px;padding:12px 14px;font:.92rem Inter,sans-serif}.form-grid textarea{resize:vertical;min-height:110px}.form-grid .consent-field{color:var(--muted);letter-spacing:0;text-transform:none;grid-template-columns:auto 1fr;align-items:start;font-size:.75rem;font-weight:400;line-height:1.5;display:grid}.form-grid .consent-field input{width:19px;min-height:19px}.form-grid button{color:#fff;background:var(--ink);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border:0;border-radius:999px;grid-column:1/-1;min-height:52px;font-weight:850}.form-grid button:hover{background:var(--teal)}.venue-gallery,.romantic-gallery{border:1px solid var(--line);width:min(1180px,100vw - 40px);box-shadow:var(--shadow);background:#fff;border-radius:28px;margin-top:0;margin-bottom:56px;margin-left:50%;padding:10px;transform:translate(-50%)}.venue-gallery img,.romantic-gallery img{border-radius:20px}footer{border-top:1px solid var(--line);width:min(1180px,100% - 40px);color:var(--muted);justify-content:space-between;gap:30px;margin-inline:auto;padding:28px 0 36px;font-size:.78rem;display:flex}footer p{margin:0}footer nav{flex-wrap:wrap;justify-content:end;gap:18px;display:flex}footer a{color:var(--muted)}@media (width<=760px){.page-hero{min-height:0;padding:14px 18px 56px}.site-header{border-radius:20px;align-items:flex-start}.brand img{width:170px}.main-nav{display:none}.home-link{margin-left:auto}.hero-inner{margin-top:58px}h1{font-size:clamp(2.55rem,12vw,4.4rem)}.dek{font-size:1rem}.hero-meta{border-radius:22px}main{width:calc(100% - 36px);padding-top:42px}.legal-data div,.route-grid,.form-grid{grid-template-columns:1fr}.policy-table{display:block;overflow-x:auto}.venue-gallery,.romantic-gallery{border-radius:22px;width:calc(100vw - 28px)}footer{flex-direction:column}footer nav{justify-content:start}}
