@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-obahsSVq.woff2)format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2)format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2)format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2)format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2)format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-500-normal-BasfLYem.woff2)format("woff2"),url(/assets/inter-cyrillic-500-normal-CxZf_p3X.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-ext-500-normal-C4iEst2y.woff2)format("woff2"),url(/assets/inter-greek-ext-500-normal-2j5mBUwD.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-500-normal-BIZE56-Y.woff2)format("woff2"),url(/assets/inter-greek-500-normal-Xzm54t5V.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-vietnamese-500-normal-DOriooB6.woff2)format("woff2"),url(/assets/inter-vietnamese-500-normal-mJboJaSs.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2)format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2)format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-600-normal-CWCymEST.woff2)format("woff2"),url(/assets/inter-cyrillic-600-normal-4D_pXhcN.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2)format("woff2"),url(/assets/inter-greek-ext-600-normal-B8X0CLgF.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-plRanbMR.woff2)format("woff2"),url(/assets/inter-greek-600-normal-BZpKdvQh.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2)format("woff2"),url(/assets/inter-vietnamese-600-normal-BuLX-rYi.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2)format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Serif Display;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-serif-display-latin-ext-400-normal-p18AlW_x.woff2)format("woff2"),url(/assets/dm-serif-display-latin-ext-400-normal-B1toqZab.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Serif Display;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-serif-display-latin-400-normal-C5_t9oOD.woff2)format("woff2"),url(/assets/dm-serif-display-latin-400-normal-_kVFYEpx.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Serif Display;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/dm-serif-display-latin-ext-400-italic-DiLdooSn.woff2)format("woff2"),url(/assets/dm-serif-display-latin-ext-400-italic-D6UvgSoX.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Serif Display;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/dm-serif-display-latin-400-italic-DpcbibHm.woff2)format("woff2"),url(/assets/dm-serif-display-latin-400-italic-BgxzcTJK.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-bg:#f6f1e8;--color-text:#17221f;--color-primary:#b86b4b;--color-primary-strong:#9c5436;--color-primary-hover:#874629;--color-primary-ink:#8f4b2c;--color-secondary:#6e7560;--color-sand:#d8c8ae;--color-sand-soft:#ece3d3;--color-surface:#fff;--color-error:#b84b4b;--color-error-ink:#9c3a3a;--color-success:#4b7a5a;--color-muted:#525d58;--font-heading:"Canela", "DM Serif Display", Georgia, serif;--font-body:"Inter", "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-pill:999px;--shadow-float:0 4px 16px #17221f14;--ease:.18s ease;--max-width:1280px;--gutter:16px}@media (width>=768px){:root{--gutter:24px}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;overflow-wrap:break-word;margin:0;font-size:16px;line-height:1.55}h1,h2,h3{font-family:var(--font-heading);letter-spacing:.005em;margin:0 0 var(--space-3);font-weight:400;line-height:1.15}h1{font-size:clamp(2.25rem,6vw,4rem)}h2{font-size:clamp(1.6rem,3.5vw,2.25rem)}h3{font-size:1.3rem}h4{margin:0 0 var(--space-2);font-size:1rem;font-weight:600}p{margin:0 0 var(--space-3)}a{color:var(--color-primary-ink);text-underline-offset:3px}a:hover{text-decoration-thickness:2px}img{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}@media (width<=767px){input,select,textarea{font-size:max(16px,1em)}}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{left:var(--space-4);z-index:100;background:var(--color-surface);padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);position:absolute;top:-48px}.skip-link:focus{top:var(--space-2)}.container{width:100%;max-width:var(--max-width);padding:0 var(--gutter);margin:0 auto}.shell-main{min-height:calc(100vh - 68px)}.page{padding-top:var(--space-6);padding-bottom:var(--space-8);min-height:60vh}.muted{color:var(--color-muted)}.small{font-size:.875rem}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--color-muted);margin-bottom:var(--space-2);font-size:.75rem;font-weight:600}.stack>*+*{margin-top:var(--space-4)}.row{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.spread{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.btn{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);cursor:pointer;min-height:44px;transition:background var(--ease), border-color var(--ease), color var(--ease), box-shadow var(--ease), opacity var(--ease), transform .12s ease;border:1px solid #0000;padding:10px 22px;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.btn:active:not(:disabled){transform:translateY(1px)scale(.98)}.btn:disabled{cursor:not-allowed;opacity:.55}.btn[aria-busy=true]{cursor:progress}.btn[aria-busy=true]:disabled{opacity:.85}.btn[aria-busy=true]:before{content:"";border:2px solid;border-right-color:#0000;border-radius:50%;flex-shrink:0;width:1em;height:1em;animation:.7s linear infinite spin}.btn-primary{background:var(--color-primary-strong);color:var(--color-bg)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);box-shadow:0 2px 8px #9c543638}.btn-secondary{border-color:var(--color-text);color:var(--color-text);background:0 0}.btn-secondary:hover:not(:disabled){background:var(--color-sand-soft)}.btn-secondary[aria-pressed=true]{background:var(--color-text);color:var(--color-bg)}.btn-text{min-height:36px;color:var(--color-text);text-underline-offset:3px;background:0 0;border:none;padding:6px 4px;text-decoration:underline}.btn-text:hover:not(:disabled){color:var(--color-primary-ink)}.btn-text{transition:color var(--ease), transform .12s ease}.btn-text:active:not(:disabled){transform:translateY(1px)}.btn-danger{border-color:var(--color-error-ink);color:var(--color-error-ink);background:0 0}.btn-danger:hover:not(:disabled){background:#f6e3e0}.btn-block{width:100%}.btn-sm{min-height:36px;padding:6px 14px;font-size:.875rem}.field{flex-direction:column;gap:6px;display:flex}.field label,.field-label{font-size:.875rem;font-weight:600}.field .optional{color:var(--color-muted);font-weight:400}.input,.select,.textarea{border-radius:var(--radius-sm);background:var(--color-surface);width:100%;min-height:44px;transition:border-color var(--ease), box-shadow var(--ease), background-color var(--ease);border:1px solid #b9ab94;padding:10px 12px}.textarea{resize:vertical;min-height:96px}.input:hover,.select:hover,.textarea:hover{border-color:var(--color-text)}.input:focus,.select:focus,.textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #b86b4b24}.input[aria-invalid=true],.select[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--color-error)}.input[aria-invalid=true]:focus,.select[aria-invalid=true]:focus,.textarea[aria-invalid=true]:focus{box-shadow:0 0 0 3px #b84b4b24}.field.is-valid .input,.field.is-valid .select,.field.is-valid .textarea{border-color:var(--color-success)}.field.is-valid .input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234b7a5a' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12.5 4.5 4.5L19 7.5'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;padding-right:36px}.field-error{color:var(--color-error-ink);margin:0;font-size:.85rem;animation:.18s fieldMessageIn}.field-error:before{content:"";vertical-align:-.2em;background-color:currentColor;width:1.05em;height:1.05em;margin-right:6px;display:inline-block;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7.5v5.5M12 16.5v.01'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7.5v5.5M12 16.5v.01'/%3E%3C/svg%3E") 50%/contain no-repeat}@keyframes fieldMessageIn{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}.field-hint{color:var(--color-muted);margin:0;font-size:.85rem}.form-grid{gap:var(--space-4);display:grid}@media (width>=768px){.form-grid.cols-2{grid-template-columns:repeat(2,1fr)}.form-grid.cols-3{grid-template-columns:repeat(3,1fr)}.form-grid.cols-4{grid-template-columns:repeat(4,1fr)}}.checkbox{align-items:center;gap:var(--space-2);cursor:pointer;min-height:36px;display:flex}.checkbox input{width:18px;height:18px;accent-color:var(--color-primary-strong)}fieldset{border:0;min-width:0;margin:0;padding:0}legend{margin-bottom:var(--space-2);padding:0;font-weight:600}.pill-field{align-items:center;gap:var(--space-3);background:var(--color-surface);border:1px solid var(--color-sand);border-radius:var(--radius-md);outline-offset:6px;min-height:60px;transition:border-color var(--ease), background-color var(--ease), outline-color var(--ease), outline-offset var(--ease);outline:2px solid #0000;padding:4px 16px;display:flex}.pill-field:focus-within{border-color:var(--color-primary);outline:2px solid var(--color-primary);outline-offset:2px}.pill-field.invalid{border-color:var(--color-error)}.pill-field svg{color:var(--color-secondary);flex-shrink:0}.pill-field .pill-body{flex-direction:column;flex:1;min-width:0;display:flex}.pill-field label{letter-spacing:.1em;text-transform:uppercase;color:var(--color-muted);font-size:.72rem;font-weight:600}.pill-field input,.pill-field select{background:0 0;border:none;width:100%;min-width:0;min-height:36px;padding:6px 0;font-size:1rem;font-weight:500}.pill-field input:focus,.pill-field select:focus{outline:none}.tabs{gap:var(--space-1);border-bottom:1px solid var(--color-sand);display:flex}.tab{min-height:44px;color:var(--color-muted);cursor:pointer;gap:var(--space-2);transition:color var(--ease), border-color var(--ease);background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;margin-bottom:-1px;padding:10px 16px;font-weight:600;display:inline-flex}.tab:hover{color:var(--color-text)}.tab[aria-selected=true]{color:var(--color-text);border-bottom-color:var(--color-primary)}.card{background:var(--color-surface);border:1px solid var(--color-sand);border-radius:var(--radius-md);padding:var(--space-5)}.card-flat{background:0 0}.card+.card{margin-top:var(--space-4)}.badge{border-radius:var(--radius-pill);background:var(--color-sand-soft);color:var(--color-text);white-space:nowrap;align-items:center;gap:4px;padding:2px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.badge-success{color:#2f5a3c;background:#e3ede5}.badge-muted{color:var(--color-muted);background:#ebe8e2}.badge-olive{color:#3e4434;background:#e4e6dc}.rating{align-items:center;gap:6px;font-size:.875rem;display:inline-flex}.rating-score{background:var(--color-text);color:var(--color-bg);border-radius:var(--radius-sm);padding:1px 7px;font-weight:600}.stars{color:var(--color-primary);letter-spacing:1px}.skeleton{background:var(--color-sand-soft);border-radius:var(--radius-md);position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg,#0000,#ffffff80,#0000);animation:1.4s infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes shimmer{to{transform:translate(100%)}}.skeleton-card{height:132px}.skeleton-card+.skeleton-card{margin-top:var(--space-4)}.fade-in{animation:.2s fadeIn}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.reveal{opacity:0;transition:opacity .9s cubic-bezier(.33,1,.68,1),transform 1s cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay,0s);transform:translateY(16px)}.reveal.is-revealed{opacity:1;transform:none}.count-up{font-variant-numeric:tabular-nums}.count-up.is-counting{justify-items:end;display:inline-grid}.count-up.is-counting>span{grid-area:1/1}.count-up-final{opacity:0}.top-progress{z-index:200;pointer-events:none;height:3px;transition:opacity .3s .1s;position:fixed;top:0;left:0;right:0}.top-progress-bar{background:var(--color-primary);transform-origin:0;height:100%;animation:8s cubic-bezier(.1,.6,.2,1) forwards progressTrickle;display:block;transform:scaleX(.7);box-shadow:0 0 8px #b86b4b73}.top-progress.is-done{opacity:0}.top-progress.is-done .top-progress-bar{transition:transform .2s;animation:none;transform:scaleX(1)}@keyframes progressTrickle{0%{transform:scaleX(.04)}25%{transform:scaleX(.4)}to{transform:scaleX(.9)}}.route-loader{overflow:visible}.route-loader-track{fill:none;stroke:var(--color-sand);stroke-width:2px;stroke-dasharray:2 5;stroke-linecap:round}.route-loader-line{fill:none;stroke:var(--color-primary);stroke-width:2.5px;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:0;animation:1.6s cubic-bezier(.45,0,.25,1) infinite routeDraw}.route-loader-stop{fill:var(--color-surface);stroke:var(--color-primary);stroke-width:2px}.route-loader-stop--end{transform-origin:88px 32px;animation:1.6s infinite routeArrive}@keyframes routeDraw{0%{stroke-dashoffset:100px}60%,80%{stroke-dashoffset:0}to{stroke-dashoffset:-100px}}@keyframes routeArrive{0%,50%{transform:scale(1)}62%{transform:scale(1.45)}80%,to{transform:scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}.spinner-block{align-items:center;gap:var(--space-3);padding:var(--space-8) var(--space-4);text-align:center;flex-direction:column;display:flex}.empty-state{text-align:center;padding:var(--space-7) var(--space-4);border:1px dashed var(--color-sand);border-radius:var(--radius-md);background:#fff6}.empty-state svg{color:var(--color-secondary);margin:0 auto var(--space-3)}.empty-state h2{font-size:1.6rem}.banner{gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);border:1px solid;align-items:flex-start;display:flex}.banner-error{color:#6f2525;background:#f8e8e6;border-color:#e3b8b3}.banner-success{color:#24462f;background:#e7f0e9;border-color:#b9d2c0}.banner-info{background:var(--color-sand-soft);border-color:var(--color-sand)}.banner p{margin:0}.modal-backdrop{z-index:50;background:#f6f1e8cc;justify-content:center;align-items:flex-end;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.modal{background:var(--color-surface);border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;max-height:88dvh;box-shadow:var(--shadow-float);--modal-pad:var(--space-5);--modal-pad-bottom:calc(var(--space-5) + env(safe-area-inset-bottom));padding:var(--modal-pad) var(--modal-pad) var(--modal-pad-bottom);overflow:auto}.modal-header{top:calc(-1 * var(--modal-pad));z-index:2;margin:calc(-1 * var(--modal-pad)) calc(-1 * var(--modal-pad)) var(--space-4);padding:var(--modal-pad) var(--modal-pad) var(--space-3);background:var(--color-surface);position:sticky}.modal-footer{bottom:calc(-1 * var(--modal-pad-bottom));z-index:2;margin:var(--space-5) calc(-1 * var(--modal-pad)) calc(-1 * var(--modal-pad-bottom));padding:var(--space-3) var(--modal-pad) var(--modal-pad-bottom);background:var(--color-surface);border-top:1px solid var(--color-sand-soft);position:sticky}@media (width>=768px){.modal-backdrop{align-items:center}.modal{border-radius:var(--radius-lg);max-width:560px}}.modal-header{justify-content:space-between;align-items:center;display:flex}.modal-header h2{margin:0;font-size:1.5rem}.icon-btn{border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.icon-btn:hover{background:var(--color-sand-soft)}.icon-btn{transition:background-color var(--ease), transform .12s ease}.icon-btn:active:not(:disabled){transform:scale(.94)}.nav{z-index:20;border-bottom:1px solid var(--color-sand);background:var(--color-bg);position:relative}.nav-inner{justify-content:space-between;align-items:center;gap:var(--space-4);min-height:68px;display:flex}.logo{font-family:var(--font-heading);color:inherit;letter-spacing:.02em;font-size:1.75rem;text-decoration:none}.nav-links{align-items:center;gap:var(--space-2);display:flex}.nav-link{color:inherit;border-radius:var(--radius-sm);padding:8px 10px;font-size:.95rem;font-weight:500;text-decoration:none}.nav-link:hover,.nav-link.active{text-underline-offset:6px;text-decoration:underline}.nav-left{align-items:center;gap:var(--space-6);display:flex}.nav-explore{gap:var(--space-3);display:none}@media (width>=768px){.nav-explore{display:flex}}.nav-signin{align-items:center;gap:8px;display:inline-flex}.nav-user{display:none}@media (width>=768px){.nav-user{text-overflow:ellipsis;white-space:nowrap;vertical-align:middle;opacity:.85;max-width:220px;font-size:.9rem;display:inline-block;overflow:hidden}}.footer{border-top:1px solid var(--color-sand);padding:var(--space-6) 0;color:var(--color-muted);font-size:.9rem}.footer .logo{color:var(--color-text);font-size:1.4rem}.pagination{justify-content:center;align-items:center;gap:var(--space-4);margin-top:var(--space-5);display:flex}.img-frame{background:linear-gradient(135deg,#d9c3a2 0%,#c79a7c 55%,#8f9a82 100%);position:relative;overflow:hidden}.img-frame img{object-fit:cover;width:100%;height:100%}.img-fallback{padding:var(--space-3);font-family:var(--font-heading);color:#17221f8c;align-items:flex-end;font-size:1.1rem;display:flex;position:absolute;inset:0}.nav-links .btn,.nav-link{white-space:nowrap}.nav-link:first-letter{text-transform:uppercase}@media (width<=767px){.hide-phone{display:none}}.nav-right{align-items:center;gap:var(--space-2);display:flex}.nav-menu-btn,.nav-menu,.nav-menu-scrim{display:none}@media (width<=767px){.nav-inner{min-height:56px}.logo{font-size:1.55rem}.nav-links{display:none}.nav-menu-btn{width:44px;height:44px;display:inline-flex}.nav-menu{background:var(--color-bg);border-bottom:1px solid var(--color-sand);box-shadow:var(--shadow-float);max-height:calc(100dvh - 56px);display:block;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.nav-menu-inner{padding-top:var(--space-2);padding-bottom:var(--space-4);flex-direction:column;display:flex}.nav-menu .nav-link{align-items:center;min-height:48px;padding:0 4px;font-size:1.05rem;display:flex}.nav-menu-rule{border:0;border-top:1px solid var(--color-sand);width:100%;margin:var(--space-2) 0}.nav-menu-account{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:48px;display:flex}.nav-menu-scrim{z-index:19;background:#17221f40;border:0;padding:0;display:block;position:fixed;inset:0}}.badge-error{color:var(--color-error-ink);background:#f6e3e3}.hero{color:var(--color-text);padding-top:min(58vh,460px);padding-bottom:var(--space-6);isolation:isolate;z-index:2;position:relative}.hero-image,.hero-scrim{z-index:-1;height:min(72vh,580px);position:absolute;inset:0 0 auto}.hero-image{background:linear-gradient(135deg,#d9c3a2 0%,#c79a7c 55%,#8f9a82 100%)}.hero-image img{object-fit:cover;object-position:center 40%;width:100%;height:100%}.hero-scrim{background:linear-gradient(180deg, #f6f1e800 45%, #f6f1e8d9 75%, var(--color-bg) 94%);height:calc(min(72vh,580px) + 2px)}.hero-content{position:relative}.hero h1{letter-spacing:-.01em;margin-bottom:var(--space-4);font-size:clamp(2.6rem,7vw,4.6rem);line-height:1.02}.hero-eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--color-primary-ink);margin-bottom:var(--space-3);font-size:.78rem;font-weight:600}.hero-sub{max-width:44ch;margin-bottom:var(--space-5);font-size:1.05rem}.hero-search{scroll-margin-top:var(--space-4);position:relative}@media (width>=768px){.hero{padding-top:var(--space-8);padding-bottom:var(--space-7);min-height:620px}.hero-image,.hero-scrim{height:auto;inset:0}.hero-image img{object-position:70% 50%}.hero-scrim{background:linear-gradient(90deg,#f6f1e8f0 0%,#f6f1e8d1 34%,#f6f1e800 62%),linear-gradient(#f6f1e800 70%,#f6f1e859 100%)}.hero-content{max-width:calc(620px + 2 * var(--gutter));margin-left:max(0px, calc((100% - var(--max-width)) / 2));padding-bottom:var(--space-4)}}.search-card{background:var(--color-surface);color:var(--color-text);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4) var(--space-4);box-shadow:var(--shadow-float);border:1px solid #d8c8aeb3}.search-card .pill-field{background:var(--color-bg);border-color:#0000}.search-card .pill-field:focus-within{border-color:var(--color-primary)}.search-card .pill-field.invalid{border-color:var(--color-error)}.search-panel{padding-top:var(--space-4)}.search-grid{gap:var(--space-3);grid-template-columns:minmax(0,1fr);display:grid}.search-grid>*,.route-pair>*{min-width:0}.swap-btn{color:var(--color-secondary);justify-self:center;margin:-6px 0}.search-submit{min-height:60px}.search-error{margin-top:var(--space-2)}.guests-body .field-label-caps{letter-spacing:.1em;text-transform:uppercase;color:var(--color-muted);font-size:.72rem;font-weight:600}.guest-selects{gap:var(--space-2);display:flex}.guest-selects select{flex:1;width:auto;min-width:0}.route-pair{gap:var(--space-3);display:grid}@media (width>=768px){.search-grid--flights,.search-grid--hotels{grid-template-columns:repeat(3,minmax(0,1fr))}.route-pair{grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center}.search-grid .search-submit,.search-grid--hotels .guests-pill{grid-column:1/-1}.swap-btn{margin:0}}@media (width>=1280px){.search-grid--flights{grid-template-columns:minmax(0,3fr) minmax(0,1.15fr) minmax(0,1fr) minmax(0,1fr) auto}.search-grid .pill-field{gap:8px;padding:4px 12px}.search-grid .swap-btn{width:32px}.route-pair{grid-column:auto}.search-grid--hotels{grid-template-columns:minmax(0,1fr) minmax(0,.95fr) minmax(0,.95fr) minmax(0,2fr) auto}.search-grid .search-submit,.search-grid--hotels .guests-pill{grid-column:auto}}.search-form--compact .search-grid{padding:var(--space-4) 0}@media (width<=767px){.hero{padding-top:170px;padding-bottom:var(--space-5)}.hero-image{height:260px}.hero-scrim{background:linear-gradient(180deg, #f6f1e800 35%, #f6f1e8cc 70%, var(--color-bg) 100%);height:262px}.hero h1{margin-bottom:var(--space-2);font-size:2.3rem}.hero-eyebrow{margin-bottom:var(--space-2)}.hero-sub{margin-bottom:var(--space-4);font-size:.98rem}.search-card{padding:var(--space-2) var(--space-3) var(--space-3);margin:0 calc(-1 * var(--space-2))}.search-panel{padding-top:var(--space-3)}.search-grid--flights,.search-grid--hotels{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr))}.search-grid .pill-field{gap:0;min-height:54px;padding:4px 12px}.search-grid .pill-field>svg{display:none}.search-grid .pill-field label,.search-grid .guests-body .field-label-caps{font-size:.68rem}.search-grid .pill-field input,.search-grid .pill-field select{min-height:30px;padding:2px 0}.route-pair{align-items:center;gap:var(--space-1);grid-column:1/-1;grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr)}.swap-btn{width:44px;height:44px;margin:0}.route-pair select{appearance:none}.search-grid--flights>.pill-field:last-of-type,.search-grid--hotels>.pill-field:first-child,.search-grid--hotels .guests-pill,.search-grid .search-submit{grid-column:1/-1}.search-submit{min-height:52px}.party-toggle{min-height:30px}}.section{padding:var(--space-8) 0 var(--space-6)}.section-head{margin-bottom:var(--space-5)}.destination-grid{gap:var(--space-4) var(--space-3);grid-template-columns:repeat(2,1fr);margin:0;padding:0;list-style:none;display:grid}@media (width>=768px){.destination-grid{grid-template-columns:repeat(4,1fr)}}@media (width>=1280px){.destination-grid{gap:var(--space-5);grid-template-columns:repeat(4,1fr)}}.destination-card{color:inherit;text-decoration:none;display:block}.destination-image{aspect-ratio:16/15;border-radius:var(--radius-sm);margin-bottom:var(--space-3)}.destination-image img{transition:transform .4s}.destination-card:hover .destination-image img{transform:scale(1.03)}.destination-name{font-size:1.05rem;font-weight:500;display:block}.destination-blurb{color:var(--color-muted);font-size:.85rem;display:block}.section-head h2{margin:0}.view-all{color:var(--color-primary-ink);align-items:center;gap:6px;font-size:.95rem;text-decoration:none;display:inline-flex}.home-notice{padding-top:var(--space-4);padding-bottom:var(--space-4)}#destinations,#best-hotels{scroll-margin-top:var(--space-4)}.best-hotels{padding-top:0}.best-hotels .section-head p{margin:var(--space-2) 0 0}.quote-strip{border-radius:var(--radius-md);background:var(--color-sand-soft);margin-bottom:var(--space-6);display:grid;overflow:hidden}.quote-strip-image{aspect-ratio:16/7}.quote-strip-card{padding:var(--space-6) var(--space-5);flex-direction:column;justify-content:center;margin:0;display:flex}.quote-strip-card blockquote{font-family:var(--font-heading);margin:0;font-size:clamp(1.3rem,2.4vw,1.75rem);font-style:italic;line-height:1.35}.quote-rule{background:var(--color-primary);width:28px;height:1px;margin-top:var(--space-5);display:block}@media (width>=900px){.quote-strip{grid-template-columns:2fr 1fr}.quote-strip-image{aspect-ratio:auto;min-height:240px}}.promise-row{padding:0 0 var(--space-8);gap:var(--space-4);margin:0;list-style:none;display:grid}@media (width>=768px){.promise-row{grid-template-columns:repeat(3,1fr)}}.promise-row li{gap:var(--space-3);align-items:flex-start;display:flex}.promise-row svg{color:var(--color-primary);flex-shrink:0;margin-top:2px}.promise-row strong{font-weight:500;display:block}.summary-bar{z-index:10;background:var(--color-bg);border-bottom:1px solid var(--color-sand);padding:var(--space-3) 0;position:sticky;top:0}.summary-route{font-family:var(--font-heading);align-items:center;gap:var(--space-2);margin:0;font-size:1.35rem;display:flex}.summary-bar .small{margin:0}.summary-bar .spread{flex-wrap:nowrap}.summary-bar .spread>div{min-width:0}.summary-bar .summary-route,.summary-bar .small{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.summary-bar .btn{flex-shrink:0}.results-layout{gap:var(--space-5);padding-top:var(--space-5);padding-bottom:var(--space-8);display:grid}.results-sidebar{display:none}@media (width>=1024px){.results-layout{gap:var(--space-6);grid-template-columns:260px 1fr}.results-sidebar{display:block}.filters-toggle{display:none}}.filters{gap:var(--space-5);flex-direction:column;display:flex}.filters-title{font-family:var(--font-body);margin:0;font-size:1rem;font-weight:600}.filter-group{border-top:1px solid var(--color-sand);padding-top:var(--space-4)}.filter-group>legend{float:left;width:100%}.filter-group>legend+*{clear:left}.modal .filters-title{visibility:hidden}.range{width:100%;accent-color:var(--color-primary-strong);margin:var(--space-2) 0}.results-toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.results-count{font-family:var(--font-body);margin:0;font-size:1.1rem;font-weight:600}.sort-control{align-items:center;gap:var(--space-2);display:flex}.sort-control .select{width:auto}.results-list{gap:var(--space-4);transition:opacity var(--ease);flex-direction:column;display:flex}.results-list.is-loading{opacity:.5}.result-card{background:var(--color-surface);border:1px solid var(--color-sand);border-radius:var(--radius-md);padding:var(--space-4);gap:var(--space-4);display:grid}.result-title{margin:0 0 2px;font-size:1.25rem}.result-card p{margin:0}.result-price{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.result-price .btn{margin-top:var(--space-2)}.price{margin:0;font-size:1.35rem;font-weight:600}.time{font-size:1.3rem;font-weight:600}.plus-day{color:var(--color-primary-ink);margin-left:2px;font-size:.7rem}.flight-timeline,.flight-hero-times{gap:var(--space-4);grid-template-columns:auto 1fr auto;align-items:center;display:grid}.timeline-mid{text-align:center}.timeline-line{background:var(--color-sand);height:1px;margin:4px 0;display:block;position:relative}.timeline-line:after{content:"";background:var(--color-primary);border-radius:50%;width:7px;height:7px;position:absolute;top:-3px;right:0}@media (width>=768px){.flight-card{padding:var(--space-5);grid-template-columns:1.1fr 1.6fr auto;align-items:center}.result-price{text-align:right;align-items:flex-end;min-width:140px}}.hotel-card{padding:0;overflow:hidden}.clickable-card{cursor:pointer;transition:transform .2s,box-shadow .2s,border-color .2s;position:relative}@media (hover:hover){.clickable-card:hover{box-shadow:var(--shadow-float);border-color:#c9b797;transform:scale(1.012)}}.card-overlay-link{z-index:1;position:absolute;inset:0}.clickable-card .card-cta{z-index:2;position:relative}@media (hover:hover){.clickable-card:hover .card-cta.btn-secondary{background:var(--color-sand-soft)}}.clickable-card:active{border-color:#c9b797}.hotel-card-image{aspect-ratio:4/3}.hotel-card-body,.hotel-card .result-price{padding:0 var(--space-4) var(--space-4)}.hotel-card-body{gap:var(--space-2);flex-direction:column;display:flex}@media (width>=768px){.hotel-card{grid-template-columns:240px 1fr auto}.hotel-card-image{aspect-ratio:auto;height:100%;min-height:200px}.hotel-card-body,.hotel-card .result-price{padding:var(--space-5) var(--space-5) var(--space-5) 0}}.back-link{margin-bottom:var(--space-4);display:inline-block}.detail-header{margin-bottom:var(--space-5)}.detail-header .row{margin-top:var(--space-3)}.flight-header{gap:var(--space-5);margin-bottom:var(--space-5);display:grid}.flight-header .detail-header{min-width:0;margin-bottom:0}@media (width>=1024px){.flight-header{grid-template-columns:minmax(0,1fr) minmax(360px,440px);align-items:start}}.flight-hero-times{max-width:680px;margin:var(--space-4) 0;align-items:start;column-gap:var(--space-5);grid-template-columns:minmax(0,1fr) minmax(128px,168px) minmax(0,1fr)}.flight-hero-times .timeline-mid{white-space:nowrap;padding-top:6px}.flight-hero-times .timeline-mid p{margin:0}.flight-hero-times .small{overflow-wrap:anywhere}@media (width<=480px){.flight-hero-times{column-gap:var(--space-3);grid-template-columns:minmax(0,1fr) 92px minmax(0,1fr)}.flight-hero-times .time-lg{font-size:1.75rem}}.route-map{border-radius:var(--radius-md);border:1px solid var(--color-sand);box-shadow:var(--shadow-float);background:#a9cbd6;margin:0;line-height:0;overflow:hidden}.route-map svg{width:100%;height:auto;display:block}.map-label text{paint-order:stroke;stroke:#ffffffeb;stroke-width:3px;stroke-linejoin:round;fill:#17221f;font-family:var(--font-body)}.map-label--airport text{font-size:13px;font-weight:600}.map-label--airport .map-code{letter-spacing:.12em;fill:#525d58;font-size:9.5px}.map-label--ref text{fill:#3b4640;font-size:9.5px}.map-region{font-family:var(--font-body);pointer-events:none}.map-region--state{letter-spacing:.16em;fill:#5d6a4a;fill-opacity:.75;font-size:8.5px}.map-region--country{letter-spacing:.14em;fill:#6f6352;fill-opacity:.8;font-size:10px}.map-region--sea{font-family:var(--font-heading);fill:#3e6878;fill-opacity:.85;font-size:13px;font-style:italic}.time-lg{font-size:2rem;font-family:var(--font-heading);margin:0}.detail-layout{gap:var(--space-6);margin-top:var(--space-5);display:grid}@media (width>=1024px){.detail-layout{grid-template-columns:1fr 340px;align-items:start}}.detail-main{min-width:0}.detail-section{padding:var(--space-6) 0;border-bottom:1px solid var(--color-sand)}.detail-section:first-child{padding-top:0}.detail-section h2{font-size:1.6rem}.lede{max-width:62ch;font-size:1.1rem}.h3{font-size:1.3rem}.fare-grid{gap:var(--space-3);display:grid}@media (width>=768px){.fare-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}.fare-card{padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-sand);border-radius:var(--radius-md);cursor:pointer;transition:border-color var(--ease), box-shadow var(--ease);flex-direction:column;gap:2px;display:flex}.fare-card:hover{border-color:var(--color-text)}.fare-card.is-selected{border-color:var(--color-primary);box-shadow:inset 0 0 0 1px var(--color-primary)}.fare-card:focus-within{outline:2px solid var(--color-primary);outline-offset:2px}.fare-card.is-disabled{opacity:.6;cursor:not-allowed}.fare-name{text-transform:uppercase;letter-spacing:.08em;font-size:.8rem;font-weight:600}.fare-facts{margin:var(--space-3) 0 0;flex-direction:column;gap:6px;padding:0;list-style:none;display:flex}.fare-facts li{align-items:flex-start;gap:6px;display:flex}.traveller-tabs{gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.seat-map-wrap{background:var(--color-surface);border:1px solid var(--color-sand);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-3)}.seat-legend{margin:0 0 var(--space-4);gap:var(--space-2) var(--space-4);flex-wrap:wrap;align-items:center;padding:0;list-style:none;display:flex}.seat-legend li{align-items:center;gap:6px;display:flex}.seat-swatch{background:var(--color-surface);border:1px solid #a89a82;border-radius:4px;width:16px;height:16px;display:inline-block}.seat-map{max-height:420px;padding:0 var(--space-2);flex-direction:column;align-items:center;gap:6px;display:flex;overflow-y:auto}.seat-row{align-items:center;gap:6px;display:flex}.seat-row--head{background:var(--color-surface);z-index:1;padding-bottom:4px;position:sticky;top:0}.seat-row-num,.seat-letter{text-align:center;width:32px;color:var(--color-muted);font-size:.75rem}.aisle-gap{margin-right:20px}.seat{background:var(--color-surface);cursor:pointer;width:32px;height:32px;transition:background var(--ease), border-color var(--ease);border:1px solid #a89a82;border-radius:6px 6px 4px 4px;padding:0;font-size:.75rem;font-weight:600}.seat:hover:not(:disabled){border-color:var(--color-primary);background:#f7ebe4}.seat.is-selected,.seat-swatch.is-selected{background:var(--color-primary-strong);border-color:var(--color-primary-strong);color:var(--color-bg)}.seat.is-unavailable,.seat-swatch.is-unavailable{border-color:var(--color-sand);cursor:not-allowed;background:repeating-linear-gradient(45deg,#e6ddcd,#e6ddcd 3px,#d8c8ae 3px 6px)}.seat-aisle{text-align:center;width:28px;color:var(--color-muted);font-size:.72rem}.seat.is-legroom:not(.is-unavailable):not(.is-selected),.seat-swatch.is-legroom{border:2px solid var(--color-secondary)}.seat-map.is-business .seat{border-radius:10px 10px 6px 6px;width:40px;height:40px}.seat-map.is-business .seat-letter{width:40px}@media (width<=400px){.seat,.seat-row-num,.seat-letter{width:28px}.seat{height:28px}.seat-aisle{width:20px}.aisle-gap{margin-right:12px}}.facts{gap:var(--space-4);margin:var(--space-4) 0;display:grid}@media (width>=768px){.facts{grid-template-columns:repeat(2,1fr)}}.facts dt{color:var(--color-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.8rem;font-weight:600}.facts dd{margin:2px 0 0}.review-summary{align-items:center;gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.review-summary p{margin:0}.review-average{font-family:var(--font-heading);font-size:3rem;line-height:1}.review-list{margin:0 0 var(--space-4);padding:0;list-style:none}.review{padding:var(--space-4) 0;border-top:1px solid var(--color-sand)}.review p{margin:4px 0 0}.gallery{gap:var(--space-2);margin-bottom:var(--space-5);grid-template-columns:1fr 1fr;display:grid}.gallery-item{border-radius:var(--radius-md);aspect-ratio:4/3;display:block;overflow:hidden}.gallery-photo{width:100%;height:100%}.gallery-button{cursor:pointer;font:inherit;background:0 0;border:0;padding:0}.similar-stays{border-top:1px solid var(--color-sand);margin-top:var(--space-6);padding-top:var(--space-7)}.similar-stays h2{margin-bottom:var(--space-2)}.stay-grid{margin:var(--space-5) 0 0;gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));padding:0;list-style:none;display:grid}@media (width<=559px){.stay-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1024px){.stay-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.stay-card{background:var(--color-surface);border:1px solid var(--color-sand);border-radius:var(--radius-md);height:100%;color:inherit;flex-direction:column;text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex;overflow:hidden}.stay-card:hover{box-shadow:var(--shadow-float);border-color:#c9b797;transform:scale(1.015)}.stay-card-image{aspect-ratio:4/3}.stay-card-body{padding:var(--space-4);flex-direction:column;flex:1;gap:4px;display:flex}.stay-card-body p{margin:0}.stay-card-title{margin:0;font-size:1.2rem}.stay-card-amenities{color:var(--color-muted);margin-top:4px!important}.stay-card-price{justify-content:space-between;align-items:baseline;gap:var(--space-2);border-top:1px solid var(--color-sand-soft);padding-top:var(--space-3);display:flex;margin-top:auto!important}@media (width<=559px){.stay-card-body{padding:var(--space-3)}.stay-card-title{font-size:1.05rem}.stay-card-price{flex-direction:column;gap:0}}.lightbox{z-index:100;touch-action:pan-y;background:#0f1412eb;justify-content:center;align-items:center;padding:64px 16px;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.lightbox-photo{object-fit:contain;border-radius:var(--radius-md);-webkit-user-select:none;user-select:none;max-width:min(100%,1400px);max-height:100%;animation:.2s fadeIn;box-shadow:0 12px 48px #00000059}.lightbox-btn{width:52px;height:52px;color:var(--color-text);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);cursor:pointer;transition:background var(--ease), transform .12s ease;background:#f6f1e8b8;border:1px solid #ffffff8c;border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:absolute}.lightbox-btn:hover{background:#f6f1e8e6}.lightbox-btn:active{transform:scale(.95)}.lightbox-btn:focus-visible{outline:2px solid var(--color-bg);outline-offset:3px}.lightbox-close{width:46px;height:46px;top:16px;right:16px}.lightbox-prev{top:50%;left:16px;translate:0 -50%}.lightbox-next{top:50%;right:16px;translate:0 -50%}.lightbox-counter{color:var(--color-bg);letter-spacing:.08em;border-radius:var(--radius-pill);background:#17221f8c;margin:0;padding:4px 14px;font-size:.95rem;position:absolute;bottom:18px;left:50%;translate:-50%}@media (width<=600px){.lightbox-prev,.lightbox-next{width:46px;height:46px;top:auto;bottom:12px;translate:none}}.gallery-item-0{aspect-ratio:16/9;grid-column:1/-1}@media (width>=768px){.gallery{grid-template-rows:1fr 1fr;grid-template-columns:2fr 1fr;height:440px}.gallery-item,.gallery-item-0{aspect-ratio:auto;height:100%}.gallery-item-0{grid-area:1/1/span 2}}.amenity-list{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));margin:0;padding:0;list-style:none;display:grid}.amenity-list li{gap:var(--space-2);align-items:center;display:flex}.amenity-list svg{color:var(--color-success)}.room-list{gap:var(--space-3);margin-top:var(--space-4);flex-direction:column;display:flex}.room-card{background:var(--color-surface);border:1px solid var(--color-sand);border-radius:var(--radius-md);padding:var(--space-4);gap:var(--space-4);transition:border-color var(--ease), box-shadow var(--ease);display:grid}.room-card.is-selected{border-color:var(--color-primary);box-shadow:inset 0 0 0 1px var(--color-primary)}.room-card h3{margin-bottom:var(--space-1)}.room-card p{margin:0 0 var(--space-2)}.room-card-side{gap:var(--space-2);flex-direction:column;align-items:flex-start;display:flex}.room-card-side .select{width:96px}@media (width>=768px){.room-card{grid-template-columns:1fr 200px}.room-card-side{border-left:1px solid var(--color-sand);padding-left:var(--space-4)}}.price-summary{z-index:5;position:sticky;bottom:0}.price-summary-card{box-shadow:var(--shadow-float)}.price-summary-title{font-size:1.3rem}.price-lines{margin:var(--space-3) 0}.price-line{justify-content:space-between;gap:var(--space-3);padding:6px 0;font-size:.95rem;display:flex}.price-line dt{color:var(--color-muted)}.price-line dd{margin:0;font-weight:500}.price-total{border-top:1px solid var(--color-sand);margin-top:var(--space-2);padding-top:var(--space-3);font-size:1.15rem}.price-total dt,.price-total dd{color:var(--color-text);font-weight:600}.price-summary-action{margin-top:var(--space-4)}@media (width<=1023px){.price-summary .price-summary-card{border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:10px var(--space-4) calc(10px + env(safe-area-inset-bottom));align-items:center;column-gap:var(--space-3);margin:0 calc(-1 * var(--gutter));grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"total action""note action";row-gap:2px;display:grid}.price-summary .price-lines{grid-area:total}.price-summary .price-note{-webkit-line-clamp:2;-webkit-box-orient:vertical;grid-area:note;font-size:.78rem;line-height:1.35;display:-webkit-box;overflow:hidden}.price-summary .price-summary-action{grid-area:action}.price-summary .price-total{font-size:1.05rem}.price-summary .price-summary-title,.price-summary .price-line:not(.price-total),.price-summary .price-summary-card>p{display:none}.price-summary .price-lines{margin:0}.price-summary .price-total{border:0;margin:0;padding:0}.price-summary .price-summary-action{margin:0}.price-summary .price-summary-action .btn-block{width:auto}}@media (width>=1024px){.price-summary{top:var(--space-5);bottom:auto}}.pay-panel{padding-top:var(--space-5)}.pay-panel>.btn{margin-top:var(--space-4)}.upi-panel{gap:var(--space-5);align-items:center;display:grid}@media (width>=768px){.upi-panel{grid-template-columns:auto 1fr}.span-2{grid-column:span 2}}.fake-qr{border:1px solid var(--color-sand);border-radius:var(--radius-md);padding:var(--space-2);background:#fff}.plain-list{margin:var(--space-2) 0;padding:0;list-style:none}.narrow{max-width:880px}.confirmation{max-width:820px}.confirmation-hero{text-align:center;padding:var(--space-6) 0}.confirmation-icon{width:64px;height:64px;color:var(--color-success);margin-bottom:var(--space-4);background:#e3ede5;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.booking-ref{font-size:1.1rem}.booking-ref strong{font-family:var(--font-heading);letter-spacing:.08em;margin-left:var(--space-2);font-size:1.6rem}.confirmation-actions{margin-top:var(--space-5);justify-content:center}.bookings-section{margin-top:var(--space-6)}.booking-row h3{margin-bottom:2px}.booking-row p{margin:0}.booking-row-side{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.booking-row .row{margin-top:var(--space-3)}.auth-page{justify-content:center;display:flex}.auth-card{width:100%;max-width:440px}.auth-card h1{font-size:2.2rem}.auth-card .banner{margin-bottom:var(--space-4)}.admin-tabs{margin:var(--space-5) 0}.admin-tabs .tab{text-decoration:none}.admin-tabs .tab.is-active{color:var(--color-text);border-bottom-color:var(--color-primary)}.admin-search{margin:var(--space-4) 0;flex-wrap:nowrap}.admin-search .input{max-width:420px}.table-wrap{border:1px solid var(--color-sand);border-radius:var(--radius-md);background:var(--color-surface);position:relative;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:.92rem}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid var(--color-sand-soft);white-space:nowrap;padding:10px 14px}.admin-table th{text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted);font-size:.78rem}.table-actions{gap:var(--space-2);justify-content:flex-end;display:flex}.repeat-row{border-top:1px solid var(--color-sand);padding-top:var(--space-4);margin-top:var(--space-4)}.bell-wrap,.bell-btn{position:relative}.bell-count{border-radius:var(--radius-pill);background:var(--color-primary-strong);min-width:18px;height:18px;color:var(--color-bg);text-align:center;padding:0 5px;font-size:.7rem;font-weight:600;line-height:18px;position:absolute;top:2px;right:0}.bell-panel{background:var(--color-surface);border:1px solid var(--color-sand);border-radius:var(--radius-lg);width:360px;max-height:min(70vh,520px);box-shadow:var(--shadow-float);z-index:40;position:absolute;top:calc(100% + 8px);right:0;overflow-y:auto}@media (width<=767px){.bell-panel{border-radius:0;width:auto;max-height:none;position:fixed;inset:68px 0 0}}.bell-panel-head{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-sand-soft);background:var(--color-surface);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.bell-panel-head h2{font-size:1rem;font-family:var(--font-body);margin:0;font-weight:600}.bell-empty{padding:var(--space-5) var(--space-4);text-align:center;margin:0}.bell-list{margin:0;padding:0;list-style:none}.bell-item{gap:var(--space-3);text-align:left;width:100%;padding:var(--space-3) var(--space-4);border:0;border-bottom:1px solid var(--color-sand-soft);color:inherit;font:inherit;cursor:pointer;background:0 0;display:flex}.bell-item:hover{background:var(--color-bg)}.bell-item.is-unread{background:#d8c8ae2e}.bell-dot{border-radius:50%;flex:0 0 8px;height:8px;margin-top:7px}.bell-item.is-unread .bell-dot{background:var(--color-primary)}.bell-text{flex-direction:column;gap:2px;min-width:0;display:flex}.bell-title{font-size:.9rem;font-weight:600}.bell-body{color:var(--color-muted);overflow-wrap:anywhere;font-size:.85rem}.bell-time{color:var(--color-muted);font-size:.75rem}.console-bar{border-bottom:1px solid var(--color-sand);background:var(--color-surface);padding:var(--space-3) 0}.console-bar .eyebrow{margin:0}.console-title{font-family:var(--font-heading);margin:0;font-size:1.5rem}.console-body{gap:var(--space-5);padding-top:var(--space-5);padding-bottom:var(--space-7);display:grid}@media (width>=1024px){.console-body{gap:var(--space-6);grid-template-columns:220px minmax(0,1fr)}}.console-nav{gap:var(--space-1);border-bottom:1px solid var(--color-sand);padding-bottom:var(--space-2);display:flex;overflow-x:auto}@media (width>=1024px){.console-nav{top:var(--space-4);border-bottom:0;flex-direction:column;align-self:start;padding-bottom:0;position:sticky}}.console-link{align-items:center;gap:var(--space-2);border-radius:var(--radius-md);color:inherit;white-space:nowrap;min-height:44px;padding:10px 12px;font-weight:500;text-decoration:none;display:inline-flex}.console-link:hover{background:var(--color-sand-soft)}.console-link.is-active{background:var(--color-surface);box-shadow:inset 3px 0 0 var(--color-primary)}.console-main{min-width:0}.console-main>.banner{margin-bottom:var(--space-4)}.console-h1{margin:0 0 var(--space-2);font-size:2rem}.console-section{margin-top:var(--space-6)}.narrow-console{max-width:880px}.kpi-strip{gap:var(--space-4);margin-top:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.kpi{background:var(--color-surface);border:1px solid var(--color-sand);border-radius:var(--radius-md);padding:var(--space-4)}.kpi-label{text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted);margin:0;font-size:.75rem}.kpi-value{margin:var(--space-1) 0;font-family:var(--font-heading);font-size:2rem}.kpi-change{color:var(--color-muted);margin:0;font-size:.82rem}.kpi-change.is-up{color:var(--color-success)}.kpi-change.is-down{color:var(--color-error-ink)}.input-date{max-width:180px}.filter-row{margin:var(--space-4) 0;align-items:flex-end}.filter-row .field{min-width:200px}.chip-check{border:1px solid var(--color-sand);border-radius:var(--radius-pill);background:var(--color-surface);cursor:pointer;align-items:center;gap:6px;min-height:40px;padding:8px 12px;display:inline-flex}.chip-check:has(input:checked){border-color:var(--color-primary);background:#b86b4b14}.days-picker{border:0;margin:0;padding:0}.check-grid{gap:var(--space-2) var(--space-4);margin:var(--space-4) 0 0;border:0;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));padding:0;display:grid}.check-grid legend{margin-bottom:var(--space-2)}.stack-tight{gap:var(--space-2);flex-direction:column;justify-content:center;display:flex}.gallery-picker{gap:var(--space-3);margin-top:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(120px,1fr));display:grid}.gallery-option{border-radius:var(--radius-md);background:var(--color-sand-soft);aspect-ratio:4/3;cursor:pointer;border:2px solid #0000;padding:0;position:relative;overflow:hidden}.gallery-option img{object-fit:cover;width:100%;height:100%;display:block}.gallery-option.is-picked{border-color:var(--color-primary)}.gallery-order{background:var(--color-primary-strong);width:24px;height:24px;color:var(--color-bg);text-align:center;border-radius:50%;font-size:.8rem;font-weight:600;line-height:24px;position:absolute;top:6px;left:6px}.audit-table td{white-space:normal;vertical-align:top}.audit-change dl{margin:var(--space-2) 0 0;font-size:.82rem}.audit-change dt{font-weight:600}.audit-change dd{margin:0 0 var(--space-2)}.audit-change code{overflow-wrap:anywhere;white-space:pre-wrap}.bell-btn.is-ringing svg{transform-origin:50% 8%;animation:.9s ease-in-out bell-ring}@keyframes bell-ring{0%{transform:rotate(0)}12%{transform:rotate(16deg)}26%{transform:rotate(-14deg)}40%{transform:rotate(10deg)}54%{transform:rotate(-7deg)}68%{transform:rotate(4deg)}82%{transform:rotate(-2deg)}to{transform:rotate(0)}}.bell-actions{gap:var(--space-3)}.gallery-tile{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.gallery-tile .gallery-option{width:100%}.upload-row{margin-top:var(--space-3);align-items:center}.upload-row label.btn{cursor:pointer}.upload-row label.is-disabled{opacity:.5;pointer-events:none}#photo-upload:focus-visible+label{outline:2px solid var(--color-primary);outline-offset:2px}.text-success{color:var(--color-success)}.h4{font-size:1rem;font-family:var(--font-body);margin:0;font-weight:600}.party-picker{min-width:0;position:relative}.party-toggle{width:100%;max-width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0;display:block}.party-toggle-text{text-overflow:ellipsis;display:block;overflow:hidden}.party-panel{z-index:30;width:300px;padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-sand);border-radius:var(--radius-lg);box-shadow:var(--shadow-float);gap:var(--space-3);flex-direction:column;display:flex;position:absolute;top:calc(100% + 12px);left:-40px}.party-row{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.party-row p{margin:0}.party-label{font-weight:600}.stepper{align-items:center;gap:var(--space-2);display:flex}.stepper .icon-btn{border:1px solid var(--color-sand);border-radius:50%;width:36px;height:36px;font-size:1.1rem}.stepper span{text-align:center;min-width:1.5em;font-weight:600}.supplier-promise{border:1px solid var(--color-secondary);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-top:var(--space-4);background:#6e75600f}.room-card{display:block}.room-card .room-count{max-width:120px;margin-top:var(--space-3)}.rate-plans{border-top:1px solid var(--color-sand);margin-top:var(--space-4)}.rate-plan{gap:var(--space-2);padding:var(--space-3) var(--space-3) var(--space-3) var(--space-4);border-bottom:1px solid var(--color-sand-soft);border-left:3px solid #0000;grid-template-columns:minmax(0,1fr);display:grid}.rate-plan:last-child{border-bottom:0}.rate-plan.is-selected{border-left-color:var(--color-primary);background:#b86b4b0a}.rate-plan p{margin:0}.rate-plan-name{gap:var(--space-2);flex-wrap:wrap;align-items:center;font-weight:600;display:flex}@media (width>=768px){.rate-plan{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto;align-items:center}.rate-plan-price{text-align:right}}.night-by-night{margin-top:var(--space-2)}.night-by-night summary{cursor:pointer;color:var(--color-primary-ink)}.night-by-night ul{margin:var(--space-2) 0 0;padding-left:var(--space-4)}.price-note{margin:var(--space-2) 0}.traveller-row{border:0;border-top:1px solid var(--color-sand-soft);padding:var(--space-4) 0 0;margin:var(--space-4) 0 0}.traveller-row:first-child{border-top:0;margin-top:0;padding-top:0}.traveller-row legend{float:left;width:100%;margin-bottom:var(--space-2);padding:0;font-weight:600}.traveller-row legend+*{clear:both}.saved-picker{max-width:280px;margin-bottom:var(--space-3)}.notice-sand{border:1px solid var(--color-sand);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);background:#efe5d3}.notice-sand p{margin:0}.notice-sand p+p{margin-top:var(--space-1)}.offer-box .h4{margin-bottom:var(--space-2)}.offer-applied{align-items:center;gap:var(--space-2);color:var(--color-success);display:flex}.offer-applied p{color:var(--color-text);flex:1;margin:0}.code-disclosure{margin-top:var(--space-3)}.code-disclosure summary{cursor:pointer;color:var(--color-primary-ink);min-height:32px;font-size:.92rem}.code-form{margin-top:var(--space-2);flex-wrap:nowrap}.code-form .input{text-transform:uppercase;max-width:220px}.price-line-offer dt,.price-line-offer dd{color:var(--color-success)}.reschedule-box{margin-top:var(--space-3)}.reschedule-box .row{margin-top:var(--space-2)}.booking-actions{gap:var(--space-2) var(--space-4);flex-wrap:wrap}.reply-line{border-left:3px solid var(--color-sand);padding-left:var(--space-2)}.documents{max-width:820px}.documents-actions{margin-bottom:var(--space-4);justify-content:space-between;align-items:center}.checkin-card.is-focus{border-color:var(--color-primary)}.travel-doc{background:var(--color-surface);border:1px solid var(--color-sand);border-radius:var(--radius-md);padding:var(--space-5);margin-top:var(--space-4);position:relative}.travel-doc.is-cancelled:after{content:"CANCELLED";letter-spacing:.2em;color:#b84b4b40;pointer-events:none;font-size:3rem;font-weight:700;position:absolute;top:40%;left:50%;transform:translate(-50%,-50%)rotate(-12deg)}.doc-band{justify-content:space-between;align-items:flex-start;gap:var(--space-4);border-bottom:1px solid var(--color-sand);padding-bottom:var(--space-3);flex-wrap:wrap;display:flex}.doc-band-ref{text-align:right}.doc-band-ref p{margin:0}.doc-flight{padding:var(--space-4) 0;border-bottom:1px solid var(--color-sand-soft)}.doc-times{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.doc-times p{margin:0}.doc-table{margin:var(--space-4) 0}.doc-table td{white-space:normal}.doc-columns{gap:var(--space-5);display:grid}@media (width>=768px){.doc-columns{grid-template-columns:1fr 1fr}}.doc-qr{align-items:center;gap:var(--space-3);margin-top:var(--space-4);display:flex}.qr-placeholder{background:var(--color-sand-soft);border-radius:var(--radius-sm)}.passes{gap:var(--space-4);margin:var(--space-4) 0;flex-direction:column;display:flex}.boarding-pass{gap:var(--space-4);background:var(--color-surface);border:1px solid var(--color-sand);border-radius:var(--radius-lg);padding:var(--space-5);display:grid}@media (width>=640px){.boarding-pass{grid-template-columns:1fr auto}.bp-qr{border-left:2px dashed var(--color-sand);padding-left:var(--space-5);align-items:center;display:flex}}.bp-route{font-family:var(--font-heading);margin:0 0 var(--space-3);font-size:2.4rem}.bp-grid{gap:var(--space-3);margin:0 0 var(--space-3);grid-template-columns:repeat(auto-fit,minmax(110px,1fr));display:grid}.bp-grid dt{text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted);font-size:.72rem}.bp-grid dd{margin:0;font-weight:600}.bp-big{font-size:1.3rem}@media print{.nav,.footer,.no-print,.skip-link{display:none!important}body{background:#fff}.travel-doc,.boarding-pass{break-inside:avoid;border-color:#999}.boarding-pass{page-break-after:always}}.ticket-messages{margin:var(--space-4) 0;gap:var(--space-3);flex-direction:column;padding:0;list-style:none;display:flex}.ticket-message{background:var(--color-surface);border:1px solid var(--color-sand);border-radius:var(--radius-lg);max-width:85%;padding:var(--space-3) var(--space-4)}.ticket-message.is-mine{background:#efe5d3;align-self:flex-end}.ticket-author{margin:0 0 var(--space-1);color:var(--color-muted)}.ticket-body{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.ticket-reply{margin-top:var(--space-4)}.saved-list{gap:var(--space-2);margin-top:var(--space-4);flex-direction:column;display:flex}.saved-row{padding:var(--space-3) var(--space-4)}.form-grid.cols-3{gap:var(--space-3);display:grid}@media (width>=640px){.form-grid.cols-3{grid-template-columns:1fr 1fr 1fr}}#offers{scroll-margin-top:var(--space-4)}.offers-section+.section{padding-top:0}.offer-grid{gap:var(--space-4) var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}@media (width>=768px){.offer-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.offer-grid--page{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1024px){.offer-grid--page{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=559px){.offer-grid--page{grid-template-columns:minmax(0,1fr)}}.offer-card{height:100%;color:inherit;background:var(--color-surface);border:1px solid var(--color-sand);border-radius:var(--radius-md);transition:border-color var(--ease), transform var(--ease);flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.offer-card:hover{border-color:var(--color-primary)}.offer-card-image{aspect-ratio:4/3}.offer-card-body{gap:var(--space-1);padding:var(--space-3);flex-direction:column;flex:1;display:flex}.offer-card-body p{margin:0}.offer-card-title{font-family:var(--font-heading);margin:0;font-size:1.2rem;line-height:1.2}.offer-card-foot{padding-top:var(--space-2);justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-top:auto;display:flex}.code-chip{border:1px dashed var(--color-secondary);border-radius:var(--radius-sm);letter-spacing:.06em;padding:2px 8px;font-size:.8rem;font-weight:600;display:inline-block}.chip-row{margin:var(--space-4) 0 var(--space-5)}.chip-check[aria-pressed=true]{border-color:var(--color-primary);background:#b86b4b14}.breadcrumb{margin-bottom:var(--space-4)}.offer-detail{gap:var(--space-6);display:grid}@media (width>=1024px){.offer-detail{grid-template-columns:360px minmax(0,1fr);align-items:start}}.offer-summary{gap:var(--space-3);flex-direction:column;align-items:flex-start;display:flex}.offer-summary .btn-block{width:100%}.offer-summary-image{aspect-ratio:16/10;border-radius:var(--radius-sm);width:100%}.offer-title{margin:0;font-size:1.8rem}.offer-table{border:1px solid var(--color-sand);border-radius:var(--radius-md);width:100%;margin:0}.offer-table div{padding:var(--space-2) var(--space-3);grid-template-columns:120px 1fr;display:grid}.offer-table div+div{border-top:1px solid var(--color-sand-soft)}.offer-table dt{color:var(--color-muted)}.offer-table dd{margin:0}.code-row{justify-content:space-between;align-items:center;gap:var(--space-3);border-radius:var(--radius-md);width:100%;padding:var(--space-3);background:#f7f2ea;display:flex}.offer-body section+section{margin-top:var(--space-5)}.offer-body h2{font-size:1.5rem}.offers-placeholder{min-height:420px}@media (width<=767px){.offers-placeholder{min-height:640px}}.load-bar+.load-bar{margin-top:var(--space-3)}.load-bar p{margin:0 0 4px}.load-track{background:var(--color-sand-soft);border-radius:4px;height:8px;overflow:hidden}.load-track span{background:var(--color-secondary);height:100%;display:block}.departure-actions{margin-top:var(--space-4)}.departure-head{margin-bottom:var(--space-4);align-items:flex-start}.passenger-table td{white-space:normal;vertical-align:top}.block{display:block}.pricing-page{gap:var(--space-5);grid-template-columns:minmax(0,1fr);display:grid}@media (width>=1200px){.pricing-page{grid-template-columns:minmax(0,1fr) 300px;align-items:start}.pricing-preview{top:var(--space-4);position:sticky}}.pricing-main{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.pricing-main>.card+.card{margin-top:0}.rule-card.is-off .rule-body{opacity:.55}.rule-body{margin:var(--space-3) 0 0;border:0;min-width:0;padding:0}.switch{align-items:center;gap:var(--space-2);cursor:pointer;font-size:.9rem;display:inline-flex}.switch input{appearance:none;background:var(--color-sand);cursor:pointer;width:40px;height:22px;transition:background var(--ease);border-radius:11px;position:relative}.switch input:after{content:"";width:16px;height:16px;transition:transform var(--ease);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px}.switch input:checked{background:var(--color-secondary)}.switch input:checked:after{transform:translate(18px)}.switch input:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.band-list{gap:var(--space-2);flex-direction:column;align-items:flex-start;display:flex}.band-row{gap:var(--space-2);grid-template-columns:repeat(3,minmax(80px,140px)) 40px;align-items:end;width:100%;display:grid}.band-row--season{grid-template-columns:minmax(120px,1.4fr) repeat(2,minmax(120px,1fr)) minmax(70px,100px) 40px}.band-row--route{grid-template-columns:repeat(2,minmax(70px,100px)) repeat(2,minmax(100px,150px)) 40px}@media (width<=640px){.band-row,.band-row--season,.band-row--route{grid-template-columns:repeat(2,minmax(0,1fr))}.band-row .input,.band-row .select{width:100%;min-width:0}}.remove-row{border:1px solid var(--color-sand);border-radius:50%;width:36px;height:36px;margin-bottom:4px}.day-factors{gap:var(--space-2);grid-template-columns:repeat(7,minmax(60px,1fr));display:grid}@media (width<=640px){.day-factors{grid-template-columns:repeat(4,1fr)}}.input-sm{max-width:90px;padding:6px 8px}.tier-table td,.tier-table th{white-space:normal}.tier-table .select{max-width:280px}.pricing-preview{gap:var(--space-3);flex-direction:column;display:flex}.preview-result p{margin:0}.preview-result ul{margin:var(--space-2) 0 0;padding-left:var(--space-4)}.band-row--meal{grid-template-columns:minmax(160px,1fr) 110px 70px 40px}.request-card+.request-card{margin-top:var(--space-3)}.request-card p{margin:0 0 var(--space-2)}.request-text{font-size:1.05rem}.ticket-list li{padding:var(--space-3) var(--space-4);margin-bottom:var(--space-2)}.ticket-list p{margin:2px 0 0}.admin-table td.ticket-preview{white-space:normal;overflow-wrap:anywhere;min-width:240px;max-width:420px}.ticket-actions{margin:var(--space-3) 0}.doc-table-wrap{margin:var(--space-4) 0}.doc-table-wrap .doc-table{margin:0}@media print{.doc-table-wrap{overflow:visible}}.limits-grid{gap:0 var(--space-4);grid-template-columns:repeat(auto-fill,minmax(190px,1fr));display:grid}.admin-table .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.admin-table td.text-error{color:var(--color-error-ink)}.statement-totals{margin-top:0}.statement-table td{vertical-align:top}.analytics-head{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.analytics-filter-button{display:none}.analytics-layout{gap:var(--space-5);margin-top:var(--space-4);grid-template-columns:minmax(0,1fr) 240px;align-items:start;display:grid}.analytics-aside{top:var(--space-4);position:sticky}.analytics-filters .field{margin-bottom:var(--space-3)}.analytics-filters fieldset{border:0;padding:0}.analytics-filters legend{margin-bottom:var(--space-1);font-size:.9rem;font-weight:600}.radio-row{gap:var(--space-2);align-items:center;padding:2px 0;display:flex}.kpi-strip-5{gap:var(--space-3);grid-template-columns:repeat(5,minmax(0,1fr));margin-top:0}.kpi-strip-5 .kpi{padding:var(--space-3)}.kpi-strip-5 .kpi-value{font-size:1.45rem}@media (width<=1180px){.kpi-strip-5{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=640px){.kpi-strip-5{grid-template-columns:repeat(2,minmax(0,1fr))}}.chart-head{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.chart-head .chip-row{margin:0}.analytics-grid{gap:var(--space-4);margin-top:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));display:grid}.chart-wide{grid-column:1/-1}.analytics-grid>.chart-card:has(.bar-list){grid-column:1/-1}.chart-card{min-width:0}.chart{margin:0}.chart-title{font-family:var(--font-body);margin:0 0 var(--space-2);font-size:.98rem;font-weight:600}.chart-svg{width:100%;height:auto;display:block}.chart-grid{stroke:var(--color-sand-soft);stroke-width:1px}.chart-axis{fill:var(--color-muted);font-size:11px}.chart-value{fill:var(--color-text);font-size:12px;font-weight:600}.chart-legend{gap:var(--space-3);color:var(--color-muted);margin-bottom:var(--space-2);flex-wrap:wrap;font-size:.82rem;display:flex}.chart-data{margin-top:var(--space-2);font-size:.85rem}.chart-data summary{cursor:pointer;color:var(--color-primary-ink)}.bar-list,.funnel{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.bar-list li,.funnel li{gap:var(--space-2);grid-template-columns:minmax(90px,min(34%,220px)) minmax(0,1fr) auto;align-items:center;font-size:.88rem;display:grid}.bar-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bar-track{background:var(--color-sand-soft);border-radius:7px;height:14px;overflow:hidden}.bar-fill{background:var(--color-primary);border-radius:7px;height:100%;display:block}.bar-value{white-space:nowrap;font-variant-numeric:tabular-nums}.stat-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.stat-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.stat-value{font-family:var(--font-heading);margin:var(--space-1) 0 0;font-size:1.5rem}@media (width<=1023px){.analytics-layout{grid-template-columns:minmax(0,1fr)}.analytics-aside{display:none}.analytics-filter-button{display:inline-flex}}@media (width<=640px){.analytics-grid,.stat-grid-3{grid-template-columns:minmax(0,1fr)}.bar-list li,.funnel li{grid-template-columns:minmax(0,1fr) auto}.bar-list .bar-track,.funnel .bar-track{grid-area:2/1/auto/-1}}.sandbox-banner{background:var(--color-text);color:var(--color-bg);font-size:.9rem}.sandbox-banner-inner{justify-content:space-between;align-items:center;gap:var(--space-3);padding-top:var(--space-2);padding-bottom:var(--space-2);flex-wrap:wrap;display:flex}.sandbox-banner p{margin:0}.sandbox-banner .btn-secondary{color:var(--color-bg);border-color:var(--color-sand);background:0 0}.sandbox-banner .btn-text{color:var(--color-bg)}.footer-demo{gap:var(--space-1) var(--space-4);margin:var(--space-3) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.footer-demo .btn-text{padding:0}.sandbox-choice{margin:var(--space-3) 0 0;border:0;max-height:280px;padding:0;overflow:auto}.sandbox-choice legend{margin-bottom:var(--space-2);font-weight:600}@media (width<=767px){.destination-grid,.stay-grid,.offer-grid:not(.offer-grid--page),.review-list{gap:var(--space-3);overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);margin-inline:calc(-1 * var(--gutter));padding:2px var(--gutter) var(--space-3);scrollbar-width:none;display:flex;overflow-x:auto}.destination-grid::-webkit-scrollbar{display:none}.stay-grid::-webkit-scrollbar{display:none}.offer-grid::-webkit-scrollbar{display:none}.review-list::-webkit-scrollbar{display:none}.destination-grid>li,.stay-grid>li,.offer-grid:not(.offer-grid--page)>li,.review-list>li{scroll-snap-align:start;flex:0 0 72%;min-width:0}.destination-grid>li{flex-basis:44%}.review-list>.review{background:var(--color-surface);border:1px solid var(--color-sand);border-radius:var(--radius-md);padding:var(--space-4);flex-basis:82%}.seat-map{max-height:none;padding:0;overflow:visible}.seat-map-wrap{padding:var(--space-3) var(--space-2)}.seat,.seat-row-num,.seat-letter{width:36px}.seat{height:36px}.seat-row-num{width:22px}.aisle-gap{margin-right:12px}}@media (pointer:coarse){.btn-sm,.chip-check,.icon-btn,.btn-text{min-height:44px}.icon-btn{min-width:44px}}@media (width<=767px){.section{padding:var(--space-6) 0 var(--space-4)}.section-head{margin-bottom:var(--space-4)}.bell-panel{left:var(--space-2);right:var(--space-2);width:auto;max-height:70dvh;position:fixed;top:60px}.party-picker .party-panel{border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:auto;max-height:85dvh;padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom));z-index:60;position:fixed;inset:auto 0 0;overflow-y:auto;box-shadow:0 0 0 100vmax #17221f59}.flight-card{gap:var(--space-3);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"airline price""timeline timeline";padding:14px}.flight-card-airline{grid-area:airline}.flight-card .flight-timeline{gap:var(--space-3);grid-area:timeline}.flight-card .result-price{text-align:right;grid-area:price;align-items:flex-end}.result-price .btn{margin-top:6px}.result-title{font-size:1.12rem}.time{font-size:1.15rem}.price{font-size:1.2rem}.hotel-card{grid-template-columns:112px minmax(0,1fr);gap:0}.hotel-card-image{aspect-ratio:auto;grid-area:1/1;width:100%;min-width:0;height:100%;min-height:150px}.hotel-card-body{grid-column:2;gap:6px;min-width:0;padding:12px}.hotel-card .result-price{align-items:center;column-gap:var(--space-3);border-top:1px solid var(--color-sand-soft);grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;padding:10px 12px 12px;display:grid}.hotel-card .result-price .card-cta{grid-area:1/2/span 3;margin:0}.hotel-card .badge{font-size:.72rem}.hotel-card-body>p.small{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.booking-row-side{align-items:flex-start}}.saved-row>.spread{flex-wrap:nowrap;align-items:center}.saved-row>.spread>div:first-child{min-width:0}.saved-row>.spread>.row{flex-wrap:nowrap;flex-shrink:0}@media (width<=767px){.admin-search{flex-wrap:wrap}.admin-search>.input,.admin-search>input,.admin-search>.field,.admin-search>select{flex:160px;min-width:0;max-width:none}}.detail-list{gap:var(--space-3) var(--space-5);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin:0;display:grid}.detail-list dt{color:var(--color-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.78rem}.detail-list dd{overflow-wrap:anywhere;margin:2px 0 0}
