:root{
    --background:#faf8f4;
    --foreground:#101b31;
    --navy:#10264b;
    --navy-deep:#07152f;
    --navy-soft:#1c3d70;
    --gold:#d8ab42;
    --gold-soft:#e7c46a;
    --gold-deep:#b28528;
    --card:#ffffff;
    --muted:#6b7280;
    --soft:#f2efe8;
    --border:#e7e0d1;
    --success:#1e9e63;
    --danger:#c0392b;
    --warning:#d98a1a;
    --radius:18px;
    --shadow:0 18px 60px -24px rgba(16,38,75,.28);
    --shadow-soft:0 10px 30px -18px rgba(16,38,75,.18);
    --transition:all .35s ease;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
    color:var(--foreground);
    background:var(--background);
    line-height:1.6;
}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
button,input,textarea,select{
    font:inherit;
}
.container{
    width:min(1180px, calc(100% - 32px));
    margin:0 auto;
}
.site-main{min-height:60vh}
.site-header{
    position:fixed;
    inset:0 0 auto 0;
    z-index:50;
    background:transparent;
    border-bottom:1px solid transparent;
    transition:var(--transition);
}
.site-header.scrolled,
.site-header.nav-open{
    background:rgba(250,248,244,.88);
    backdrop-filter:blur(14px);
    border-color:rgba(16,38,75,.08);
    box-shadow:var(--shadow-soft);
}
.header-bar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    min-height:76px;
}
.brand{
    display:flex;
    align-items:center;
    gap:12px;
    flex-shrink:0;
}
.brand-logo{
    width:48px;
    height:48px;
    object-fit:contain;
}
.brand-text{
    display:flex;
    flex-direction:column;
    gap:1px;
}
.brand-text strong{
    font-family:'Playfair Display',Georgia,serif;
    font-size:1.1rem;
    line-height:1.1;
}
.brand-text span{
    font-size:.75rem;
    text-transform:uppercase;
    letter-spacing:.22em;
    color:var(--gold-soft);
}
.site-header.scrolled .brand-text strong,
.site-header.nav-open .brand-text strong{color:var(--navy)}
.site-header.scrolled .brand-text span,
.site-header.nav-open .brand-text span{color:var(--gold-deep)}

.site-nav{
    display:flex;
    align-items:center;
    gap:2px;
}
.site-nav a{
    padding:10px 14px;
    border-radius:10px;
    font-size:.92rem;
    font-weight:600;
    color:rgba(255,255,255,.92);
    transition:var(--transition);
}
.site-header.scrolled .site-nav a,
.site-header.nav-open .site-nav a{color:var(--foreground)}
.site-nav a:hover,.site-nav a.active{color:var(--gold)}
.desktop-cta{white-space:nowrap}
.mobile-toggle{
    display:none;
    width:44px;height:44px;
    border:none;background:none;padding:0;cursor:pointer;
}
.mobile-toggle span{
    display:block;width:22px;height:2px;margin:5px auto;background:currentColor;border-radius:999px;transition:var(--transition)
}
.site-header:not(.scrolled):not(.nav-open) .mobile-toggle{color:#fff}
.site-header.scrolled .mobile-toggle,
.site-header.nav-open .mobile-toggle{color:var(--navy)}

.hero-slider{
    position:relative;
    min-height:88vh;
    overflow:hidden;
}
.hero-slide{
    position:absolute;
    inset:0;
    opacity:0;
    visibility:hidden;
    background-size:cover;
    background-position:center;
    transition:opacity .8s ease, visibility .8s ease, transform 6s ease;
    transform:scale(1.03);
}
.hero-slide.active{
    opacity:1;
    visibility:visible;
    transform:scale(1);
}
.hero-content{
    position:relative;
    z-index:2;
    min-height:88vh;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:flex-start;
    max-width:760px;
    color:#fff;
}
.hero-badge,.eyebrow{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:9px 16px;
    border-radius:999px;
    background:rgba(216,171,66,.16);
    border:1px solid rgba(216,171,66,.36);
    color:#f3dca1;
    text-transform:uppercase;
    letter-spacing:.22em;
    font-size:.72rem;
    font-weight:700;
}
.eyebrow{color:var(--gold-deep);background:rgba(216,171,66,.12)}
.eyebrow.light{color:#f4d992}
.hero-content h1,
.page-hero h1,
.section-heading h2,
.about-grid h2,
.success-card h2,
.detail-card h2{
    font-family:'Playfair Display',Georgia,serif;
    letter-spacing:-.02em;
}
.hero-content h1{
    font-size:clamp(2.9rem,5.5vw,5.2rem);
    line-height:1.08;
    margin:18px 0 18px;
}
.hero-content p{
    font-size:clamp(1.02rem,2vw,1.22rem);
    max-width:680px;
    color:rgba(255,255,255,.88);
    margin:0 0 28px;
}
.hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
}
.hero-actions.centered{justify-content:center}
.btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    border:none;
    cursor:pointer;
    min-height:48px;
    padding:0 20px;
    border-radius:14px;
    font-weight:700;
    transition:var(--transition);
}
.btn:hover{transform:translateY(-2px)}
.btn-gold,.btn-hero{
    color:#101b31;
    background:linear-gradient(135deg, var(--gold), var(--gold-deep));
    box-shadow:0 12px 30px -16px rgba(216,171,66,.72);
}
.btn-outline-light{
    color:#fff;
    border:1px solid rgba(255,255,255,.7);
    background:rgba(255,255,255,.08);
}
.btn-outline-light:hover{background:#fff;color:var(--navy)}
.btn-outline-dark{
    color:var(--navy);
    border:1px solid rgba(16,38,75,.18);
    background:#fff;
}
.btn-outline-dark:hover{border-color:var(--gold);color:var(--gold-deep)}
.btn-icon{
    width:44px;
    min-height:44px;
    padding:0;
    border-radius:12px;
    background:#fff;
    border:1px solid rgba(16,38,75,.12);
}
.btn-small{min-height:42px;padding:0 16px;font-size:.92rem}
.btn-large{min-height:54px;padding:0 24px}
.full-width{width:100%}

.hero-arrow{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:52px;height:52px;border-radius:999px;border:none;
    background:rgba(7,21,47,.3);
    color:#fff;
    backdrop-filter:blur(10px);
    cursor:pointer;z-index:4;
    transition:var(--transition)
}
.hero-arrow:hover{background:var(--gold);color:var(--navy)}
.hero-arrow.prev{left:20px}
.hero-arrow.next{right:20px}
.hero-dots{
    position:absolute;
    left:50%;
    bottom:26px;
    transform:translateX(-50%);
    display:flex;
    gap:10px;
    z-index:4;
}
.hero-dot{
    width:12px;height:12px;border-radius:999px;border:none;
    background:rgba(255,255,255,.42);
    cursor:pointer;
}
.hero-dot.active{width:34px;background:var(--gold)}

.section{
    padding:88px 0;
}
.section-muted{background:rgba(242,239,232,.68)}
.section-heading{
    max-width:760px;
    margin:0 auto 42px;
    text-align:center;
}
.section-heading h2{
    font-size:clamp(2rem,4vw,3.2rem);
    color:var(--navy);
    margin:12px 0 14px;
}
.section-heading p{
    margin:0;
    color:var(--muted);
    font-size:1rem;
}
.gold-text{
    background:linear-gradient(135deg,var(--gold),var(--gold-deep));
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
}
.grid{display:grid;gap:24px}
.grid-4{grid-template-columns:repeat(4,1fr)}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-2{grid-template-columns:repeat(2,1fr)}
.card{
    background:var(--card);
    border:1px solid rgba(16,38,75,.08);
    border-radius:var(--radius);
    box-shadow:var(--shadow-soft);
}
.card:hover{box-shadow:var(--shadow);transform:translateY(-3px)}
.center-card{
    padding:32px 26px;
    text-align:center;
}
.feature-card h3,.service-card h3,.fleet-content h3,.service-body h3,.stat-card .stat-number,.contact-form-card h2,.admin-card-head h2{
    margin:0 0 10px;
}
.center-card p,.service-card p,.fleet-content p,.service-body p,.note-text,.muted,.quote,.card p{
    color:var(--muted)
}
.icon-box,.service-icon{
    width:58px;height:58px;border-radius:18px;
    display:grid;place-items:center;
    margin-bottom:18px;
    background:linear-gradient(135deg,var(--gold),var(--gold-deep));
    color:var(--navy);
    font-size:1.45rem;
}
.icon-box.small{width:46px;height:46px;border-radius:14px;margin-bottom:0}
.service-icon{
    background:rgba(16,38,75,.05);
    color:var(--navy);
}
.service-icon.large{width:72px;height:72px;font-size:1.8rem;background:linear-gradient(135deg,var(--gold),var(--gold-deep));color:var(--navy)}
.service-card,.schedule-card,.testimonial-card,.package-card{padding:26px}
.inline-link{
    display:inline-flex;align-items:center;gap:8px;
    color:var(--gold-deep);font-weight:700;
}
.fleet-card,.package-card{overflow:hidden}
.fleet-image{
    aspect-ratio:4/3;
    overflow:hidden;
    background:var(--soft);
}
.fleet-image.tall{height:100%}
.fleet-image img,.about-image,.detail-image{
    width:100%;height:100%;object-fit:cover;transition:transform .5s ease
}
.fleet-card:hover .fleet-image img,
.package-card:hover .fleet-image img,
.fleet-detail-card:hover .fleet-image img,
.about-image-wrap:hover .about-image{transform:scale(1.06)}
.fleet-content{padding:22px}
.fleet-content strong,.fleet-price,.detail-price{
    color:var(--gold-deep);
    font-weight:800;
    display:block;
}
.section-actions{text-align:center;margin-top:34px}
.schedule-card .schedule-head{
    display:flex;justify-content:space-between;gap:12px;align-items:flex-start;
    margin-bottom:12px
}
.schedule-card h3{margin:0;font-size:1.1rem;color:var(--navy)}
.schedule-time{
    font-family:'Playfair Display',Georgia,serif;
    color:var(--gold-deep);
    font-size:2rem;font-weight:800;
    margin-bottom:8px;
}
.mini-badge,.status-pill{
    display:inline-flex;align-items:center;gap:6px;
    border-radius:999px;padding:7px 12px;font-size:.78rem;font-weight:700;
    background:rgba(216,171,66,.14);color:var(--gold-deep)
}
.badge-success,.status-pill.badge-success{background:rgba(30,158,99,.12);color:var(--success)}
.badge-warning,.status-pill.badge-warning{background:rgba(217,138,26,.14);color:var(--warning)}
.badge-danger,.status-pill.badge-danger{background:rgba(192,57,43,.12);color:var(--danger)}
.badge-info,.status-pill.badge-info{background:rgba(28,61,112,.12);color:var(--navy-soft)}
.badge-muted,.status-pill.badge-muted{background:rgba(107,114,128,.14);color:var(--muted)}
.testimonial-card{position:relative;overflow:hidden}
.testimonial-card.large{padding:30px}
.quote-icon{
    position:absolute;right:20px;top:16px;
    font-size:3rem;color:rgba(216,171,66,.16)
}
.stars{display:flex;gap:4px;margin-bottom:18px}
.star{font-size:1rem;color:#e8d9b0}
.star.active{color:var(--gold)}
.quote{font-style:italic;margin:0 0 22px}
.testimonial-person{
    display:flex;align-items:center;gap:14px;
    padding-top:18px;border-top:1px solid rgba(16,38,75,.08)
}
.avatar{
    width:46px;height:46px;border-radius:999px;
    display:grid;place-items:center;
    background:linear-gradient(135deg,var(--gold),var(--gold-deep));
    color:var(--navy);font-weight:800
}
.testimonial-person span{display:block;font-size:.85rem;color:var(--muted)}

.cta-banner{
    position:relative;
    overflow:hidden;
    border-radius:28px;
    background:linear-gradient(135deg,var(--navy),var(--navy-soft));
    color:#fff;
}
.cta-banner::before{
    content:"";
    position:absolute;inset:0;
    background:radial-gradient(circle at 75% 25%, rgba(216,171,66,.45), transparent 36%);
    opacity:.55
}
.cta-inner{
    position:relative;
    text-align:center;
    max-width:760px;
    margin:0 auto;
    padding:72px 24px;
}
.cta-inner h2{
    margin:16px 0 12px;
    font-size:clamp(2rem,4vw,3.6rem)
}
.cta-inner p{color:rgba(255,255,255,.86);margin:0 0 28px}

.page-hero{
    padding:168px 0 90px;
    color:#fff;
    background-size:cover;
    background-position:center;
}
.page-hero.small{padding:150px 0 70px}
.page-hero h1{
    margin:14px 0 10px;
    font-size:clamp(2.4rem,4vw,4rem)
}
.page-hero p{
    margin:0;
    max-width:640px;
    color:rgba(255,255,255,.86)
}
.about-grid{
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:52px;
    align-items:center;
}
.about-grid p{margin:0 0 18px}
.about-image-wrap{position:relative}
.decor-card{
    position:absolute;
    inset:-16px;
    border-radius:28px;
    background:linear-gradient(135deg,var(--gold),var(--gold-deep));
    opacity:.18;
    transform:rotate(4deg)
}
.about-image{
    position:relative;border-radius:26px;box-shadow:var(--shadow)
}
.stat-card{
    padding:36px 20px;
    text-align:center;
    background:linear-gradient(135deg,#fff,#f4f1ea)
}
.stat-number{
    font-family:'Playfair Display',Georgia,serif;
    font-size:2.8rem;
    font-weight:800;
    background:linear-gradient(135deg,var(--gold),var(--gold-deep));
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent
}
.award-text{
    max-width:780px;
    margin:38px auto 0;
    text-align:center;
}
.award-text i{font-size:2.8rem;color:var(--gold);display:block;margin-bottom:18px}

.service-detail-card{
    display:flex;
    gap:24px;
    align-items:flex-start;
    padding:30px;
}
.service-body{flex:1}
.service-meta{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    align-items:center;
    justify-content:space-between;
    margin-bottom:12px
}
.check-list{
    display:grid;
    gap:10px;
    padding:0;
    margin:0 0 24px;
    list-style:none
}
.check-list.compact{gap:8px;margin-bottom:18px}
.check-list li{
    display:flex;gap:10px;align-items:flex-start;color:var(--foreground)
}
.check-list i{color:var(--gold);margin-top:2px}
.card-actions{
    display:flex;flex-wrap:wrap;gap:12px;align-items:center
}
.card-actions.stretch > *{flex:1}
.fleet-detail-grid{
    display:grid;grid-template-columns:1fr 1.1fr
}
.fleet-detail-card .fleet-content{padding:28px}
.inline-meta{
    display:inline-flex;gap:8px;align-items:center;
    color:var(--muted);margin-bottom:18px
}
.note-text{text-align:center;max-width:720px;margin:28px auto 0}
.detail-grid{
    display:grid;grid-template-columns:1fr 1fr;gap:32px
}
.detail-card{padding:30px}
.detail-card h4{margin:22px 0 10px}
.detail-image{border-radius:var(--radius);min-height:100%}
.detail-price{
    font-size:1.65rem;
    margin:12px 0 12px
}
.package-itinerary{
    padding:14px 16px;
    background:var(--soft);
    border-radius:14px;
    margin:16px 0;
    color:var(--foreground);
    font-size:.94rem
}

.filter-card,.contact-form-card,.booking-form-card,.map-card{
    padding:28px
}
.filter-grid{grid-template-columns:repeat(4,1fr);margin-bottom:16px}
.form-container{max-width:980px}
.booking-form .form-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:18px
}
.form-group{display:flex;flex-direction:column;gap:8px}
.form-group.full-width{grid-column:1/-1}
.form-group label{font-weight:700;color:var(--navy)}
.form-group input,
.form-group textarea,
.form-group select{
    width:100%;
    border:1px solid rgba(16,38,75,.14);
    background:#fff;
    border-radius:14px;
    min-height:48px;
    padding:12px 14px;
    color:var(--foreground);
    transition:var(--transition)
}
.form-group textarea{min-height:140px;resize:vertical}
.form-group input:focus,
.form-group textarea:focus,
.form-group select:focus{
    border-color:var(--gold);
    outline:none;
    box-shadow:0 0 0 4px rgba(216,171,66,.12)
}
.error-text{color:var(--danger)}
.form-note{
    text-align:center;
    color:var(--muted);
    font-size:.88rem;
    margin:18px 0 0
}
.alert{
    border-radius:14px;
    padding:14px 16px;
    margin-bottom:16px;
    font-weight:600
}
.alert-success{background:rgba(30,158,99,.12);color:var(--success)}

.success-card{
    padding:42px 32px;
    text-align:center
}
.success-icon{
    width:84px;height:84px;border-radius:999px;
    margin:0 auto 22px;
    display:grid;place-items:center;
    background:linear-gradient(135deg,var(--gold),var(--gold-deep));
    color:var(--navy);font-size:2.6rem
}
.summary-box{
    margin:28px 0;
    padding:22px;
    border-radius:20px;
    background:var(--soft);
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:16px;
    text-align:left
}
.summary-box span{
    display:block;
    color:var(--muted);
    font-size:.84rem;
    margin-bottom:4px
}
.summary-box strong{color:var(--navy)}

.contact-grid{
    display:grid;grid-template-columns:.9fr 1.1fr;gap:28px
}
.contact-info-list{display:grid;gap:16px}
.contact-info-card{
    padding:18px 20px;
    display:flex;
    align-items:flex-start;
    gap:16px
}
.contact-info-card span{
    display:block;
    text-transform:uppercase;
    font-size:.76rem;
    letter-spacing:.14em;
    color:var(--muted);
    margin-bottom:6px
}
.contact-info-card strong a{color:var(--navy)}
.contact-form-card h2{
    font-family:'Playfair Display',Georgia,serif;
    color:var(--navy)
}
.contact-form-card p{margin-top:0;color:var(--muted)}

.mobile-schedule-list{display:none}
.table-wrap,.admin-table-wrap{overflow:auto}
.premium-table{
    width:100%;
    border-collapse:collapse;
    overflow:hidden;
    border-radius:22px;
    background:#fff;
    box-shadow:var(--shadow-soft)
}
.premium-table thead th{
    background:linear-gradient(135deg,var(--navy),var(--navy-soft));
    color:#fff;
    text-align:left;
    padding:18px 16px;
    font-size:.92rem
}
.premium-table td{
    padding:16px;
    border-top:1px solid rgba(16,38,75,.08);
    vertical-align:top
}
.empty-cell{text-align:center;color:var(--muted)}
.info-banner{
    margin-top:28px;
    padding:28px;
    border-radius:22px;
    background:rgba(216,171,66,.12);
    border:1px solid rgba(216,171,66,.32);
    text-align:center
}
.info-banner i{
    font-size:2.2rem;color:var(--gold-deep);
    display:block;margin-bottom:14px
}
.faq-home .section-heading{margin-bottom:30px}
.accordion-list{display:grid;gap:14px}
.accordion-item{
    border:1px solid rgba(16,38,75,.1);
    border-radius:18px;
    background:#fff;
    overflow:hidden;
    box-shadow:var(--shadow-soft)
}
.accordion-trigger{
    width:100%;
    border:none;
    background:none;
    text-align:left;
    padding:20px 22px;
    display:flex;
    justify-content:space-between;
    gap:18px;
    align-items:center;
    font-family:'Playfair Display',Georgia,serif;
    font-size:1.08rem;
    font-weight:700;
    color:var(--navy);
    cursor:pointer
}
.accordion-trigger i{transition:var(--transition)}
.accordion-item.open .accordion-trigger i{transform:rotate(45deg)}
.accordion-content{
    display:none;
    padding:0 22px 20px;
    color:var(--muted)
}
.accordion-item.open .accordion-content{display:block}

.site-footer{
    background:var(--navy);
    color:#fff;
    padding:72px 0 0;
    margin-top:72px
}
.footer-grid{
    display:grid;
    grid-template-columns:1.1fr .8fr .8fr 1fr;
    gap:28px
}
.footer-brand .brand-text strong{color:#fff}
.footer-copy{color:rgba(255,255,255,.72);max-width:320px}
.site-footer h4{
    font-family:'Playfair Display',Georgia,serif;
    color:var(--gold);
    margin:0 0 16px
}
.footer-links,.footer-contact{
    margin:0;padding:0;list-style:none;display:grid;gap:10px
}
.footer-links a,.footer-contact a{color:rgba(255,255,255,.78)}
.footer-social{
    display:flex!important;
    gap:10px;
    padding-top:8px
}
.footer-social a{
    width:38px;height:38px;border-radius:999px;
    display:grid;place-items:center;
    background:rgba(255,255,255,.1)
}
.footer-bottom{
    margin-top:36px;
    padding:22px 0;
    border-top:1px solid rgba(255,255,255,.1);
    text-align:center;
    color:rgba(255,255,255,.6);
    font-size:.9rem
}
.floating-wa{
    position:fixed;
    right:18px;
    bottom:18px;
    width:58px;height:58px;
    border-radius:999px;
    display:grid;place-items:center;
    font-size:1.55rem;
    color:#fff;
    background:linear-gradient(135deg,#16b85c,#0f8a47);
    box-shadow:0 16px 30px -12px rgba(22,184,92,.48);
    z-index:70;
    transition:var(--transition)
}
.floating-wa:hover{transform:translateY(-3px) scale(1.02)}

.narrow{max-width:840px}
.table-thumb{
    width:86px;height:54px;object-fit:cover;border-radius:10px
}



.fleet-list-grid{align-items:stretch}
.fleet-stack-card{
    overflow:hidden;
    display:flex;
    flex-direction:column;
}
.fleet-stack-image{
    position:relative;
    aspect-ratio:16/10;
}
.fleet-stack-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}
.fleet-status-pill{
    position:absolute;
    left:18px;
    bottom:18px;
    box-shadow:var(--shadow-soft);
    background:rgba(255,255,255,.96);
}
.fleet-stack-body{
    padding:24px;
    display:flex;
    flex-direction:column;
    gap:18px;
}
.fleet-stack-head{
    display:flex;
    gap:18px;
    justify-content:space-between;
    align-items:flex-start;
}
.fleet-stack-copy{
    flex:1;
    min-width:0;
}
.fleet-stack-copy h3{
    margin:0 0 10px;
}
.fleet-description{
    margin:0;
    line-height:1.7;
    color:var(--muted);
}
.fleet-price-box{
    min-width:170px;
    text-align:right;
    padding:16px 18px;
    border-radius:18px;
    background:linear-gradient(180deg, rgba(216,171,66,.14), rgba(16,38,75,.04));
    border:1px solid rgba(216,171,66,.18);
}
.price-caption,.price-unit{
    display:block;
    color:var(--muted);
    font-size:.84rem;
}
.fleet-price-box .fleet-price{
    font-size:1.35rem;
    line-height:1.2;
    margin:6px 0 2px;
}
.fleet-spec-grid{
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:14px;
}
.fleet-spec-item{
    padding:14px 16px;
    border-radius:16px;
    background:var(--soft);
    border:1px solid rgba(16,38,75,.06);
}
.fleet-spec-item strong{
    display:block;
    color:var(--navy);
    font-size:1rem;
}
.fleet-spec-label{
    display:block;
    font-size:.8rem;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:var(--muted);
    margin-bottom:6px;
}
.fleet-facility-list{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
}
.fleet-facility-pill{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:10px 14px;
    border-radius:999px;
    background:rgba(16,38,75,.05);
    color:var(--foreground);
    font-size:.92rem;
}
.fleet-facility-pill i{
    color:var(--gold-deep);
}
.fleet-action-group{
    margin-top:auto;
}

@media (max-width: 1199px){
    .grid-4{grid-template-columns:repeat(2,1fr)}
    .grid-3{grid-template-columns:repeat(2,1fr)}
    .site-nav{position:fixed;left:16px;right:16px;top:76px;padding:14px;background:#fff;border-radius:18px;box-shadow:var(--shadow);border:1px solid rgba(16,38,75,.08);display:none;flex-direction:column;align-items:stretch}
    .site-nav a{color:var(--foreground)}
    .site-nav.show{display:flex}
    .mobile-toggle{display:block}
    .desktop-cta{display:none}
}
@media (max-width: 991px){
    .container{width:min(100% - 24px, 1180px)}
    .fleet-stack-head{flex-direction:column}
    .fleet-price-box{min-width:0;width:100%;text-align:left}
    .section{padding:72px 0}
    .about-grid,.contact-grid,.detail-grid,.grid-2,.footer-grid,.fleet-detail-grid{grid-template-columns:1fr}
    .booking-form .form-grid,.filter-grid{grid-template-columns:1fr 1fr}
    .hero-arrow{display:none}
}
@media (max-width: 767px){
    .header-bar{min-height:70px}
    .fleet-stack-body{padding:20px}
    .fleet-spec-grid{grid-template-columns:1fr}
    .fleet-action-group > *{flex:1}
    .fleet-status-pill{left:14px;bottom:14px}
    .brand-text{display:none}
    .hero-slider,.hero-content{min-height:82vh}
    .hero-content{padding-top:52px}
    .grid-4,.grid-3,.grid-2,.booking-form .form-grid,.summary-box,.filter-grid{grid-template-columns:1fr}
    .service-detail-card{flex-direction:column}
    .mobile-schedule-list{display:grid;gap:16px}
    .table-wrap{display:none}
    .contact-info-list{order:2}
    .page-hero{padding:148px 0 74px}
    .section-actions,.cta-inner,.success-card{text-align:center}
    .hero-actions{width:100%}
    .hero-actions .btn{flex:1 1 100%}
    .summary-box{text-align:left}
}


.header-actions{
    display:flex;
    align-items:center;
    gap:12px;
    flex-shrink:0;
}
.demo-ribbon{
    position:fixed;
    left:18px;
    bottom:18px;
    z-index:120;
    padding:10px 16px;
    border-radius:999px;
    background:linear-gradient(135deg,#ff9a1f,#f07700);
    color:#fff;
    font-size:.72rem;
    font-weight:800;
    letter-spacing:.06em;
    box-shadow:0 18px 45px -22px rgba(240,119,0,.65);
}
.demo-login-card{
    padding:32px;
}
.section-heading.compact{
    margin-bottom:22px;
}
.form-alert{
    padding:14px 16px;
    border-radius:14px;
    margin-bottom:18px;
    font-weight:600;
}
.form-alert.error{
    background:rgba(192,57,43,.1);
    color:var(--danger);
    border:1px solid rgba(192,57,43,.18);
}
.form-alert.success{
    background:rgba(30,158,99,.12);
    color:var(--success);
    border:1px solid rgba(30,158,99,.18);
}
.demo-shortcuts{
    margin-top:26px;
    border-top:1px solid var(--border);
    padding-top:24px;
}
.demo-shortcuts h3{
    margin:0 0 10px;
    font-family:'Playfair Display',Georgia,serif;
    color:var(--navy);
}
.demo-credential-list{
    display:grid;
    gap:14px;
}
.demo-credential-item{
    display:flex;
    justify-content:space-between;
    gap:16px;
    align-items:center;
    padding:18px;
    border:1px solid var(--border);
    border-radius:16px;
    background:#fff;
}
.demo-credential-item p{
    margin:6px 0 0;
    color:var(--muted);
}
.demo-credential-item code{
    background:rgba(16,38,75,.06);
    padding:4px 8px;
    border-radius:10px;
}
.demo-info-banner{
    margin-top:18px;
}
@media (max-width: 1024px){
    .header-actions{
        display:none;
    }
}
@media (max-width: 768px){
    .demo-ribbon{
        left:12px;
        right:12px;
        bottom:12px;
        text-align:center;
    }
    .demo-login-card{
        padding:22px;
    }
    .demo-credential-item{
        flex-direction:column;
        align-items:flex-start;
    }
}
