:root{
  --primary:#0aa89b;
  --primary-dark:#087a72;
  --primary-soft:#e5f8f5;
  --secondary:#083d4d;
  --secondary-2:#0e596c;
  --gold:#d8a844;
  --gold-soft:#fff5dc;
  --danger:#d74646;
  --warning:#e79424;
  --success:#15996c;
  --info:#3679cf;
  --ink:#16313a;
  --muted:#65777d;
  --line:#dce8e9;
  --surface:#ffffff;
  --surface-2:#f5f9f9;
  --surface-3:#edf6f5;
  --shadow:0 18px 50px rgba(8,61,77,.12);
  --shadow-sm:0 8px 24px rgba(8,61,77,.09);
  --radius:22px;
  --radius-sm:14px;
  --font:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.65}
body.no-scroll{overflow:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.container{width:min(1180px,calc(100% - 32px));margin-inline:auto}
.section{padding:84px 0}
.section-sm{padding:54px 0}
.section-soft{background:var(--surface-2)}
.section-deep{background:linear-gradient(135deg,var(--secondary),#0e6d74);color:#fff}
.section-header{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:34px}
.section-heading{max-width:720px}
.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:var(--primary-soft);color:var(--primary-dark);font-size:.82rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.section-deep .eyebrow,.hero .eyebrow{background:rgba(255,255,255,.15);color:#fff;border:1px solid rgba(255,255,255,.25)}
h1,h2,h3,h4{line-height:1.18;margin:0 0 14px;color:var(--secondary)}
.section-deep h1,.section-deep h2,.section-deep h3,.hero h1,.hero h2,.hero h3{color:#fff}
h1{font-size:clamp(2.2rem,5vw,4.7rem)}
h2{font-size:clamp(1.8rem,3.5vw,3rem)}
h3{font-size:1.25rem}
p{margin:0 0 16px}
.text-muted{color:var(--muted)}
.text-white{color:#fff}
.text-primary{color:var(--primary-dark)}
.small{font-size:.9rem}
strong{font-weight:800}

/* Header */
.site-header{position:sticky;top:0;z-index:80;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(220,232,233,.85)}
.header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px;min-width:210px}
.brand img{height:54px;width:auto;object-fit:contain}
.brand-copy{display:none}
.main-nav{display:flex;align-items:center;gap:6px}
.main-nav a{padding:10px 13px;border-radius:12px;font-weight:700;color:#36515a;font-size:.94rem}
.main-nav a:hover,.main-nav a.active{background:var(--primary-soft);color:var(--primary-dark)}
.header-actions{display:flex;align-items:center;gap:9px}
.mobile-toggle{display:none;width:44px;height:44px;border:0;border-radius:12px;background:var(--surface-3);color:var(--secondary);font-size:1.25rem}
.top-strip{background:var(--secondary);color:#fff;font-size:.85rem}
.top-strip .container{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-block:7px}
.top-strip-links{display:flex;gap:18px;flex-wrap:wrap}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:11px 18px;border:1px solid transparent;border-radius:13px;font-weight:800;transition:.2s ease;text-align:center}
.btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff}
.btn-secondary{background:var(--secondary);color:#fff}
.btn-gold{background:linear-gradient(135deg,#f1c66e,var(--gold));color:#42320f}
.btn-light{background:#fff;color:var(--secondary)}
.btn-outline{background:transparent;border-color:var(--line);color:var(--secondary)}
.btn-outline-light{background:transparent;border-color:rgba(255,255,255,.45);color:#fff}
.btn-danger{background:var(--danger);color:#fff}
.btn-sm{min-height:36px;padding:8px 12px;font-size:.86rem;border-radius:10px}
.btn-icon{width:42px;height:42px;padding:0;border-radius:12px}

/* Hero */
.hero{position:relative;overflow:hidden;background:var(--secondary);color:#fff}
.hero-carousel{position:relative;min-height:660px}
.carousel{position:relative;overflow:hidden}
.carousel-track{display:flex;transition:transform .65s cubic-bezier(.22,.61,.36,1);will-change:transform}
.carousel-slide{min-width:100%;position:relative}
.hero-slide{min-height:660px;display:grid;align-items:center;background-position:center;background-size:cover}
.hero-slide::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,37,48,.96) 0%,rgba(5,53,63,.86) 42%,rgba(8,61,77,.2) 78%,rgba(8,61,77,.07) 100%)}
.hero-slide::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 35%,rgba(216,168,68,.22),transparent 28%)}
.hero-content{position:relative;z-index:2;max-width:670px;padding:105px 0 125px}
.hero-title{font-size:clamp(2.45rem,5.2vw,4.9rem);letter-spacing:-.045em;margin-top:14px}
.hero-title span{color:#8ee1d6}
.hero-meta{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0}
.hero-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);font-weight:700}
.hero-price{display:flex;align-items:end;gap:12px;margin:18px 0 26px}
.hero-price strong{font-size:2.15rem;color:#ffe7a9;line-height:1}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.hero-trust{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:28px;font-size:.9rem;color:rgba(255,255,255,.86)}
.hero-trust span{display:inline-flex;align-items:center;gap:7px}
.carousel-controls{position:absolute;z-index:7;left:50%;bottom:28px;transform:translateX(-50%);width:min(1180px,calc(100% - 32px));display:flex;justify-content:space-between;align-items:center;pointer-events:none}
.carousel-buttons{display:flex;gap:9px;pointer-events:auto}
.carousel-button{width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(4,45,57,.58);color:#fff;backdrop-filter:blur(8px)}
.carousel-button:hover{background:var(--primary)}
.carousel-dots{display:flex;gap:8px;pointer-events:auto}
.carousel-dot{width:9px;height:9px;border:0;padding:0;border-radius:50%;background:rgba(255,255,255,.42);transition:.2s}
.carousel-dot.active{width:30px;border-radius:99px;background:#fff}
.hero-side-card{position:absolute;z-index:4;right:max(24px,calc((100vw - 1180px)/2));top:50%;transform:translateY(-50%);width:310px;padding:24px;border-radius:24px;background:rgba(255,255,255,.92);color:var(--ink);box-shadow:0 25px 80px rgba(0,0,0,.28);backdrop-filter:blur(12px)}
.hero-side-card h3{margin-bottom:6px}
.hero-side-card .slot-meter{margin-top:16px}

/* Cards and grids */
.grid{display:grid;gap:24px}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}
.card-body{padding:24px}
.feature-card{padding:28px;height:100%;position:relative;overflow:hidden}
.feature-card::after{content:"";position:absolute;width:120px;height:120px;border-radius:50%;right:-40px;top:-40px;background:var(--primary-soft)}
.icon-box{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary-soft),#fff3d6);color:var(--primary-dark);font-size:1.3rem;margin-bottom:18px;position:relative;z-index:2}
.feature-card p{color:var(--muted)}
.package-card{overflow:hidden;height:100%;display:flex;flex-direction:column}
.package-image{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--secondary)}
.package-image img{width:100%;height:100%;object-fit:cover;transition:.35s}
.package-card:hover .package-image img{transform:scale(1.045)}
.package-badge{position:absolute;left:15px;top:15px;padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.94);color:var(--primary-dark);font-size:.78rem;font-weight:900;box-shadow:0 6px 18px rgba(0,0,0,.12)}
.package-slots{position:absolute;right:15px;top:15px;padding:7px 11px;border-radius:999px;background:rgba(8,61,77,.9);color:#fff;font-size:.78rem;font-weight:800}
.package-content{padding:22px;display:flex;flex-direction:column;flex:1}
.package-meta{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:15px 0;color:var(--muted);font-size:.88rem}
.package-meta span{display:flex;align-items:center;gap:7px}
.package-price{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-top:auto;padding-top:12px}
.package-price strong{font-size:1.45rem;color:var(--secondary)}
.package-actions{display:flex;gap:9px;margin-top:16px}
.slot-meter{height:8px;border-radius:999px;background:#e6eeef;overflow:hidden}
.slot-meter span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),var(--gold));width:50%}
.badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-size:.78rem;font-weight:800;white-space:nowrap}
.badge-success{background:#dcf5e9;color:#0b7a50}
.badge-warning{background:#fff1d8;color:#9a5b04}
.badge-danger{background:#ffe4e4;color:#ad2c2c}
.badge-info{background:#e1edff;color:#245ba6}
.badge-neutral{background:#edf2f3;color:#51656b}

/* Alternating benefit rows */
.benefit-stack{display:grid;gap:28px}
.benefit-row{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:42px;padding:36px;border-radius:28px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.benefit-row:nth-child(even) .benefit-visual{order:2}
.benefit-visual{min-height:300px;border-radius:24px;overflow:hidden;background:linear-gradient(145deg,var(--secondary),var(--primary-dark));position:relative;display:grid;place-items:center;color:#fff}
.benefit-visual img{width:100%;height:100%;object-fit:cover}
.visual-icon{font-size:5rem;filter:drop-shadow(0 12px 25px rgba(0,0,0,.2))}
.check-list{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:11px}
.check-list li{display:flex;align-items:flex-start;gap:10px}
.check-list i{color:var(--success);margin-top:5px}

/* Horizontal carousel */
.cards-carousel{padding-bottom:58px}
.cards-carousel .carousel-slide{padding:4px 12px}
.cards-carousel .carousel-controls{bottom:2px;width:100%;padding-inline:12px}
.cards-carousel .carousel-button{background:#fff;color:var(--secondary);border-color:var(--line);box-shadow:var(--shadow-sm)}
.cards-carousel .carousel-dot{background:#bed2d4}
.cards-carousel .carousel-dot.active{background:var(--primary)}

/* Testimonials */
.testimonial-card{padding:32px;min-height:280px;display:flex;flex-direction:column}
.quote-icon{font-size:2.2rem;color:var(--gold);line-height:1}
.testimonial-author{display:flex;align-items:center;gap:13px;margin-top:auto;padding-top:20px}
.avatar{width:52px;height:52px;border-radius:50%;object-fit:cover;background:var(--primary-soft);display:grid;place-items:center;font-weight:900;color:var(--primary-dark)}
.stars{color:#e0a628;letter-spacing:2px}

/* CTA */
.cta-band{position:relative;overflow:hidden;border-radius:32px;padding:50px;background:linear-gradient(135deg,var(--secondary),#0b7180);color:#fff;box-shadow:var(--shadow)}
.cta-band::before,.cta-band::after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.08)}
.cta-band::before{width:320px;height:320px;right:-110px;top:-150px}
.cta-band::after{width:190px;height:190px;left:-80px;bottom:-100px}
.cta-content{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:28px}
.cta-content h2{color:#fff}

/* News */
.news-card{overflow:hidden}
.news-image{aspect-ratio:16/9;overflow:hidden;background:var(--surface-3)}
.news-image img{width:100%;height:100%;object-fit:cover}
.news-content{padding:22px}
.news-meta{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:.84rem;margin-bottom:10px}

/* Footer */
.site-footer{background:#062f3b;color:rgba(255,255,255,.82);padding:60px 0 20px}
.footer-grid{display:grid;grid-template-columns:1.4fr .8fr .9fr 1.2fr;gap:34px}
.footer-logo{background:#fff;border-radius:16px;padding:8px 14px;width:230px;margin-bottom:18px}
.footer-title{color:#fff;font-size:1rem;margin-bottom:14px}
.footer-links{display:grid;gap:9px}
.footer-links a:hover{color:#7ce0d4}
.footer-contact{display:grid;gap:11px}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:38px;padding-top:18px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:.86rem}

/* WhatsApp */
.whatsapp-float{position:fixed;right:20px;bottom:20px;z-index:120;display:flex;align-items:end;gap:12px}
.whatsapp-card{width:300px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 20px 60px rgba(0,0,0,.2);overflow:hidden;opacity:0;transform:translateY(12px) scale(.96);pointer-events:none;transition:.22s}
.whatsapp-float.open .whatsapp-card{opacity:1;transform:none;pointer-events:auto}
.whatsapp-card-head{background:linear-gradient(135deg,#0e9f6e,#087f5b);color:#fff;padding:18px;display:flex;align-items:center;gap:12px}
.whatsapp-card-head img{width:52px;height:52px;border-radius:50%;object-fit:cover;border:3px solid rgba(255,255,255,.75)}
.whatsapp-card-body{padding:18px}
.whatsapp-bubble{width:64px;height:64px;border:0;border-radius:50%;display:grid;place-items:center;background:#22c55e;color:#fff;font-size:1.9rem;box-shadow:0 14px 34px rgba(34,197,94,.4);animation:floatPulse 2.6s infinite}
@keyframes floatPulse{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}

/* Inner pages */
.page-hero{padding:78px 0;background:linear-gradient(135deg,var(--secondary),#0a7280);color:#fff;position:relative;overflow:hidden}
.page-hero::after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-130px;top:-220px;background:rgba(255,255,255,.08)}
.page-hero h1{font-size:clamp(2.2rem,4.6vw,4rem)}
.breadcrumb{display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:rgba(255,255,255,.8);font-size:.9rem;margin-bottom:14px}
.filter-bar{display:grid;grid-template-columns:2fr repeat(3,1fr) auto;gap:12px;padding:18px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-sm);margin-bottom:28px}
.form-control,.form-select,.form-textarea{width:100%;border:1px solid #cddcde;border-radius:12px;padding:11px 13px;background:#fff;color:var(--ink);outline:none;min-height:46px}
.form-textarea{min-height:120px;resize:vertical}
.form-control:focus,.form-select:focus,.form-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(10,168,155,.12)}
.form-label{font-weight:800;display:block;margin-bottom:7px;color:#28464f}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.form-group{min-width:0}
.form-help{font-size:.83rem;color:var(--muted);margin-top:5px}
.form-card{padding:30px}
.auth-shell{min-height:calc(100vh - 118px);display:grid;grid-template-columns:1.05fr .95fr;background:var(--surface-2)}
.auth-visual{background:linear-gradient(rgba(4,46,57,.72),rgba(4,46,57,.85)),url('../images/as-hero-kaaba.jpg') center/cover;display:flex;align-items:end;padding:56px;color:#fff}
.auth-panel{display:grid;place-items:center;padding:42px 22px}
.auth-card{width:min(510px,100%);background:#fff;border:1px solid var(--line);border-radius:26px;padding:34px;box-shadow:var(--shadow)}
.auth-brand{width:230px;margin:0 auto 24px}
.notice{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:13px;background:var(--primary-soft);color:#185e5b;border:1px solid #c7ece7;margin-bottom:18px}
.detail-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.7fr);gap:30px;align-items:start}
.detail-card{padding:28px}
.sticky-card{position:sticky;top:104px}
.info-list{display:grid;gap:12px}
.info-row{display:flex;justify-content:space-between;gap:20px;padding-bottom:12px;border-bottom:1px dashed var(--line)}

/* Tables */
.table-card{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-sm);overflow:hidden}
.table-toolbar{padding:18px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.table-responsive{overflow:auto}
table{width:100%;border-collapse:collapse;min-width:760px}
th,td{padding:15px 16px;text-align:left;border-bottom:1px solid #e7eeee;vertical-align:middle}
th{background:#f4f8f8;color:#496169;font-size:.81rem;text-transform:uppercase;letter-spacing:.055em;white-space:nowrap}
td{font-size:.92rem}
tbody tr:hover{background:#f9fcfc}
.table-actions{display:flex;gap:7px;flex-wrap:wrap}
.empty-state{text-align:center;padding:48px 20px;color:var(--muted)}
.empty-state i{font-size:2.4rem;color:#a9babc;margin-bottom:10px}

/* Modal */
.modal{position:fixed;inset:0;z-index:200;display:none;place-items:center;padding:20px;background:rgba(3,28,35,.65);backdrop-filter:blur(5px)}
.modal.open{display:grid}
.modal-dialog{width:min(720px,100%);max-height:92vh;background:#fff;border-radius:22px;box-shadow:0 30px 90px rgba(0,0,0,.35);overflow:hidden;display:flex;flex-direction:column}
.modal-lg{width:min(930px,100%)}
.modal-header{padding:20px 24px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:14px}
.modal-header h3{margin:0}
.modal-close{width:39px;height:39px;border:0;border-radius:10px;background:#edf2f3;color:var(--secondary)}
.modal-body{padding:24px;overflow:auto}
.modal-footer{padding:16px 24px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}

/* Notifications */
.toast-container{position:fixed;top:92px;right:20px;z-index:300;display:grid;gap:10px;width:min(380px,calc(100% - 40px))}
.toast{display:flex;align-items:flex-start;gap:11px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px;box-shadow:var(--shadow);animation:toastIn .28s ease}
.toast.success{border-left:5px solid var(--success)}
.toast.error{border-left:5px solid var(--danger)}
.toast.warning{border-left:5px solid var(--warning)}
@keyframes toastIn{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:none}}

/* Panel */
.panel-body{background:#f1f6f6;min-height:100vh}
.panel-shell{display:grid;grid-template-columns:270px minmax(0,1fr);min-height:100vh}
.sidebar{position:sticky;top:0;height:100vh;background:#063b49;color:#d8e9eb;padding:20px 14px;overflow-y:auto;z-index:90}
.sidebar-brand{display:flex;align-items:center;gap:11px;background:#fff;border-radius:16px;padding:10px;margin:0 4px 22px}
.sidebar-brand img{height:46px;width:auto;object-fit:contain;max-width:180px}
.sidebar-section{font-size:.72rem;text-transform:uppercase;letter-spacing:.11em;color:#83aeb5;padding:15px 13px 8px;font-weight:800}
.sidebar-nav{display:grid;gap:4px}
.sidebar-nav a{display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:12px;font-weight:700;font-size:.92rem;color:#d8e9eb}
.sidebar-nav a i{width:20px;text-align:center;color:#79cfc4}
.sidebar-nav a:hover,.sidebar-nav a.active{background:rgba(255,255,255,.12);color:#fff}
.sidebar-footer{margin-top:22px;border-top:1px solid rgba(255,255,255,.12);padding:18px 8px}
.panel-main{min-width:0}
.panel-topbar{height:78px;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:70;backdrop-filter:blur(12px)}
.panel-title h1{font-size:1.32rem;margin:0}
.panel-title p{font-size:.82rem;color:var(--muted);margin:2px 0 0}
.panel-user{display:flex;align-items:center;gap:12px}
.panel-user .avatar{width:42px;height:42px}
.sidebar-toggle{display:none;width:42px;height:42px;border:0;border-radius:11px;background:var(--surface-3);color:var(--secondary);font-size:1.1rem}
.panel-content{padding:28px}
.dashboard-hero{position:relative;overflow:hidden;border-radius:26px;background:linear-gradient(135deg,#0b5668,#0aa89b);color:#fff;padding:34px;margin-bottom:26px;box-shadow:var(--shadow)}
.dashboard-hero::after{content:"";position:absolute;width:300px;height:300px;border-radius:50%;right:-70px;top:-130px;background:rgba(255,255,255,.11)}
.dashboard-hero-content{position:relative;z-index:2;max-width:760px}
.dashboard-hero h2{color:#fff;margin-bottom:8px}
.dashboard-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:24px}
.stat-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:21px;box-shadow:var(--shadow-sm);display:flex;justify-content:space-between;gap:16px}
.stat-label{color:var(--muted);font-size:.86rem;font-weight:700}
.stat-value{font-size:1.7rem;font-weight:900;color:var(--secondary);line-height:1.2;margin-top:5px}
.stat-icon{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary-dark);font-size:1.25rem;flex:none}
.panel-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:22px}
.panel-card{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-sm)}
.panel-card-head{padding:19px 21px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}
.panel-card-head h3{margin:0;font-size:1.05rem}
.panel-card-body{padding:21px}
.activity-list{display:grid;gap:14px}
.activity-item{display:flex;align-items:flex-start;gap:12px}
.activity-dot{width:11px;height:11px;border-radius:50%;background:var(--primary);margin-top:7px;box-shadow:0 0 0 5px var(--primary-soft)}
.progress-row{margin-bottom:17px}
.progress-head{display:flex;justify-content:space-between;gap:14px;font-size:.88rem;margin-bottom:7px}
.progress{height:9px;background:#e9f0f1;border-radius:99px;overflow:hidden}
.progress span{display:block;height:100%;background:linear-gradient(90deg,var(--primary),var(--gold));border-radius:inherit}
.chart-bars{height:220px;display:flex;align-items:end;gap:12px;padding-top:20px}
.chart-bar-item{flex:1;display:flex;flex-direction:column;justify-content:end;align-items:center;gap:8px;height:100%;min-width:28px}
.chart-bar{width:min(46px,80%);border-radius:9px 9px 3px 3px;background:linear-gradient(180deg,var(--primary),var(--primary-dark));min-height:8px}
.chart-label{font-size:.72rem;color:var(--muted);white-space:nowrap}
.mobile-overlay{display:none}

/* Report / receipt */
.report-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:24px}
.receipt-preview{border:1px dashed #b5c9cc;border-radius:16px;padding:18px;background:#f8fbfb;text-align:center}
.receipt-preview img{max-height:210px;margin:auto;border-radius:10px}
.merch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.merch-card{overflow:hidden}
.merch-image{aspect-ratio:1.2;background:linear-gradient(145deg,#e4f7f4,#fff3da);display:grid;place-items:center;font-size:4rem;color:var(--secondary)}
.merch-content{padding:20px}
.order-summary{padding:18px;background:var(--surface-2);border-radius:14px;display:grid;gap:10px}
.order-line{display:flex;justify-content:space-between;gap:16px}

/* Responsive */
@media(max-width:1100px){
  .main-nav{position:fixed;left:16px;right:16px;top:84px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:12px;display:none;flex-direction:column;align-items:stretch}
  .main-nav.open{display:flex}
  .mobile-toggle{display:grid;place-items:center}
  .header-actions .btn-outline{display:none}
  .hero-side-card{display:none}
  .grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-grid{grid-template-columns:1.3fr 1fr 1fr}
  .footer-grid>div:last-child{grid-column:1/-1}
  .filter-bar{grid-template-columns:1fr 1fr 1fr}
  .filter-bar .search-wide{grid-column:1/-1}
  .panel-shell{grid-template-columns:1fr}
  .sidebar{position:fixed;left:-285px;width:270px;transition:.25s;box-shadow:20px 0 50px rgba(0,0,0,.22)}
  .panel-shell.sidebar-open .sidebar{left:0}
  .sidebar-toggle{display:grid;place-items:center}
  .mobile-overlay{position:fixed;inset:0;background:rgba(0,0,0,.48);z-index:80}
  .panel-shell.sidebar-open .mobile-overlay{display:block}
  .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:820px){
  body{font-size:15px}
  .section{padding:62px 0}
  .top-strip .container{justify-content:center;text-align:center}
  .top-strip-links{display:none}
  .hero-carousel,.hero-slide{min-height:610px}
  .hero-slide::before{background:linear-gradient(90deg,rgba(5,37,48,.96),rgba(5,53,63,.79))}
  .hero-content{padding:82px 0 122px}
  .hero-title{font-size:clamp(2.15rem,9.5vw,3.6rem)}
  .grid-3,.grid-2{grid-template-columns:1fr}
  .benefit-row{grid-template-columns:1fr;padding:24px;gap:25px}
  .benefit-row:nth-child(even) .benefit-visual{order:0}
  .benefit-visual{min-height:230px}
  .cta-band{padding:34px 24px}
  .cta-content{align-items:flex-start;flex-direction:column}
  .footer-grid{grid-template-columns:1fr 1fr}
  .auth-shell{grid-template-columns:1fr}
  .auth-visual{display:none}
  .detail-layout{grid-template-columns:1fr}
  .sticky-card{position:static}
  .form-grid{grid-template-columns:1fr}
  .filter-bar{grid-template-columns:1fr 1fr}
  .filter-bar .search-wide{grid-column:1/-1}
  .panel-grid{grid-template-columns:1fr}
  .merch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .report-summary{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .container{width:min(100% - 22px,1180px)}
  .header-inner{min-height:68px}
  .brand img{height:44px;max-width:185px}
  .header-actions .btn-primary{display:none}
  .hero-carousel,.hero-slide{min-height:640px}
  .hero-content{padding:75px 0 130px}
  .hero-meta{gap:7px}
  .hero-pill{font-size:.82rem;padding:7px 9px}
  .hero-price{align-items:flex-start;flex-direction:column;gap:5px}
  .hero-actions .btn{width:100%}
  .carousel-controls{bottom:18px}
  .grid-4{grid-template-columns:1fr}
  .package-actions{flex-direction:column}
  .package-actions .btn{width:100%}
  .section-header{align-items:flex-start;flex-direction:column}
  .footer-grid{grid-template-columns:1fr}
  .whatsapp-card{position:absolute;right:0;bottom:76px;width:min(300px,calc(100vw - 32px))}
  .whatsapp-float{right:15px;bottom:15px}
  .filter-bar{grid-template-columns:1fr}
  .filter-bar .search-wide{grid-column:auto}
  .auth-panel{padding:24px 12px}
  .auth-card{padding:24px 18px}
  .page-hero{padding:56px 0}
  .panel-topbar{padding:0 15px;height:70px}
  .panel-user-copy{display:none}
  .panel-content{padding:16px}
  .dashboard-hero{padding:26px 20px}
  .stat-grid{grid-template-columns:1fr}
  .stat-card{padding:17px}
  .table-toolbar{align-items:stretch;flex-direction:column}
  .table-toolbar>*{width:100%}
  .merch-grid{grid-template-columns:1fr}
  .report-summary{grid-template-columns:1fr}
  .modal{padding:8px}
  .modal-dialog{max-height:96vh;border-radius:16px}
  .modal-body{padding:18px}
  .form-card{padding:20px}
  .cta-content .btn{width:100%}
}
@media print{
  .site-header,.top-strip,.site-footer,.whatsapp-float,.sidebar,.panel-topbar,.btn,.table-toolbar,.no-print{display:none!important}
  .panel-shell{display:block}
  .panel-content,.section{padding:0}
  body{background:#fff;color:#000;font-size:11pt}
  .card,.table-card,.panel-card,.stat-card{box-shadow:none;border:1px solid #bbb;break-inside:avoid}
  table{min-width:0}
  th,td{padding:8px;font-size:9pt}
}

/* === 2026 visual refresh === */
body{background:linear-gradient(180deg,#f8fbfb 0%,#f4f7f8 30%,#fbfcfd 100%)}
.section-soft{background:linear-gradient(180deg,#f4fbfa 0%,#ffffff 100%)}
.site-header{backdrop-filter:blur(12px);background:rgba(255,255,255,.92)}
.brand img{height:56px;max-width:250px}
.site-footer{position:relative;overflow:hidden;background:linear-gradient(135deg,#042d39,#0a5567 58%,#0db4a4);color:#eefafa}
.site-footer::before{content:"";position:absolute;inset:auto -12% 46% auto;width:380px;height:380px;border-radius:50%;background:rgba(255,255,255,.05)}
.footer-logo{background:rgba(255,255,255,.96);display:inline-flex;padding:10px 16px;border-radius:18px;box-shadow:0 18px 40px rgba(0,0,0,.16)}
.footer-logo img{height:52px}
.footer-links a,.footer-contact a{color:#eaf6f6}
.footer-bottom{border-top-color:rgba(255,255,255,.14)}

.page-hero{position:relative;overflow:hidden;background:linear-gradient(120deg,rgba(4,45,57,.94),rgba(8,92,106,.78)),url('../images/as-hero-dawn.jpg') center/cover}
.page-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 82% 20%,rgba(234,185,88,.28),transparent 20%),linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,0))}
.page-hero .container{position:relative;z-index:2}
.breadcrumb{margin-bottom:14px}
.breadcrumb a,.breadcrumb span,.page-hero p{color:rgba(255,255,255,.92)}
.page-hero h1{color:#fff}

.hero-carousel{border-bottom-left-radius:34px;border-bottom-right-radius:34px;overflow:hidden;box-shadow:0 30px 80px rgba(4,45,57,.16)}
.hero-slide::before{background:linear-gradient(90deg,rgba(3,27,36,.92) 0%,rgba(6,61,77,.72) 44%,rgba(8,61,77,.26) 72%,rgba(8,61,77,.15) 100%)}
.hero-slide::after{background:radial-gradient(circle at 80% 26%,rgba(245,198,94,.24),transparent 23%),linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,0))}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.72fr);gap:28px;align-items:center}
.hero-content{max-width:720px;padding:106px 0 138px}
.hero-title{line-height:1.02;text-shadow:0 8px 28px rgba(0,0,0,.25)}
.hero-content p{max-width:640px;color:rgba(255,255,255,.92);font-size:1.02rem}
.hero-card-preview{background:rgba(255,255,255,.96);color:var(--ink);border-radius:28px;box-shadow:0 35px 80px rgba(0,0,0,.3);overflow:hidden;backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.45)}
.hero-card-top{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:16px 18px;background:linear-gradient(180deg,#fff,#f4f8f9)}
.hero-chip{display:inline-flex;align-items:center;gap:8px;font-size:.84rem;font-weight:800;color:var(--secondary)}
.hero-card-image{aspect-ratio:1.35;background:#eef3f3;overflow:hidden}
.hero-card-image img{width:100%;height:100%;object-fit:cover;display:block}
.hero-card-body{padding:18px 18px 20px}
.hero-card-body h3{font-size:1.22rem;margin-bottom:14px}
.hero-info-grid{display:grid;gap:10px;font-size:.86rem;color:#56757d}
.hero-info-grid span{display:flex;gap:9px;align-items:flex-start}
.hero-info-grid i{color:var(--primary-dark);margin-top:2px;min-width:15px}
.hero-mini-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}
.hero-mini-stats>div{background:var(--surface-2);border-radius:16px;padding:12px 10px}
.hero-mini-stats small{display:block;color:var(--muted);margin-bottom:4px}
.hero-mini-stats strong{color:var(--secondary);font-size:.94rem}
.hero-side-card{width:340px;border-radius:26px;background:rgba(255,255,255,.94);border:1px solid rgba(255,255,255,.52);box-shadow:0 24px 80px rgba(0,0,0,.22)}
.hero-side-inner{display:grid;gap:16px}
.hero-side-profile{display:flex;gap:14px;align-items:center}
.hero-side-profile img{width:68px;height:68px;border-radius:50%;object-fit:cover;border:4px solid #fff;box-shadow:0 12px 30px rgba(6,61,77,.18)}
.info-list.compact{display:grid;gap:10px}
.hero-side-actions{display:grid;gap:10px;margin-top:2px}
.hero-side-actions .btn{width:100%}
.carousel-controls{bottom:26px}
.carousel-button{backdrop-filter:blur(12px);background:rgba(255,255,255,.92)}
.carousel-dot{background:rgba(255,255,255,.45)}
.carousel-dot.active{background:#fff;box-shadow:0 0 0 4px rgba(255,255,255,.18)}

.card,.table-card,.panel-card,.auth-card{border-color:#e7eeee;box-shadow:0 14px 40px rgba(6,61,77,.07)}
.package-card{overflow:hidden}
.package-image{position:relative}
.package-image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(5,37,48,.28) 100%)}
.package-image img{transition:transform .5s ease}
.package-card:hover .package-image img{transform:scale(1.06)}
.package-content h3{font-size:1.12rem;line-height:1.35}
.package-meta{row-gap:8px}
.package-price strong{font-size:1.38rem}
.news-card{overflow:hidden}
.news-image{aspect-ratio:1.35;overflow:hidden}
.news-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.news-card:hover .news-image img{transform:scale(1.05)}
.testimonial-card{position:relative;overflow:hidden}
.testimonial-card::before{content:"";position:absolute;right:-20px;top:-35px;width:120px;height:120px;border-radius:50%;background:rgba(10,168,155,.08)}
.quote-icon{color:var(--gold)}

.benefit-row{background:#fff;border:1px solid #ebf1f2}
.benefit-visual{position:relative;overflow:hidden;background:#dbeceb;padding:0}
.benefit-visual img{width:100%;height:100%;object-fit:cover;display:block}
.benefit-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,45,57,0) 35%,rgba(4,45,57,.14) 100%)}
.visual-label{position:absolute;left:16px;bottom:16px;background:rgba(255,255,255,.92);color:var(--secondary);padding:8px 12px;border-radius:999px;font-weight:800;font-size:.82rem;box-shadow:0 10px 30px rgba(4,45,57,.12)}

.auth-shell{box-shadow:0 30px 80px rgba(4,45,57,.12);border-radius:30px;overflow:hidden}
.auth-visual{background:linear-gradient(rgba(4,46,57,.52),rgba(4,46,57,.82)),url('../images/as-gallery-01.jpg') center/cover}
.auth-panel{background:linear-gradient(180deg,#f8fbfb,#ffffff)}

.whatsapp-card{background:#fff;border:1px solid #e7eeee;box-shadow:0 24px 60px rgba(6,61,77,.18)}
.whatsapp-bubble{box-shadow:0 18px 45px rgba(9,164,126,.38)}
.whatsapp-card-head img{object-fit:cover;background:#fff}

.sidebar{background:linear-gradient(180deg,#042d39,#0a4656 44%,#0d7e79)}
.sidebar-brand{box-shadow:0 16px 40px rgba(0,0,0,.14)}
.panel-topbar{box-shadow:0 12px 30px rgba(6,61,77,.05)}
.dashboard-hero{background:linear-gradient(135deg,rgba(5,66,81,.95),rgba(10,168,155,.88)),url('../images/as-gallery-04.jpg') center/cover}
.dashboard-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,0))}
.dashboard-hero::after{background:rgba(255,255,255,.12);box-shadow:0 0 0 70px rgba(255,255,255,.04)}
.table-card,.panel-card{overflow:hidden}
.table-card thead th, table thead th{background:#f5f9f9}
.form-card{box-shadow:0 18px 45px rgba(6,61,77,.08)}
.merch-card .merch-image{background:linear-gradient(145deg,rgba(10,168,155,.12),rgba(234,185,88,.18))}

@media(max-width:1100px){
  .hero-grid{grid-template-columns:1fr}
  .hero-card-preview{max-width:420px}
  .hero-content{padding-bottom:40px}
}
@media(max-width:820px){
  .hero-content{padding:82px 0 36px}
  .hero-card-preview{max-width:none}
  .page-hero{padding:60px 0}
}
@media(max-width:560px){
  .brand img{height:48px;max-width:210px}
  .hero-slide,.hero-carousel{min-height:700px}
  .hero-content{padding:76px 0 26px}
  .hero-card-top{padding:14px}
  .hero-card-body{padding:16px}
  .hero-mini-stats{grid-template-columns:1fr}
  .page-hero{border-bottom-left-radius:20px;border-bottom-right-radius:20px}
}

/* === July refresh v2 === */
:root{
  --hero-overlay-dark: rgba(4,34,44,.84);
  --hero-overlay-teal: rgba(8,88,103,.58);
}
.hero-carousel{background:#062b37}
.hero-slide{min-height:760px}
.hero-slide::before{background:linear-gradient(96deg,var(--hero-overlay-dark) 0%,rgba(4,53,67,.74) 38%,rgba(7,84,99,.32) 66%,rgba(7,84,99,.15) 100%)!important}
.hero-slide::after{content:"";position:absolute;inset:0;background:
  radial-gradient(circle at 84% 18%,rgba(255,255,255,.12),transparent 18%),
  radial-gradient(circle at 86% 18%,rgba(234,185,88,.16),transparent 28%),
  linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,0));}
.hero-content{padding-top:110px;padding-bottom:136px}
.hero-title span{display:inline-block;margin-top:8px;background:linear-gradient(135deg,#b8fbf3,#90ece3);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-meta{gap:14px;row-gap:12px}
.hero-pill{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.2);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.hero-price{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap}
.hero-price strong{font-size:clamp(2.2rem,4.8vw,4rem);line-height:.96;text-shadow:0 12px 25px rgba(0,0,0,.18)}
.hero-actions .btn{min-height:56px;padding-inline:26px;font-size:1rem;box-shadow:0 18px 40px rgba(0,0,0,.12)}
.hero-trust{gap:16px;row-gap:10px}
.hero-card-preview{transform:translateY(10px);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,251,252,.97));}
.hero-card-image{border-top:1px solid rgba(0,0,0,.04);border-bottom:1px solid rgba(0,0,0,.04)}
.hero-side-card{background:rgba(255,255,255,.98)}
.hero-side-profile h3{color:var(--secondary)!important;margin:0 0 6px;font-size:1.2rem;line-height:1.2}
.hero-side-profile p{margin:0;color:var(--muted)!important}
.info-row strong{color:var(--secondary)}
.slot-meter{background:#dceaea;height:12px;box-shadow:inset 0 1px 4px rgba(0,0,0,.05)}
.slot-meter span{background:linear-gradient(90deg,var(--primary),var(--gold))}

.carousel-controls{left:24px;right:24px;bottom:18px;align-items:center}
.carousel-buttons{gap:12px}
.carousel-button{width:58px;height:58px;border:none;background:#fff!important;color:var(--secondary)!important;box-shadow:0 18px 35px rgba(0,0,0,.18),inset 0 0 0 1px rgba(4,45,57,.08);font-size:1.12rem;transition:transform .2s ease, box-shadow .2s ease, background .2s ease}
.carousel-button:hover{transform:translateY(-2px);background:#f9fbfb!important;box-shadow:0 24px 46px rgba(0,0,0,.18),inset 0 0 0 1px rgba(4,45,57,.1)}
.carousel-button:active{transform:translateY(0)}
.carousel-dot{background:rgba(255,255,255,.5)}
.cards-carousel .carousel-controls{position:relative;left:auto;right:auto;bottom:auto;justify-content:space-between;margin-top:18px}
.cards-carousel .carousel-dots{justify-content:flex-end}
.cards-carousel .carousel-button{background:#fff!important}

.page-hero{padding:86px 0 82px;border-bottom-left-radius:28px;border-bottom-right-radius:28px;box-shadow:0 24px 70px rgba(4,45,57,.1)}
body[data-page="packages"] .page-hero{background:linear-gradient(120deg,rgba(4,45,57,.9),rgba(8,92,106,.65)),url('../images/as-gallery-04.jpg') center/cover}
body[data-page="package-detail"] .page-hero{background:linear-gradient(120deg,rgba(4,45,57,.9),rgba(8,92,106,.65)),url('../images/as-gallery-02.jpg') center/cover}
body[data-page="news"] .page-hero,body[data-page="news-detail"] .page-hero{background:linear-gradient(120deg,rgba(4,45,57,.9),rgba(8,92,106,.65)),url('../images/as-gallery-06.jpg') center/cover}
body[data-page="register"] .page-hero{background:linear-gradient(120deg,rgba(4,45,57,.9),rgba(8,92,106,.65)),url('../images/as-gallery-04.jpg') center/cover}
body[data-page="login"] .page-hero{background:linear-gradient(120deg,rgba(4,45,57,.9),rgba(8,92,106,.65)),url('../images/as-gallery-10.jpg') center/cover}
body[data-page="contact"] .page-hero{background:linear-gradient(120deg,rgba(4,45,57,.9),rgba(8,92,106,.65)),url('../images/as-hero-clocktower.jpg') center/cover}

.package-card,.news-card,.table-card,.panel-card,.form-card,.detail-card{border-radius:26px}
.package-card .package-image,.news-card .news-image{border-top-left-radius:26px;border-top-right-radius:26px}
.package-card:hover,.news-card:hover,.feature-card:hover,.panel-card:hover{transform:translateY(-3px);box-shadow:0 18px 44px rgba(6,61,77,.11)}
.package-card,.news-card,.feature-card,.panel-card,.table-card,.form-card{transition:transform .25s ease, box-shadow .25s ease}
.section-header{gap:18px}
.section-heading p,.section-header p{max-width:720px}
.feature-card{position:relative;overflow:hidden}
.feature-card::after{content:"";position:absolute;right:-28px;top:-28px;width:110px;height:110px;border-radius:50%;background:rgba(10,168,155,.08)}

.testimonial-card{padding-top:26px}
.testimonial-author .avatar{width:58px;height:58px;border:3px solid #fff;box-shadow:0 12px 24px rgba(6,61,77,.12);background:#fff}
.testimonial-card p{font-size:1rem}

.latest-news .news-card:nth-child(2n) .news-image::after{background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(4,45,57,.2) 100%)}
.dashboard-hero{border-radius:30px;overflow:hidden;box-shadow:0 26px 60px rgba(6,61,77,.12)}
.dashboard-hero-content{max-width:760px}
.panel-content{background:linear-gradient(180deg,#f6fbfb 0%,#fbfdfd 100%)}
.table-toolbar h3,.panel-card-head h3{color:var(--secondary)}
.sidebar-link{border-radius:14px}
.sidebar-link.active{box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 10px 28px rgba(0,0,0,.12)}
.mobile-toggle{box-shadow:0 14px 30px rgba(6,61,77,.12)}
.whatsapp-card{border-radius:20px}
.whatsapp-card-head{background:linear-gradient(135deg,#f6f9fb,#eef8f7)}

@media (max-width: 900px){
  .hero-slide{min-height:700px}
  .carousel-controls{left:14px;right:14px;bottom:14px}
  .carousel-button{width:52px;height:52px}
}
@media (max-width: 560px){
  .hero-content{padding-top:88px;padding-bottom:40px}
  .hero-slide{min-height:760px}
  .hero-title{font-size:clamp(2.45rem,14vw,4rem)}
  .hero-actions{display:grid;grid-template-columns:1fr;gap:10px}
  .hero-actions .btn{width:100%}
  .carousel-button{width:50px;height:50px}
  .hero-side-card{width:100%;max-width:none}
  .page-hero{padding:70px 0 66px}
}

/* === Live-ready layout refinements === */
.section{padding:64px 0}
.section-sm{padding:38px 0}
.section-header{margin-bottom:26px}
.cards-carousel{padding-bottom:0}
.cards-carousel .carousel-controls{position:relative;left:auto;right:auto;bottom:auto;transform:none;width:100%;padding-inline:4px;margin-top:22px}
.cards-carousel .carousel-slide{padding:4px}

/* Login visibility and actions */
.auth-visual{align-items:flex-end;min-height:720px;padding:64px;background-position:center}
.auth-promo{position:relative;z-index:2;max-width:720px;padding:34px;border-radius:26px;background:linear-gradient(135deg,rgba(3,38,49,.46),rgba(3,38,49,.16));border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(7px);box-shadow:0 24px 70px rgba(0,0,0,.18)}
.auth-visual h1{color:#fff!important;font-size:clamp(2.7rem,5.6vw,5.6rem);line-height:1.02;letter-spacing:-.04em;text-shadow:0 8px 30px rgba(0,0,0,.38)}
.auth-visual p{color:#fff!important;font-size:1.08rem;text-shadow:0 4px 18px rgba(0,0,0,.42)}
.auth-promo-points{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.auth-promo-points span{display:inline-flex;gap:8px;align-items:center;padding:9px 12px;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.2);color:#fff;font-size:.88rem;font-weight:700}
.auth-card [data-fill-login]{position:relative;z-index:3;pointer-events:auto}

/* Contact widget placed below hero */
.hero-admin-section{position:relative;background:linear-gradient(180deg,#eef8f7,#fff);padding:0 0 34px}
.hero-admin-section .container{position:relative;margin-top:-28px;z-index:12}
.hero-admin-section .hero-side-card{position:relative;right:auto;top:auto;transform:none;width:100%;padding:22px 24px;border-radius:26px;background:#fff;border:1px solid #dce8e9;box-shadow:0 22px 55px rgba(6,61,77,.13);color:var(--ink)}
.hero-contact-layout{display:grid;grid-template-columns:1.1fr 1.35fr auto;gap:24px;align-items:center}
.hero-contact-profile{display:flex;align-items:center;gap:16px;min-width:0}
.hero-contact-profile img{width:78px;height:78px;border-radius:22px;object-fit:cover;flex:none;border:4px solid #fff;box-shadow:0 12px 28px rgba(6,61,77,.14)}
.hero-contact-profile h3{margin:8px 0 4px;color:var(--secondary)!important;font-size:1.25rem}
.hero-contact-profile p{margin:0;color:var(--muted)}
.hero-contact-info{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.hero-contact-info>div{padding:13px 14px;border-radius:16px;background:var(--surface-2);border:1px solid #e4eeee;min-width:0}
.hero-contact-info span{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:.8rem;margin-bottom:5px}
.hero-contact-info strong{display:block;color:var(--secondary);overflow-wrap:anywhere}
.hero-contact-actions{display:grid;gap:9px;min-width:205px}
.hero-contact-actions .btn{width:100%}

/* Public page polish */
main>.section:nth-of-type(even):not(.section-deep){background:linear-gradient(180deg,#f8fbfb,#fff)}
.filter-bar{border-radius:22px;padding:16px;position:relative;z-index:2}
.detail-card,.form-card{box-shadow:0 18px 46px rgba(6,61,77,.08)}
.page-hero .breadcrumb{font-weight:700}
.page-hero p{max-width:740px}
.benefit-stack{gap:20px}
.benefit-row{padding:28px;gap:32px}
.benefit-visual{min-height:270px}
.cta-band{padding:40px 42px}

/* Panel campaign slider */
.panel-campaign{height:285px;border-radius:28px;margin-bottom:22px;box-shadow:0 24px 58px rgba(6,61,77,.16);background:var(--secondary)}
.panel-campaign .carousel-track,.panel-campaign-slide{height:100%}
.panel-campaign-slide{background-size:cover;background-position:center;display:flex;align-items:center}
.panel-campaign-copy{max-width:720px;padding:42px 46px;color:#fff;position:relative;z-index:2}
.panel-campaign-copy h2{color:#fff;font-size:clamp(1.9rem,3vw,3.1rem);margin:12px 0 10px;text-shadow:0 7px 22px rgba(0,0,0,.2)}
.panel-campaign-copy p{max-width:650px;color:rgba(255,255,255,.92)}
.panel-campaign .carousel-controls{bottom:18px;left:auto;right:22px;width:auto;transform:none;gap:14px}
.panel-campaign .carousel-button{width:42px;height:42px;font-size:.92rem}
.panel-campaign .carousel-dots{align-items:center}
.panel-content>.dashboard-hero{margin-top:0}
.panel-content{padding:24px}
.panel-card,.table-card,.stat-card{border-radius:22px}
.panel-card-head,.table-toolbar{padding:18px 20px}
.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.export-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-left:auto}
.btn-excel{background:#198754;color:#fff;border-color:#198754}
.btn-pdf{background:#c53e3e;color:#fff;border-color:#c53e3e}
.table-responsive{scrollbar-width:thin;scrollbar-color:#b6cecf transparent}
table{border-collapse:separate;border-spacing:0}
tbody tr:hover td{background:#f8fbfb}

/* Report page */
.report-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;border-radius:30px;padding:38px 42px;margin-bottom:22px;color:#fff;background:linear-gradient(135deg,rgba(4,45,57,.97),rgba(10,141,132,.88)),url('../images/as-gallery-04.jpg') center/cover;box-shadow:0 24px 60px rgba(6,61,77,.16)}
.report-hero h2{color:#fff;font-size:clamp(2rem,3.3vw,3.5rem);margin:10px 0}
.report-hero p{max-width:720px;color:rgba(255,255,255,.9)}
.report-hero-visual{width:130px;height:130px;border-radius:34px;display:grid;place-items:center;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.2);font-size:3.4rem}
.report-overview-grid{display:grid;grid-template-columns:.9fr 1.4fr;gap:22px}
.report-health-score{display:flex;align-items:center;gap:20px}
.report-ring{--value:0deg;width:118px;height:118px;border-radius:50%;display:grid;place-items:center;flex:none;background:conic-gradient(var(--primary) var(--value),#e5eeee 0);position:relative}
.report-ring::before{content:"";position:absolute;inset:13px;background:#fff;border-radius:50%}
.report-ring span{position:relative;z-index:2;font-size:1.45rem;font-weight:900;color:var(--secondary)}
.report-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:22px}
.report-mini-grid>div{padding:14px;border-radius:16px;background:var(--surface-2);border:1px solid var(--line)}
.report-mini-grid span{display:block;color:var(--muted);font-size:.78rem}
.report-mini-grid strong{display:block;color:var(--secondary);font-size:1.35rem;margin-top:4px}

/* Promotion tool */
.promotion-intro{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:32px 36px;margin-bottom:22px;border-radius:28px;background:linear-gradient(135deg,#073c4b,#0b9c91);color:#fff;box-shadow:0 22px 55px rgba(6,61,77,.15)}
.promotion-intro h2{color:#fff;font-size:clamp(2rem,3vw,3.2rem);margin:10px 0}
.promotion-intro p{max-width:760px;color:rgba(255,255,255,.9)}
.promotion-intro-icon{width:104px;height:104px;border-radius:28px;display:grid;place-items:center;background:rgba(255,255,255,.14);font-size:2.8rem;flex:none}
.promo-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:22px}
.input-action{display:grid;grid-template-columns:1fr auto;gap:10px}
.promo-caption{min-height:180px}
.promo-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}
.btn-whatsapp{background:#18a66d;color:#fff}
.btn-facebook{background:#3168b0;color:#fff}
.poster-card canvas{width:100%;height:auto;border-radius:18px;box-shadow:0 16px 40px rgba(6,61,77,.13)}
.promo-tip{padding:22px;border-radius:20px;background:var(--surface-2);border:1px solid var(--line)}
.promo-tip i{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary-dark);font-size:1.2rem;margin-bottom:14px}
.promo-tip h3{font-size:1.05rem}
.promo-tip p{margin:0;color:var(--muted)}
.referral-banner{background:linear-gradient(90deg,#fff7df,#f4fffc);border-bottom:1px solid #e5ecea;color:var(--secondary)}
.referral-banner .container{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-block:9px;font-size:.87rem}
.referral-banner a{color:var(--primary-dark);font-weight:800}

@media(max-width:1100px){
  .hero-contact-layout{grid-template-columns:1fr 1fr}
  .hero-contact-actions{grid-column:1/-1;grid-template-columns:1fr 1fr}
  .report-overview-grid,.promo-layout{grid-template-columns:1fr}
}
@media(max-width:820px){
  .section{padding:50px 0}.section-sm{padding:32px 0}
  .auth-visual{display:flex;min-height:410px;padding:24px;align-items:flex-end}
  .auth-promo{padding:24px}.auth-visual h1{font-size:clamp(2.25rem,10vw,3.6rem)}
  .hero-admin-section .container{margin-top:-18px}
  .hero-contact-layout{grid-template-columns:1fr}
  .hero-contact-info{grid-template-columns:1fr 1fr}
  .hero-contact-actions{grid-column:auto}
  .panel-campaign{height:315px}
  .panel-campaign-copy{padding:34px 28px 78px}
  .report-hero{grid-template-columns:1fr;padding:30px 28px}
  .report-hero-visual{display:none}
  .report-mini-grid{grid-template-columns:1fr}
  .promotion-intro{padding:28px}.promotion-intro-icon{display:none}
}
@media(max-width:560px){
  .section{padding:42px 0}.section-sm{padding:26px 0}
  .section-header{align-items:flex-start;margin-bottom:22px}
  .hero-admin-section{padding-bottom:24px}
  .hero-admin-section .hero-side-card{padding:18px}
  .hero-contact-profile{align-items:flex-start}.hero-contact-profile img{width:64px;height:64px;border-radius:18px}
  .hero-contact-info{grid-template-columns:1fr}
  .hero-contact-actions{grid-template-columns:1fr;min-width:0}
  .auth-shell{border-radius:0}.auth-visual{min-height:370px}.auth-promo-points{display:none}
  .panel-content{padding:14px}
  .panel-campaign{height:340px;border-radius:22px}
  .panel-campaign-copy{padding:28px 20px 82px}
  .panel-campaign .carousel-controls{left:18px;right:18px;justify-content:space-between;width:auto}
  .export-actions{width:100%;margin-left:0}.export-actions .btn{flex:1}
  .table-toolbar{align-items:stretch}
  .report-health-score{align-items:flex-start;flex-direction:column}
  .promotion-intro{padding:24px 20px}.promo-action-grid{grid-template-columns:1fr}.input-action{grid-template-columns:1fr}.input-action .btn{width:100%}
  .referral-banner .container{align-items:flex-start;flex-direction:column}
  .benefit-row{padding:22px}.benefit-visual{min-height:220px}
}

/* =========================================================
   SAMA TRAVEL — BRIGHT EXPERIENCE & CUSTOMER CHECKOUT
   ========================================================= */
:root{
  --primary:#0eaa9d;
  --primary-dark:#087f78;
  --primary-soft:#e8faf7;
  --secondary:#073f50;
  --secondary-2:#0a6070;
  --gold:#efbd55;
  --gold-soft:#fff7e3;
  --surface:#ffffff;
  --surface-2:#f6fbfa;
  --surface-3:#edf7f6;
  --line:#dceae9;
  --muted:#607880;
  --ink:#12333d;
  --shadow-sm:0 10px 28px rgba(13,91,94,.07);
  --shadow:0 24px 70px rgba(13,91,94,.12);
}
body{background:#fbfdfd;color:var(--ink)}
.section{padding:72px 0}
.section-sm{padding:36px 0}
.section-soft{background:linear-gradient(180deg,#f4fbfa 0%,#fbfdfd 100%)}
.section-deep{background:linear-gradient(135deg,#0a6470 0%,#10a99b 65%,#64cfc1 100%)}
.section-deep h2,.section-deep p,.section-deep li{color:#fff}
.site-header{background:rgba(255,255,255,.96);box-shadow:0 12px 30px rgba(12,76,83,.06)}
.main-nav a{color:#274b54}
.main-nav a:hover,.main-nav a.active{color:var(--primary-dark);background:var(--primary-soft)}
.btn-primary{background:linear-gradient(135deg,#11b4a5,#078d83);border-color:transparent;box-shadow:0 12px 28px rgba(14,170,157,.2)}
.btn-primary:hover{background:linear-gradient(135deg,#0da597,#087d76);transform:translateY(-1px)}
.btn-gold{background:linear-gradient(135deg,#f5ca67,#e9aa38);color:#3f3316;border-color:transparent}
.btn-glass{background:rgba(255,255,255,.16);color:#fff;border:1px solid rgba(255,255,255,.38);backdrop-filter:blur(14px)}
.btn-glass:hover{background:#fff;color:var(--secondary)}
.btn-whatsapp{background:#16b77a;color:#fff;border-color:#16b77a}
.btn-whatsapp:hover{background:#0e9c66;color:#fff}
.card,.panel-card,.table-card,.form-card{border:1px solid var(--line);box-shadow:var(--shadow-sm);background:#fff}
.card:hover{box-shadow:0 20px 48px rgba(13,91,94,.11)}
.eyebrow{background:var(--primary-soft);color:var(--primary-dark)}
.eyebrow.light{background:rgba(255,255,255,.18);color:#fff;border-color:rgba(255,255,255,.25)}

/* Public hero */
.hero-carousel,.hero-slide{min-height:720px}
.hero-slide::before{background:linear-gradient(92deg,rgba(4,45,57,.86) 0%,rgba(5,76,85,.66) 42%,rgba(6,101,105,.22) 76%,rgba(6,101,105,.08) 100%)!important}
.hero-slide::after{background:radial-gradient(circle at 82% 20%,rgba(255,231,173,.3),transparent 23%),linear-gradient(180deg,rgba(255,255,255,.08),transparent)}
.hero-grid{grid-template-columns:minmax(0,1.16fr) minmax(340px,.68fr);gap:42px}
.hero-content{padding:104px 0 120px}
.hero-title{font-size:clamp(3rem,5.5vw,5.6rem);line-height:.98;max-width:760px}
.hero-title span{color:#9df4e9}
.hero-content>p{font-size:1.08rem;line-height:1.75;max-width:650px}
.hero-card-preview{border-radius:32px;border:1px solid rgba(255,255,255,.62);box-shadow:0 34px 90px rgba(4,45,57,.3);transform:rotate(1deg);transition:.35s}
.hero-card-preview:hover{transform:rotate(0) translateY(-5px)}
.hero-card-image{aspect-ratio:1.45}
.hero-card-body{padding:22px}
.hero-mini-stats>div{background:linear-gradient(180deg,#f7fbfb,#eef8f7)}
.hero-actions{gap:12px}
.hero-actions .btn{min-height:58px;border-radius:16px}
.hero-admin-section{margin-top:-34px;position:relative;z-index:10}
.hero-side-card{position:static!important;transform:none!important;width:100%!important;max-width:none!important;padding:22px 28px!important;border-radius:26px!important;background:#fff!important;box-shadow:0 22px 55px rgba(13,91,94,.12)!important}
.hero-contact-layout{display:grid;grid-template-columns:1.2fr 1.4fr auto;align-items:center;gap:28px}
.hero-contact-profile{display:flex;align-items:center;gap:16px}.hero-contact-profile img{width:72px;height:72px;border-radius:22px;object-fit:cover;background:#fff;border:1px solid var(--line)}
.hero-contact-profile h3{margin:4px 0 3px;color:var(--secondary)}
.hero-contact-profile p{margin:0;color:var(--muted);font-size:.9rem}
.hero-contact-info{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.hero-contact-info>div{background:var(--surface-2);border:1px solid var(--line);border-radius:15px;padding:12px 14px}.hero-contact-info span{display:block;font-size:.75rem;color:var(--muted);margin-bottom:3px}.hero-contact-info strong{font-size:.87rem;color:var(--secondary)}
.hero-contact-actions{display:flex;gap:9px;flex-wrap:wrap}.hero-contact-actions .btn{white-space:nowrap}
.carousel-controls{bottom:20px}.carousel-button{background:#fff!important;color:var(--secondary)!important;border:1px solid rgba(7,63,80,.08)!important;box-shadow:0 14px 34px rgba(4,45,57,.16)!important}.carousel-button:hover{background:var(--primary-soft)!important;color:var(--primary-dark)!important}

/* More attractive WhatsApp floating */
.whatsapp-float{position:fixed;right:20px;bottom:20px;z-index:950;display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.whatsapp-launcher{display:flex;align-items:center;gap:10px}
.whatsapp-label{display:flex;flex-direction:column;background:#fff;border:1px solid #dbe8e6;border-radius:16px;padding:10px 14px;box-shadow:0 15px 38px rgba(7,73,72,.16);line-height:1.25;transition:.25s}
.whatsapp-label strong{font-size:.86rem;color:var(--secondary)}.whatsapp-label small{font-size:.72rem;color:var(--muted)}
.whatsapp-bubble{position:relative;width:68px;height:68px;border-radius:22px;border:4px solid #fff;background:linear-gradient(135deg,#24c987,#0ca76c);box-shadow:0 20px 42px rgba(12,167,108,.35);display:grid;place-items:center;overflow:visible;cursor:pointer}
.whatsapp-bubble img{width:100%;height:100%;border-radius:18px;object-fit:cover}.whatsapp-bubble>i{position:absolute;right:-4px;bottom:-3px;width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:#20bd79;color:#fff;border:3px solid #fff;font-size:.9rem}
.pulse-ring{position:absolute;inset:-7px;border:2px solid rgba(31,190,120,.5);border-radius:27px;animation:waPulse 1.8s infinite}
@keyframes waPulse{0%{transform:scale(.9);opacity:.8}70%{transform:scale(1.15);opacity:0}100%{opacity:0}}
.whatsapp-card{display:none;width:340px;border-radius:24px;overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:0 28px 76px rgba(5,64,68,.22)}
.whatsapp-float.open .whatsapp-card{display:block;animation:waCardIn .25s ease}.whatsapp-float.open .whatsapp-label{opacity:0;transform:translateX(10px);pointer-events:none}
@keyframes waCardIn{from{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:none}}
.whatsapp-card-head{display:flex;align-items:center;gap:12px;padding:17px;background:linear-gradient(135deg,#e8faf7,#f8fffd)}
.whatsapp-card-head img{width:48px;height:48px;border-radius:14px;object-fit:cover}.whatsapp-card-head strong{color:var(--secondary)}
.whatsapp-card-head .small{color:var(--muted);margin-top:3px}.online-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#1ac57e;margin-right:4px;box-shadow:0 0 0 4px rgba(26,197,126,.12)}
.whatsapp-close{margin-left:auto;width:34px;height:34px;border:0;border-radius:10px;background:#fff;color:var(--secondary);cursor:pointer}
.whatsapp-card-body{padding:20px}.whatsapp-greeting{font-weight:800;color:var(--secondary)}.whatsapp-card-body p{color:var(--muted);line-height:1.55}.whatsapp-quick{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0 18px}.whatsapp-quick span{font-size:.75rem;padding:7px 9px;background:var(--surface-2);border:1px solid var(--line);border-radius:999px;color:var(--secondary)}.whatsapp-card-body .btn{width:100%}

/* Customer Umrah landing */
.customer-hero{position:relative;overflow:hidden;padding:110px 0;background:linear-gradient(94deg,rgba(4,45,57,.9),rgba(5,104,103,.58)),url('../images/as-gallery-02.jpg') center/cover;color:#fff}
.customer-hero::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 12%,rgba(248,207,112,.32),transparent 24%)}
.customer-hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.15fr .72fr;gap:60px;align-items:center}
.customer-hero-copy h1{font-size:clamp(3rem,5.5vw,5.3rem);line-height:1.02;color:#fff;margin:17px 0}.customer-hero-copy p{font-size:1.1rem;max-width:680px;color:rgba(255,255,255,.9);line-height:1.75}
.customer-trust{display:flex;gap:14px;flex-wrap:wrap;margin-top:24px}.customer-trust span{background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.22);padding:9px 12px;border-radius:999px;font-size:.84rem}
.customer-hero-card{background:rgba(255,255,255,.97);color:var(--ink);padding:32px;border-radius:30px;box-shadow:0 35px 90px rgba(4,45,57,.32);border:1px solid rgba(255,255,255,.8)}
.customer-card-badge{display:inline-block;background:var(--gold-soft);color:#8d6517;padding:7px 11px;border-radius:999px;font-size:.75rem;font-weight:800}.customer-hero-card h2{margin:14px 0 6px}.customer-hero-card>p{color:var(--muted);font-size:.9rem}.form-select-lg{min-height:58px;font-weight:700}.customer-card-list{display:grid;gap:10px;margin-top:20px}.customer-card-list span{display:flex;align-items:center;gap:10px;color:#4d6870}.customer-card-list i{color:var(--primary)}.referral-note{margin-top:14px;padding:11px 13px;border-radius:12px;background:var(--primary-soft);color:var(--primary-dark);font-size:.85rem}.hidden{display:none!important}
.journey-strip{padding:30px 0;background:#fff}.journey-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.journey-grid>div{position:relative;display:grid;grid-template-columns:auto 1fr;column-gap:13px;row-gap:2px;align-items:center;padding:18px;background:var(--surface-2);border:1px solid var(--line);border-radius:20px}.journey-grid>div>span{position:absolute;right:14px;top:10px;font-size:1.7rem;font-weight:900;color:#dbe9e7}.journey-grid i{grid-row:1/3;width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:#fff;color:var(--primary-dark);box-shadow:var(--shadow-sm)}.journey-grid strong{color:var(--secondary)}.journey-grid small{color:var(--muted)}
.customer-benefit-panel{display:grid;grid-template-columns:1fr .85fr;gap:52px;align-items:center;padding:46px;background:linear-gradient(135deg,#f0fbf9,#fff8e9);border:1px solid var(--line);border-radius:34px;box-shadow:var(--shadow-sm)}.customer-benefit-image{height:440px;border-radius:26px;overflow:hidden;box-shadow:var(--shadow)}.customer-benefit-image img{width:100%;height:100%;object-fit:cover}.compact-grid{gap:12px;margin-top:24px}.mini-benefit{display:flex;gap:12px;align-items:center;padding:14px;background:#fff;border:1px solid var(--line);border-radius:16px}.mini-benefit i{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary-dark)}.mini-benefit span{display:flex;flex-direction:column}.mini-benefit small{color:var(--muted);margin-top:2px}.cta-band.bright{background:linear-gradient(135deg,#e4faf6,#fff4d9);color:var(--ink)}.cta-band.bright h2{color:var(--secondary)}.cta-band.bright p{color:var(--muted)}

/* Purchase form */
.purchase-page-hero{background:linear-gradient(110deg,rgba(4,45,57,.88),rgba(11,140,132,.62)),url('../images/as-gallery-04.jpg') center/cover!important}
.purchase-layout{display:grid;grid-template-columns:1.25fr .72fr;gap:28px;align-items:start}.purchase-form{padding:30px}.form-section-title{display:flex;gap:14px;align-items:flex-start;margin:8px 0 20px}.form-section-title:not(:first-child){margin-top:34px;padding-top:28px;border-top:1px solid var(--line)}.form-section-title>span{width:38px;height:38px;flex:none;border-radius:13px;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;font-weight:900}.form-section-title h2{font-size:1.15rem;margin:0}.form-section-title p{margin:3px 0 0;font-size:.85rem;color:var(--muted)}.form-span-2{grid-column:1/-1}.agreement{display:flex;gap:11px;align-items:flex-start;margin:22px 0;color:#587078;font-size:.88rem}.purchase-summary{overflow:hidden;padding:0}.purchase-summary-image{height:220px}.purchase-summary-image img{width:100%;height:100%;object-fit:cover}.purchase-summary-body{padding:24px}.info-row.highlight{background:var(--gold-soft);margin-inline:-8px;padding:12px 8px;border-radius:12px;border-bottom:0}.quick-purchase-box{margin-top:20px;padding:16px;background:var(--surface-2);border:1px solid var(--line);border-radius:16px}.quick-purchase-box h3{font-size:1rem}.quick-purchase-box form{display:grid;gap:9px}.quick-purchase-box .btn{width:100%}

/* Checkout */
.checkout-bg{background:linear-gradient(180deg,#edf8f7,#f9fcfc);min-height:100vh}.checkout-shell{display:grid;grid-template-columns:1.1fr .7fr;gap:26px;max-width:1120px;margin:auto}.checkout-heading{margin-bottom:20px}.checkout-heading h1{font-size:clamp(2.2rem,4vw,3.6rem)}.secure-badge{display:inline-flex;gap:7px;align-items:center;padding:7px 11px;border-radius:999px;background:#dcf8ee;color:#107a55;font-size:.78rem;font-weight:800}.checkout-card{padding:28px}.bank-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}.bank-grid label input{display:none}.bank-grid label span{display:flex;align-items:center;gap:10px;padding:14px;border:1px solid var(--line);border-radius:15px;cursor:pointer;font-weight:700;background:#fff}.bank-grid label input:checked+span{border-color:var(--primary);background:var(--primary-soft);box-shadow:0 0 0 3px rgba(14,170,157,.1)}.currency-input{display:flex;align-items:center;border:1px solid var(--line);border-radius:13px;background:#fff;overflow:hidden}.currency-input>span{padding:0 13px;font-weight:800;color:var(--secondary)}.currency-input .form-control{border:0;border-left:1px solid var(--line);border-radius:0}.secure-note{font-size:.76rem;color:var(--muted);margin:16px 0 0}.checkout-summary{padding:26px;position:sticky;top:110px}.checkout-logo img{height:52px}.qr-panel{display:flex;flex-direction:column;align-items:center;text-align:center;padding:18px;background:var(--surface-2);border:1px solid var(--line);border-radius:18px;margin-top:20px}.qr-panel canvas{max-width:100%;height:auto;border:9px solid #fff;border-radius:10px;box-shadow:var(--shadow-sm)}.qr-panel strong{margin-top:10px}.qr-panel small{color:var(--muted);max-width:240px}.checkout-share{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:12px}.payment-processing{position:fixed;inset:0;z-index:1200;background:rgba(4,45,57,.88);display:none;place-items:center;text-align:center;color:#fff;backdrop-filter:blur(8px)}.payment-processing.open{display:grid}.loader-ring{display:inline-block;width:64px;height:64px;border-radius:50%;border:6px solid rgba(255,255,255,.25);border-top-color:#fff;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.success-page{min-height:80vh;background:linear-gradient(180deg,#effbf8,#fff)}.success-shell{max-width:760px;margin:auto;text-align:center;background:#fff;border:1px solid var(--line);border-radius:32px;padding:40px;box-shadow:var(--shadow)}.success-icon{width:88px;height:88px;border-radius:28px;margin:0 auto 20px;display:grid;place-items:center;background:linear-gradient(135deg,#21c88b,#0a9f68);color:#fff;font-size:2.5rem;box-shadow:0 20px 42px rgba(20,177,116,.24)}.receipt-card{text-align:left;margin-top:28px;border:1px dashed #bfd5d3;border-radius:20px;padding:22px;background:#fbfdfd}.receipt-brand{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;border-bottom:1px solid var(--line);margin-bottom:10px}.receipt-brand img{height:45px}.receipt-brand span{font-weight:900;color:var(--secondary)}.success-actions{display:flex;justify-content:center;gap:10px;margin-top:24px}

/* Panel grouped nav + bright dashboards */
.panel-body{background:#f4f9f9}.panel-content{background:linear-gradient(180deg,#f5fbfa 0%,#fbfdfd 100%);padding:24px 28px 40px}.sidebar{background:linear-gradient(180deg,#073f50 0%,#075868 52%,#0a776f 100%);padding:18px 12px}.sidebar-role{margin:0 5px 10px;padding:12px 13px;border-radius:14px;background:rgba(255,255,255,.08);display:flex;justify-content:space-between;align-items:center;font-size:.72rem;color:#cde5e6}.sidebar-role strong{color:#ffe1a1}.sidebar-nav.grouped{gap:0}.nav-group{margin-bottom:5px}.sidebar-section{padding:10px 12px 5px;font-size:.66rem}.sidebar-nav a{padding:10px 12px;border-radius:12px}.sidebar-nav a.active{background:#fff;color:var(--secondary);box-shadow:0 12px 25px rgba(2,35,43,.17)}.sidebar-nav a.active i{color:var(--primary-dark)}.sidebar-footer{display:grid;gap:8px}.sidebar-footer .btn{width:100%;margin:0!important}.panel-topbar{background:rgba(255,255,255,.96);box-shadow:0 8px 26px rgba(12,76,83,.05)}.topbar-left,.panel-top-actions{display:flex;align-items:center;gap:14px}.panel-help{display:flex;gap:7px;align-items:center;padding:9px 12px;border-radius:12px;background:#e5f8ef;color:#0b8e5e;font-weight:800;font-size:.83rem}.panel-campaign{border-radius:30px;box-shadow:var(--shadow);margin-bottom:24px}.panel-campaign-slide{min-height:280px}.panel-campaign-copy{padding:44px}.panel-campaign-copy h2{font-size:clamp(2rem,3.2vw,3.4rem)}
.dashboard-hero{background:linear-gradient(105deg,rgba(8,93,102,.92),rgba(16,174,158,.75)),url('../images/as-gallery-04.jpg') center/cover;border-radius:28px}.stat-grid{gap:15px}.stat-card.premium{border:0;background:linear-gradient(145deg,#fff,#f5fbfa);box-shadow:0 15px 38px rgba(13,91,94,.09);border-radius:22px}.stat-card.premium.accent{background:linear-gradient(135deg,#0da99b,#087d76);color:#fff}.stat-card.premium.accent .stat-label,.stat-card.premium.accent .stat-value,.stat-card.premium.accent .stat-trend{color:#fff}.stat-trend{font-size:.68rem;color:#6c858b;margin-top:7px}.stat-trend i{color:#14ae86}.dashboard-quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:0 0 24px}.quick-action-card{display:flex;align-items:center;gap:12px;padding:17px;background:#fff;border:1px solid var(--line);border-radius:19px;box-shadow:var(--shadow-sm);transition:.25s}.quick-action-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.quick-action-card>i{margin-left:auto;color:#9cb1b5}.quick-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary-dark)}.quick-action-card div{display:flex;flex-direction:column}.quick-action-card strong{color:var(--secondary)}.quick-action-card small{font-size:.72rem;color:var(--muted);margin-top:3px}
.payment-workspace{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:26px 28px;background:linear-gradient(135deg,#e6faf7,#fff7e5);border:1px solid var(--line);border-radius:26px;margin-bottom:22px}.payment-workspace-intro h2{margin:5px 0}.payment-method-tabs{display:flex;gap:10px}.payment-method-tabs a{display:flex;align-items:center;gap:10px;padding:14px;background:#fff;border:1px solid var(--line);border-radius:16px;min-width:190px}.payment-method-tabs i{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary-dark)}.payment-method-tabs span{display:flex;flex-direction:column}.payment-method-tabs small{color:var(--muted);font-size:.7rem;margin-top:2px}.bank-info-card .bank-visual{display:flex;align-items:center;gap:14px;padding:18px;background:linear-gradient(135deg,#0d6874,#10a99b);color:#fff;border-radius:18px;margin-bottom:15px}.bank-visual>i{font-size:1.7rem}.bank-visual div{display:flex;flex-direction:column}.bank-visual small{opacity:.8}.payment-share-section{margin:22px 0}.payment-share-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.payment-share-card{padding:18px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(145deg,#fff,#f7fbfb)}.payment-share-head{display:flex;align-items:center;gap:11px}.payment-share-head .badge{margin-left:auto}.payment-share-head div{display:flex;flex-direction:column}.payment-share-head small{font-size:.7rem;color:var(--muted);margin-top:2px}.payment-avatar{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary-dark);font-weight:900}.payment-share-amount{display:flex;justify-content:space-between;margin:16px 0 10px}.payment-share-amount span{color:var(--muted);font-size:.82rem}.payment-share-amount strong{color:var(--secondary);font-size:1.15rem}.payment-link-box,.copy-field{display:flex}.payment-link-box input,.copy-field input{min-width:0;flex:1;border:1px solid var(--line);padding:10px;border-radius:11px 0 0 11px;background:#fff;color:#60777d}.payment-link-box button{width:42px;border:0;background:var(--secondary);color:#fff;border-radius:0 11px 11px 0}.payment-share-actions{display:flex;gap:8px;margin-top:10px}.payment-share-actions>*{flex:1}.qr-panel.large{margin:0 auto 18px}.modal-sm{max-width:480px}
.wallet-hero{display:grid;grid-template-columns:1fr .9fr;gap:30px;align-items:center;padding:34px;background:linear-gradient(135deg,#075b68,#0eaa9d 65%,#5bcbbd);color:#fff;border-radius:28px;box-shadow:var(--shadow);margin-bottom:22px}.wallet-hero h2{color:#fff;margin:8px 0}.wallet-hero>div>strong{display:block;font-size:clamp(2.8rem,5vw,4.8rem);line-height:1;color:#ffe5a6}.wallet-hero p{color:rgba(255,255,255,.82)}.wallet-withdraw-form{background:rgba(255,255,255,.95);padding:20px;border-radius:20px;color:var(--ink);display:grid;gap:10px}.wallet-withdraw-form label{font-size:.78rem;font-weight:800;color:var(--secondary)}.wallet-withdraw-form small{color:var(--muted);text-align:center}.money-in{color:#089563;font-weight:900}.money-out{color:#d85b5b;font-weight:900}

/* Responsive */
@media(max-width:1100px){.customer-hero-grid,.purchase-layout,.checkout-shell,.customer-benefit-panel{grid-template-columns:1fr}.customer-hero-card{max-width:620px}.journey-grid,.dashboard-quick-grid{grid-template-columns:repeat(2,1fr)}.hero-contact-layout{grid-template-columns:1fr}.hero-contact-info{grid-template-columns:repeat(3,1fr)}.payment-workspace{align-items:flex-start;flex-direction:column}.payment-share-grid{grid-template-columns:1fr}.wallet-hero{grid-template-columns:1fr}.checkout-summary{position:static}.customer-benefit-image{height:360px}}
@media(max-width:820px){.section{padding:54px 0}.customer-hero{padding:82px 0}.hero-slide{min-height:740px}.hero-grid{grid-template-columns:1fr}.hero-content{padding:80px 0 30px}.hero-card-preview{display:none}.hero-contact-info{grid-template-columns:1fr}.hero-contact-actions{display:grid;grid-template-columns:1fr 1fr}.journey-grid{grid-template-columns:1fr 1fr}.bank-grid{grid-template-columns:1fr}.panel-campaign-slide{min-height:250px}.panel-campaign-copy{padding:30px}.payment-method-tabs{width:100%;flex-wrap:wrap}.payment-method-tabs a{flex:1}.whatsapp-label{display:none}}
@media(max-width:560px){.container{width:min(100% - 22px,1180px)}.section{padding:44px 0}.customer-hero{padding:70px 0}.customer-hero-copy h1{font-size:2.55rem}.customer-hero-card{padding:22px}.journey-grid,.dashboard-quick-grid{grid-template-columns:1fr}.customer-benefit-panel{padding:24px}.customer-benefit-image{height:260px}.purchase-form{padding:20px}.purchase-layout{gap:18px}.form-span-2{grid-column:auto}.checkout-card,.checkout-summary{padding:20px}.checkout-share,.hero-contact-actions{grid-template-columns:1fr}.success-shell{padding:25px 18px}.success-actions{flex-direction:column}.whatsapp-float{right:12px;bottom:12px}.whatsapp-card{width:min(330px,calc(100vw - 24px))}.whatsapp-bubble{width:60px;height:60px}.panel-content{padding:14px}.panel-campaign-copy{padding:24px 20px}.payment-workspace{padding:22px}.payment-method-tabs{display:grid;grid-template-columns:1fr;width:100%}.payment-method-tabs a{min-width:0}.wallet-hero{padding:22px}.report-summary{grid-template-columns:1fr}.panel-help span{display:none}}
@media print{.site-header,.site-footer,.whatsapp-float,.top-strip,.no-print{display:none!important}.success-page{background:#fff}.success-shell{box-shadow:none;border:0}}
.customer-home-cta{padding-top:52px;padding-bottom:52px}.customer-home-panel{display:grid;grid-template-columns:.8fr 1.2fr;gap:38px;align-items:center;background:linear-gradient(135deg,#e9faf7,#fff6df);border:1px solid var(--line);border-radius:32px;padding:22px 42px 22px 22px;box-shadow:var(--shadow-sm)}.customer-home-image{height:300px;border-radius:24px;overflow:hidden}.customer-home-image img{width:100%;height:100%;object-fit:cover}.customer-home-panel h2{font-size:clamp(2rem,3.4vw,3.4rem);margin:10px 0}.customer-home-panel p{color:var(--muted);max-width:680px;line-height:1.7}@media(max-width:820px){.customer-home-panel{grid-template-columns:1fr;padding:20px}.customer-home-image{height:240px}}

/* === Portal v7: customer, support, payment detail and compact dashboard campaign === */
.sidebar-brand{justify-content:center;text-align:center;margin-inline:auto;max-width:230px}
.sidebar-brand img{display:block;margin:auto;max-width:100%;object-fit:contain}
.sidebar-role{text-align:center}
.panel-content>.panel-campaign{display:none!important}
.dashboard-welcome-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.72fr);gap:22px;align-items:stretch;margin-bottom:24px}
.dashboard-welcome-grid .dashboard-hero{margin-bottom:0;height:100%;min-height:310px;display:flex;align-items:center}
.dashboard-mini-wrap{min-height:310px;border-radius:28px;overflow:hidden;box-shadow:0 24px 60px rgba(5,61,72,.15);background:#fff}
.dashboard-mini-carousel,.dashboard-mini-carousel .carousel-track,.dashboard-mini-slide{height:100%;min-height:310px}
.dashboard-mini-slide{position:relative;background-size:cover;background-position:center;display:flex;align-items:flex-end;padding:24px;color:#fff}
.dashboard-mini-slide>div{position:relative;z-index:2}
.dashboard-mini-slide h3{color:#fff;font-size:1.28rem;margin:8px 0 5px;line-height:1.25}
.dashboard-mini-slide p{margin:0 0 14px;color:rgba(255,255,255,.88)}
.dashboard-mini-slide .badge{position:absolute;top:20px;left:20px}
.dashboard-mini-carousel .carousel-controls.mini{position:absolute;right:18px;bottom:16px;left:auto;width:auto}
.dashboard-mini-carousel .carousel-dots{padding:8px 10px;background:rgba(0,0,0,.24);border-radius:999px;backdrop-filter:blur(8px)}
.dashboard-mini-carousel .carousel-dot{width:8px;height:8px}

.link-button{border:0;background:none;padding:0;color:var(--primary-dark);cursor:pointer;text-align:left;font:inherit}
.link-button:hover{text-decoration:underline}.link-button.strong{font-weight:800;color:var(--secondary)}
.compact-select{min-width:155px;padding-block:8px}
.modal-wide{max-width:920px}
.booking-detail-head{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:24px}
.booking-detail-head h2{margin:5px 0 8px}
.payment-progress-ring{--value:0deg;width:100px;height:100px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--primary) var(--value),#e7efef 0);position:relative;flex:none}
.payment-progress-ring:after{content:"";position:absolute;inset:10px;background:#fff;border-radius:50%}
.payment-progress-ring span{position:relative;z-index:2;font-weight:900;color:var(--secondary);font-size:1.15rem}
.payment-summary-grid,.profile-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:24px}
.payment-summary-grid>div,.profile-stat-grid>div{padding:17px;border-radius:17px;background:linear-gradient(145deg,#f5fbfa,#fff);border:1px solid var(--line)}
.payment-summary-grid span,.profile-stat-grid span{display:block;color:var(--muted);font-size:.8rem;font-weight:700;margin-bottom:6px}
.payment-summary-grid strong,.profile-stat-grid strong{font-size:1.1rem;color:var(--secondary)}
.payment-record-list{display:grid;gap:12px}
.payment-record{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:18px;background:#fff}
.payment-record p,.payment-record small{margin:3px 0;color:var(--muted)}
.payment-seq{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:var(--primary-soft);color:var(--primary-dark);font-weight:900}
.profile-detail-grid{display:grid;grid-template-columns:260px minmax(0,1fr);gap:22px;margin-bottom:22px}
.profile-identity-card,.profile-info-card{border:1px solid var(--line);border-radius:24px;padding:24px;background:#fff}
.profile-identity-card{text-align:center;background:linear-gradient(145deg,#effcf9,#fff)}
.profile-big-avatar{width:90px;height:90px;margin:0 auto 14px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,var(--primary),var(--secondary));color:#fff;font-size:2.1rem;font-weight:900;box-shadow:0 16px 35px rgba(5,111,110,.22)}
.profile-identity-card h2{font-size:1.3rem;margin:0 0 5px}.profile-identity-card p{color:var(--muted)}

.support-layout{display:grid;grid-template-columns:360px minmax(0,1fr);gap:22px;align-items:start}
.ticket-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:20px}.ticket-header h2{margin:5px 0}
.ticket-thread{display:grid;gap:12px;max-height:420px;overflow:auto;padding:8px 4px 16px}
.ticket-message{max-width:82%;padding:15px 17px;border-radius:18px 18px 18px 5px;background:#f0f6f6;border:1px solid var(--line)}
.ticket-message.mine{margin-left:auto;background:var(--primary-soft);border-radius:18px 18px 5px 18px}
.ticket-message p{margin:5px 0 8px}.ticket-message small{color:var(--muted)}
.ticket-reply-actions{display:grid;grid-template-columns:220px 1fr;gap:12px;margin-top:12px}

.package-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.package-link-card{display:grid;grid-template-columns:180px minmax(0,1fr);gap:18px;padding:16px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(145deg,#fff,#f6fbfb)}
.package-link-card>img{width:100%;height:100%;min-height:180px;object-fit:cover;border-radius:16px}
.package-link-card h3{font-size:1.08rem;margin:7px 0 12px}
.short-link-box{display:flex;align-items:center;gap:8px;padding:9px;border-radius:12px;background:#fff;border:1px solid var(--line)}
.short-link-box code{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--primary-dark);font-weight:700}
.link-stats{display:flex;gap:18px;margin:12px 0;color:var(--muted);font-size:.84rem}.link-stats strong{color:var(--secondary)}

.customer-panel-purchase{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);gap:22px;align-items:start}
.purchase-help-card{overflow:hidden}.purchase-help-card img{width:100%;height:220px;object-fit:cover;border-radius:18px;margin-bottom:20px}
.points-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:34px;border-radius:28px;margin-bottom:22px;color:#fff;background:linear-gradient(135deg,#064b59,#10a797);box-shadow:0 24px 60px rgba(6,75,89,.18)}
.points-hero h2{color:#fff;margin:5px 0}.points-hero strong{display:block;font-size:3.2rem;color:#ffe9a3}.points-hero>i{font-size:5rem;color:rgba(255,255,255,.2)}
.points-orb{text-align:center;padding:15px}.points-orb i{font-size:2rem;color:var(--gold)}.points-orb strong{display:block;font-size:2.7rem;color:var(--secondary)}.points-orb span{color:var(--muted)}
.profile-form-wide{max-width:980px;margin:auto}

/* Homepage and hero polish */
.hero-carousel{box-shadow:0 32px 90px rgba(3,45,57,.16)}
.hero-slide::before{background:linear-gradient(90deg,rgba(3,32,43,.88),rgba(4,77,88,.56) 52%,rgba(4,77,88,.14))!important}
.hero-title{max-width:820px;letter-spacing:-.055em}.hero-content p{font-size:1.04rem;line-height:1.8}
.hero-pill{box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 10px 24px rgba(0,0,0,.1)}
.hero-card-preview{border:1px solid rgba(255,255,255,.7);box-shadow:0 32px 90px rgba(1,33,42,.35)}
.section{padding-block:72px}.section+.section{border-top:1px solid rgba(8,87,99,.045)}
.card,.panel-card,.table-card{box-shadow:0 15px 42px rgba(5,61,72,.07)}

@media(max-width:1100px){
 .dashboard-welcome-grid{grid-template-columns:1fr}.dashboard-mini-wrap{min-height:280px}.dashboard-mini-carousel,.dashboard-mini-carousel .carousel-track,.dashboard-mini-slide{min-height:280px}
 .support-layout,.customer-panel-purchase{grid-template-columns:1fr}.support-layout>form{order:0}
 .package-link-grid{grid-template-columns:1fr}
}
@media(max-width:760px){
 .payment-summary-grid,.profile-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-detail-grid{grid-template-columns:1fr}
 .package-link-card{grid-template-columns:1fr}.package-link-card>img{height:210px}
 .booking-detail-head{align-items:flex-start}.payment-progress-ring{width:82px;height:82px}
 .ticket-reply-actions{grid-template-columns:1fr}.ticket-message{max-width:94%}
 .section{padding-block:56px}
}
@media(max-width:520px){
 .payment-summary-grid,.profile-stat-grid{grid-template-columns:1fr}.payment-record{grid-template-columns:38px minmax(0,1fr)}.payment-record>div:last-child{grid-column:2}
 .dashboard-welcome-grid{gap:14px}.dashboard-mini-wrap{min-height:250px}.dashboard-mini-carousel,.dashboard-mini-carousel .carousel-track,.dashboard-mini-slide{min-height:250px}
 .points-hero{padding:25px}.points-hero strong{font-size:2.6rem}.points-hero>i{font-size:3.5rem}
}
.sidebar-brand{background:transparent!important;padding:0!important;box-shadow:none!important;width:100%}
.sidebar-brand img{width:min(100%,280px);height:auto!important;max-height:none!important;border-radius:18px}

/* =========================================================
   SAMA TRAVEL V8 — PAYMENT SPACING, REWARDS & PANEL POLISH
   ========================================================= */

/* FPX checkout spacing */
.checkout-card .form-group + .form-group{margin-top:26px}
.checkout-card .form-group + .btn,
.checkout-card .currency-input + .btn{margin-top:20px}
.checkout-card>button[type="submit"]{margin-top:20px}
.checkout-logo{display:flex;align-items:center;min-height:62px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.checkout-logo img{display:block;height:58px;max-width:240px;object-fit:contain}
.checkout-summary>h3{margin:0 0 18px;line-height:1.25}
.checkout-summary .info-list{margin-top:4px}

/* Every panel table receives comfortable visual separation */
.panel-content>.table-card~.table-card,
.panel-content>.panel-card~.table-card,
.panel-content>.table-card~.panel-card{margin-top:30px!important}
.panel-content .table-stack>.table-card+.table-card{margin-top:30px!important}
.table-card{isolation:isolate}

/* Clearer status badge colours */
.badge{font-weight:800;border:1px solid transparent;line-height:1.2;white-space:nowrap}
.badge-success{background:#d9f5e8;color:#08764c;border-color:#bee9d6}
.badge-warning{background:#fff0cf;color:#8b5300;border-color:#f2d394}
.badge-danger{background:#ffe1e3;color:#a61f2b;border-color:#f1bdc1}
.badge-info{background:#dceeff;color:#155e98;border-color:#bedcf5}
.badge-neutral{background:#edf3f4;color:#425d65;border-color:#d7e2e4}
.payment-summary-grid .badge-warning{background:#ffedc2;color:#805000;border-color:#e9c56e;padding:9px 13px}

/* All modals remain usable when the content is long */
.modal{overflow:hidden;padding:16px}
.modal-dialog{height:auto;max-height:calc(100dvh - 32px);min-height:0;overflow:hidden}
.modal-header,.modal-footer{flex:0 0 auto;background:#fff;position:relative;z-index:2}
.modal-body{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable}
.modal-body::-webkit-scrollbar{width:10px}
.modal-body::-webkit-scrollbar-thumb{background:#bfd3d5;border:3px solid #fff;border-radius:99px}
.modal-body::-webkit-scrollbar-track{background:#fff}

/* Customer reward catalogue */
.reward-catalog-section{margin:26px 0 30px}
.section-header.compact{margin-bottom:20px}
.reward-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.reward-card{position:relative;overflow:hidden;display:grid;grid-template-columns:92px minmax(0,1fr);gap:18px;align-items:start;padding:20px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(145deg,#fff 0%,#f4fbfa 100%);box-shadow:var(--shadow-sm);transition:transform .22s ease,box-shadow .22s ease}
.reward-card:hover{transform:translateY(-3px);box-shadow:0 20px 44px rgba(13,91,94,.12)}
.reward-card::after{content:"";position:absolute;width:130px;height:130px;border-radius:50%;right:-65px;top:-70px;background:rgba(14,170,157,.08)}
.reward-icon{width:92px;height:92px;border-radius:24px;display:grid;place-items:center;background:linear-gradient(145deg,#ddf8f4,#fff5d9);color:var(--primary-dark);font-size:2.1rem;box-shadow:inset 0 0 0 1px rgba(14,170,157,.09)}
.reward-card-body{position:relative;z-index:1;min-width:0}
.reward-card h3{font-size:1.05rem;margin:4px 0 7px;color:var(--secondary)}
.reward-card p{font-size:.84rem;color:var(--muted);margin:0 0 13px;line-height:1.55}
.reward-stock{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eef7f6;color:var(--primary-dark);font-size:.72rem;font-weight:800}
.reward-cost{display:flex;align-items:center;gap:6px;margin-bottom:13px;color:#9a6900}
.reward-cost i{color:#e6ae31}.reward-cost strong{font-size:1.18rem}.reward-cost span{font-size:.78rem;color:var(--muted)}
.reward-card .btn{width:100%;min-height:42px}
.reward-card .btn:disabled{opacity:.64;cursor:not-allowed;transform:none;box-shadow:none}

/* Admin reward report */
.reward-admin-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;margin-bottom:24px;padding:32px 36px;border-radius:28px;color:#fff;background:linear-gradient(135deg,#075464,#0fae9f 68%,#61ccbd);box-shadow:0 24px 60px rgba(6,75,89,.18);overflow:hidden;position:relative}
.reward-admin-hero::after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-80px;top:-130px;background:rgba(255,255,255,.11)}
.reward-admin-hero h2{color:#fff;margin:7px 0 8px}.reward-admin-hero p{margin:0;max-width:720px;color:rgba(255,255,255,.9)}
.reward-admin-icon{position:relative;z-index:1;width:110px;height:110px;border-radius:30px;display:grid;place-items:center;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.24);font-size:3.1rem;color:#fff2bd}
.reward-manage-summary{display:flex;gap:18px;align-items:center;padding:18px;margin-bottom:20px;border-radius:20px;background:linear-gradient(145deg,#f2fbfa,#fff8e7);border:1px solid var(--line)}
.reward-manage-summary .reward-icon{width:80px;height:80px;flex:0 0 auto}.reward-manage-summary h2{font-size:1.35rem;margin:6px 0}.reward-manage-summary p{margin:0;color:var(--muted)}

@media(max-width:1050px){
 .reward-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
 .checkout-card .form-group + .form-group{margin-top:22px}
 .checkout-logo{min-height:54px;margin-bottom:15px;padding-bottom:12px}.checkout-logo img{height:50px}
 .reward-grid{grid-template-columns:1fr}
 .reward-admin-hero{grid-template-columns:1fr;padding:26px 22px}.reward-admin-icon{display:none}
 .reward-card{grid-template-columns:76px minmax(0,1fr);padding:17px}.reward-icon{width:76px;height:76px;border-radius:20px;font-size:1.7rem}
 .modal{padding:8px}.modal-dialog{max-height:calc(100dvh - 16px);border-radius:16px}.modal-header{padding:16px 18px}.modal-body{padding:18px}.modal-footer{padding:13px 18px}
 .panel-content>.table-card~.table-card,.panel-content>.panel-card~.table-card,.panel-content>.table-card~.panel-card{margin-top:22px!important}
}
@media(max-width:440px){
 .reward-card{grid-template-columns:1fr}.reward-icon{width:68px;height:68px}.reward-card .btn{font-size:.84rem}
}
.panel-content .table-card+.table-card{margin-top:30px!important}
@media(max-width:700px){.panel-content .table-card+.table-card{margin-top:22px!important}}

/* ===== v9 public homepage + CTA + footer upgrades ===== */
.hero-admin-section{background:linear-gradient(180deg,#edf8f7 0%,#ffffff 100%)}
.hero-admin-section .hero-side-card{overflow:hidden;position:relative}
.hero-admin-section .hero-side-card::before{content:"";position:absolute;inset:auto -60px -80px auto;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(13,148,136,.12),rgba(13,148,136,0))}
.hero-contact-layout{display:grid;grid-template-columns:1.2fr 1.35fr auto;gap:26px;align-items:center}
.hero-contact-profile{align-items:flex-start}
.hero-contact-profile img{width:82px;height:82px;border-radius:24px;border:4px solid #fff;box-shadow:0 14px 30px rgba(8,73,83,.16)}
.hero-contact-profile h3{font-size:1.35rem;margin:7px 0 6px}
.hero-contact-profile p{font-size:.96rem;line-height:1.7;max-width:540px}
.hero-contact-chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.hero-contact-chip{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;background:#f1fbf9;color:var(--secondary);font-size:.82rem;font-weight:700;border:1px solid #d2ece6}
.hero-contact-info{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.contact-info-card{background:linear-gradient(180deg,#f7fbfb,#edf5f5);border:1px solid #dbe8e8;border-radius:18px;padding:16px 16px;min-height:104px;display:flex;flex-direction:column;justify-content:center;box-shadow:0 10px 24px rgba(10,57,69,.05)}
.contact-info-card span{display:flex;align-items:center;gap:8px;color:#657d86;font-size:.82rem;margin-bottom:8px}
.contact-info-value{font-size:1.22rem;line-height:1.35;color:var(--secondary);overflow-wrap:anywhere}
.hero-contact-actions{display:grid;gap:12px;min-width:220px}.hero-contact-actions .btn{width:100%;justify-content:center}
.slot-meter,.progress{background:#e7f2f1;border-radius:999px;overflow:hidden;box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}
.slot-meter{height:10px}.progress{height:10px}
.slot-meter span,.progress span{display:block;height:100%;border-radius:inherit;box-shadow:0 6px 16px rgba(15,23,42,.12)}
.benefit-showcase{position:relative;overflow:hidden;border-radius:30px;min-height:420px;border:1px solid rgba(255,255,255,.16);box-shadow:0 26px 56px rgba(0,0,0,.18);background:rgba(255,255,255,.08)}
.benefit-showcase-image{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(1.04)}
.benefit-showcase::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(4,34,48,.16),rgba(4,34,48,.42))}
.benefit-floating-card{position:absolute;left:24px;right:24px;bottom:24px;z-index:2;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.55);border-radius:24px;padding:20px 22px;color:var(--ink);box-shadow:0 16px 40px rgba(7,38,51,.18)}
.benefit-floating-card strong{display:block;font-size:1.32rem;color:var(--secondary);margin:4px 0 8px}
.benefit-floating-card p{margin:0;color:var(--muted);line-height:1.7}
.benefit-floating-pills{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.benefit-floating-pills span{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:999px;background:#eef8f7;color:var(--secondary);font-size:.82rem;font-weight:700}
.testimonial-card{background:linear-gradient(180deg,#ffffff,#fbfdfd);border-radius:28px;box-shadow:0 16px 34px rgba(6,61,77,.08)}
.testimonial-author .avatar{width:64px;height:64px;border-radius:50%;object-fit:cover;border:3px solid #fff;box-shadow:0 12px 28px rgba(6,61,77,.14)}
.site-cta-section{padding:20px 0 0;background:linear-gradient(180deg,rgba(255,255,255,0),#f7fbfb 24%,#f1f7f7 100%)}
.site-cta-shell{position:relative;overflow:hidden;background:linear-gradient(135deg,#063e4c,#0d7a8b 62%,#18a999);border-radius:34px;padding:44px 46px;display:grid;grid-template-columns:1.6fr .95fr;gap:28px;box-shadow:0 30px 70px rgba(7,54,68,.22)}
.site-cta-shell::before,.site-cta-shell::after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.08)}
.site-cta-shell::before{width:320px;height:320px;right:-100px;top:-150px}
.site-cta-shell::after{width:180px;height:180px;left:-60px;bottom:-90px}
.site-cta-copy,.site-cta-stats{position:relative;z-index:2}
.site-cta-copy .eyebrow{background:rgba(255,255,255,.14);color:#d8fffa;border-color:rgba(255,255,255,.18)}
.site-cta-copy h2{color:#fff;font-size:clamp(2rem,3.5vw,3.2rem);line-height:1.12;margin:12px 0 14px}
.site-cta-copy p{color:rgba(255,255,255,.88);max-width:720px;line-height:1.8;margin:0}
.site-cta-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.site-cta-actions .btn{min-width:190px;justify-content:center}
.site-cta-stats{display:grid;gap:14px;align-content:center}
.cta-stat-chip{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);border-radius:22px;padding:18px 20px;backdrop-filter:blur(12px)}
.cta-stat-chip strong{display:block;color:#fff;font-size:1.2rem;margin-bottom:4px}.cta-stat-chip span{color:rgba(255,255,255,.8);font-size:.92rem}
.site-footer{position:relative;background:linear-gradient(135deg,#052f39,#0a5768 52%,#0ca59d);padding:34px 0 22px;color:rgba(255,255,255,.86);overflow:hidden}
.site-footer::before,.site-footer::after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.06)}
.site-footer::before{width:260px;height:260px;top:-80px;right:-90px}.site-footer::after{width:220px;height:220px;bottom:-120px;left:-70px}
.site-footer .container{position:relative;z-index:1}
.footer-top{display:grid;grid-template-columns:1.2fr .95fr;gap:22px;align-items:stretch;margin-bottom:28px}
.footer-brand-panel{display:flex;gap:22px;align-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:28px;padding:24px 26px;backdrop-filter:blur(10px)}
.footer-brand-panel h3{color:#fff;margin:6px 0 8px;font-size:1.5rem}.footer-brand-panel p{margin:0;color:rgba(255,255,255,.82);line-height:1.7}
.footer-logo{width:220px;min-width:220px;background:#fff;border-radius:18px;padding:10px 16px;box-shadow:0 10px 22px rgba(0,0,0,.12)}
.footer-quick-contact{display:grid;grid-template-columns:1fr;gap:12px}
.footer-quick-card{display:flex;align-items:center;gap:14px;padding:18px 20px;border-radius:22px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.12);color:#fff;backdrop-filter:blur(10px)}
.footer-quick-card i{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:rgba(255,255,255,.12);font-size:1.05rem}.footer-quick-card strong{display:block;color:#fff}.footer-quick-card span{color:rgba(255,255,255,.82);font-size:.92rem;overflow-wrap:anywhere}
.footer-main{display:grid;grid-template-columns:1.2fr .85fr .9fr 1fr;gap:30px;padding-top:10px}
.footer-title{color:#fff;font-size:1.05rem;margin-bottom:15px}.footer-copy{margin:0 0 12px;line-height:1.75;color:rgba(255,255,255,.84)}
.footer-links{display:grid;gap:10px}.footer-links a{color:#fff}.footer-links a:hover,.footer-quick-card:hover,.footer-contact a:hover{color:#dbfffb}
.footer-contact{display:grid;gap:11px}.footer-contact a,.footer-contact span{display:flex;gap:10px;align-items:flex-start;color:rgba(255,255,255,.9)}
.footer-branch-list{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.footer-branch-list span{padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.12);color:#fff;font-size:.87rem}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:28px;padding-top:18px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:.88rem;color:rgba(255,255,255,.8)}
@media(max-width:1100px){.hero-contact-layout{grid-template-columns:1fr}.hero-contact-info{grid-template-columns:repeat(3,1fr)}.hero-contact-actions{grid-template-columns:1fr 1fr;min-width:0}.site-cta-shell,.footer-top,.footer-main{grid-template-columns:1fr}.footer-brand-panel{align-items:flex-start}.footer-logo{width:200px;min-width:200px}}
@media(max-width:820px){.hero-contact-info{grid-template-columns:1fr}.hero-contact-actions{display:grid;grid-template-columns:1fr}.benefit-showcase{min-height:340px}.site-cta-shell{padding:34px 24px}.site-cta-actions{flex-direction:column}.site-cta-actions .btn{width:100%}.footer-brand-panel{flex-direction:column;align-items:flex-start;padding:22px}.footer-logo{width:100%;min-width:0}.footer-main{gap:22px}}
@media(max-width:560px){.hero-contact-profile img{width:68px;height:68px;border-radius:20px}.contact-info-card{min-height:0;padding:14px}.contact-info-value{font-size:1.05rem}.benefit-floating-card{left:16px;right:16px;bottom:16px;padding:18px}.site-cta-shell{border-radius:28px}.cta-stat-chip{padding:16px 18px}.footer-quick-card{padding:15px 16px}}


/* ===== v10 header, contact and animated hero refinement ===== */
.header-inner{gap:20px;min-height:86px}
.brand{flex:0 0 auto}
.brand img{height:58px;max-width:220px;object-fit:contain}
.main-nav-clean{display:flex;align-items:center;justify-content:center;gap:5px;flex:1;min-width:0}
.main-nav-clean a{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;padding:11px 12px;border-radius:13px;font-size:.88rem;font-weight:800;line-height:1;color:#31545d}
.main-nav-clean a i{font-size:.78rem;color:#789097;transition:.22s}
.main-nav-clean a:hover i,.main-nav-clean a.active i{color:var(--primary-dark)}
.header-actions{display:flex;align-items:center;gap:9px;flex:0 0 auto}
.header-actions .btn{min-height:46px;padding:10px 15px;border-radius:14px;white-space:nowrap;font-size:.88rem}
.header-actions .btn span{white-space:nowrap}

/* contact card: remove package card, preserve one-line email */
.hero-contact-layout-clean{grid-template-columns:minmax(330px,1.25fr) minmax(430px,1fr) auto;gap:24px}
.hero-contact-info-clean{grid-template-columns:minmax(155px,.72fr) minmax(270px,1.28fr);gap:14px}
.hero-contact-info-clean .contact-info-card{text-decoration:none;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.hero-contact-info-clean .contact-info-card:hover{transform:translateY(-2px);border-color:#b7ddd7;box-shadow:0 14px 30px rgba(10,91,94,.1)}
.contact-email-value{white-space:nowrap;overflow:visible;overflow-wrap:normal!important;word-break:normal!important;font-size:clamp(.88rem,1.05vw,1.08rem)!important;letter-spacing:-.015em}

/* title visibility and card legibility */
.hero-card-body{position:relative;background:linear-gradient(180deg,#fff 0%,#f5fbfa 100%);isolation:isolate}
.hero-card-body h3{position:relative;z-index:2;color:#073d4d!important;font-size:clamp(1.15rem,1.45vw,1.42rem)!important;line-height:1.28;margin:0 0 15px;text-shadow:none!important}
.hero-card-body .hero-info-grid{position:relative;z-index:2;color:#5d7680}
.hero-card-body::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 90% 0%,rgba(18,177,162,.12),transparent 34%);z-index:0;pointer-events:none}

/* polished hero animations */
.hero-carousel{position:relative;isolation:isolate;background:#062f3b;overflow:hidden}
.hero-carousel::before{content:"";position:absolute;inset:-40%;z-index:2;pointer-events:none;background:conic-gradient(from 120deg at 50% 50%,transparent 0 38%,rgba(112,255,236,.09) 44%,transparent 50% 100%);animation:heroAuroraSpin 18s linear infinite;mix-blend-mode:screen}
.hero-slide{background-size:cover;background-position:center;will-change:background-position,filter}
.hero-slide.is-active{animation:heroKenBurns 8s ease-out both}
.hero-slide::after{opacity:.72;animation:heroGlowDrift 6.5s ease-in-out infinite alternate}
.hero-slide.is-active .hero-content>*{animation:heroContentRise .72s cubic-bezier(.2,.75,.25,1) both}
.hero-slide.is-active .hero-content>*:nth-child(2){animation-delay:.08s}
.hero-slide.is-active .hero-content>*:nth-child(3){animation-delay:.14s}
.hero-slide.is-active .hero-content>*:nth-child(4){animation-delay:.2s}
.hero-slide.is-active .hero-content>*:nth-child(5){animation-delay:.26s}
.hero-slide.is-active .hero-content>*:nth-child(6){animation-delay:.32s}
.hero-slide.is-active .hero-card-preview{animation:heroCardFloatIn .78s cubic-bezier(.2,.75,.25,1) .18s both}
.hero-title{position:relative;text-wrap:balance;text-shadow:0 12px 38px rgba(0,0,0,.34)}
.hero-title::after{content:"";position:absolute;left:0;bottom:-14px;width:min(180px,35%);height:4px;border-radius:99px;background:linear-gradient(90deg,#f6c453,#90f5e9,transparent);box-shadow:0 0 20px rgba(144,245,233,.7)}
.hero-title span{background:linear-gradient(90deg,#9ff6eb,#d6fff9,#f7d477,#9ff6eb);background-size:260% auto;-webkit-background-clip:text;background-clip:text;color:transparent!important;animation:heroTitleShimmer 5s linear infinite}
.hero-card-preview{position:relative;overflow:hidden;box-shadow:0 38px 105px rgba(2,31,42,.45),0 0 0 1px rgba(255,255,255,.62),0 0 70px rgba(77,230,213,.18)}
.hero-card-preview::before{content:"";position:absolute;inset:-2px;z-index:5;pointer-events:none;border-radius:inherit;background:linear-gradient(130deg,rgba(255,255,255,.55),transparent 30%,transparent 68%,rgba(94,244,225,.28));mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);padding:1px;-webkit-mask-composite:xor;mask-composite:exclude}
.hero-pill{transition:transform .25s ease,background .25s ease,border-color .25s ease}
.hero-pill:hover{transform:translateY(-3px);background:rgba(255,255,255,.2);border-color:rgba(255,255,255,.34)}
.carousel-dot.active{box-shadow:0 0 0 5px rgba(111,239,224,.15),0 0 18px rgba(111,239,224,.7)}

@keyframes heroKenBurns{0%{background-position:center 50%;filter:saturate(.96)}100%{background-position:center 45%;filter:saturate(1.07)}}
@keyframes heroGlowDrift{0%{transform:translate3d(-2%,1%,0) scale(1);opacity:.55}100%{transform:translate3d(2%,-2%,0) scale(1.08);opacity:.85}}
@keyframes heroAuroraSpin{to{transform:rotate(360deg)}}
@keyframes heroContentRise{from{opacity:0;transform:translateY(22px);filter:blur(5px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes heroCardFloatIn{from{opacity:0;transform:translate(30px,26px) rotate(3deg) scale(.97)}to{opacity:1;transform:rotate(1deg) scale(1)}}
@keyframes heroTitleShimmer{to{background-position:260% center}}

@media(max-width:1320px){
 .header-inner{gap:12px}.brand img{height:53px;max-width:190px}.main-nav-clean a{padding:10px 9px;font-size:.82rem;gap:5px}.main-nav-clean a i{display:none}.header-actions .btn{padding-inline:12px}
 .hero-contact-layout-clean{grid-template-columns:1fr}.hero-contact-info-clean{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-contact-actions{grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}
}
@media(max-width:1020px){
 .main-nav-clean{position:fixed;top:0;right:-320px;width:min(320px,88vw);height:100dvh;background:#fff;z-index:1200;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;padding:90px 22px 30px;gap:8px;box-shadow:-24px 0 60px rgba(4,45,57,.18);transition:right .3s ease}
 .main-nav-clean.open{right:0}.main-nav-clean a{justify-content:flex-start;padding:14px 16px;font-size:.96rem}.main-nav-clean a i{display:inline-block;width:20px}
 .mobile-toggle{display:inline-grid}.header-actions .btn span{display:none}.header-actions .btn{width:46px;padding:0;justify-content:center}.brand img{height:50px;max-width:190px}
}
@media(max-width:720px){
 .hero-contact-info-clean{grid-template-columns:1fr}.contact-email-value{white-space:normal;overflow-wrap:anywhere!important}.hero-contact-actions{grid-template-columns:1fr}
 .hero-carousel::before{display:none}.hero-title::after{bottom:-10px}.hero-slide.is-active .hero-card-preview{animation:none}
}
@media(prefers-reduced-motion:reduce){.hero-carousel::before,.hero-slide::after,.hero-slide.is-active,.hero-slide.is-active .hero-content>*,.hero-slide.is-active .hero-card-preview,.hero-title span{animation:none!important}}


/* ===== v11 floating purchase, CTA spacing and contact map ===== */
.site-cta-section{padding:24px 0 48px!important}
.purchase-launcher{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit}
.floating-action-label{display:flex;flex-direction:column;background:#fff;border:1px solid #dbe8e6;border-radius:16px;padding:10px 14px;box-shadow:0 15px 38px rgba(7,73,72,.16);line-height:1.25;transition:.25s}
.floating-action-label strong{font-size:.86rem;color:var(--secondary)}.floating-action-label small{font-size:.72rem;color:var(--muted)}
.floating-action-bubble{position:relative;width:68px;height:68px;border-radius:22px;border:4px solid #fff;display:grid;place-items:center;overflow:visible;box-shadow:0 20px 42px rgba(234,170,31,.32);transition:transform .22s ease,box-shadow .22s ease}
.purchase-bubble{background:linear-gradient(135deg,#f9cb5c,#f3a928);color:#47320a;font-size:1.35rem}.purchase-launcher:hover .floating-action-bubble{transform:translateY(-3px) scale(1.02);box-shadow:0 26px 50px rgba(234,170,31,.38)}.purchase-launcher:hover .floating-action-label{transform:translateX(-3px);border-color:#f1d58f}
.purchase-glow{position:absolute;inset:-7px;border:2px solid rgba(245,183,55,.5);border-radius:27px;animation:purchasePulse 1.9s infinite}@keyframes purchasePulse{0%{transform:scale(.9);opacity:.8}70%{transform:scale(1.15);opacity:0}100%{opacity:0}}
.whatsapp-float.open .floating-action-label{opacity:.55}
.contact-service-icon{width:76px;height:76px;border-radius:22px;background:linear-gradient(135deg,#e9faf7,#d7f3ef);color:var(--primary-dark);display:grid;place-items:center;font-size:1.55rem;box-shadow:0 12px 28px rgba(8,93,90,.12);border:1px solid #cceae5;flex:0 0 auto}
.contact-map-section{padding-top:0}.contact-map-shell{display:grid;grid-template-columns:minmax(320px,.78fr) minmax(0,1.32fr);gap:24px;align-items:stretch;background:linear-gradient(135deg,#f5fbfa,#eef8f7);border:1px solid var(--line);border-radius:30px;padding:24px;box-shadow:0 22px 55px rgba(5,63,72,.09)}
.contact-map-copy{padding:24px;display:flex;flex-direction:column;justify-content:center}.contact-map-copy h2{font-size:clamp(1.9rem,3vw,2.7rem);margin:12px 0}.contact-map-copy p{color:var(--muted);line-height:1.75;max-width:520px}.contact-map-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.btn-waze{background:#33ccff;color:#053b4a;border-color:#33ccff}.btn-waze:hover{background:#1bbce9;color:#fff;border-color:#1bbce9}
.contact-map-frame{min-height:420px;border-radius:24px;overflow:hidden;border:1px solid #d8e8e6;box-shadow:0 18px 38px rgba(4,60,69,.1)}.contact-map-frame iframe{width:100%;height:100%;min-height:420px;border:0;display:block}
@media(max-width:820px){.contact-map-shell{grid-template-columns:1fr;padding:16px}.contact-map-copy{padding:18px}.contact-map-frame,.contact-map-frame iframe{min-height:340px}.contact-map-actions{display:grid;grid-template-columns:1fr}.contact-map-actions .btn{width:100%;justify-content:center}}
@media(max-width:560px){.floating-action-label,.whatsapp-label{display:none}.floating-action-bubble,.whatsapp-bubble{width:60px;height:60px;border-radius:20px}.purchase-glow,.pulse-ring{border-radius:24px}.site-cta-section{padding-bottom:34px!important}.contact-service-icon{width:64px;height:64px;border-radius:18px}.contact-map-shell{border-radius:24px}.contact-map-frame,.contact-map-frame iframe{min-height:300px}}


/* ===== v12 Contact Page & Floating Operator Upgrade ===== */
.contact-page-hero{background:linear-gradient(120deg,rgba(4,45,57,.93),rgba(10,137,137,.72)),url('../images/as-gallery-09.jpg') center/cover}
.contact-showcase-section{padding-top:54px}
.contact-showcase-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,1.18fr);gap:28px;align-items:stretch}
.contact-hq-photo-card{position:relative;min-height:620px;border-radius:30px;overflow:hidden;background:#eaf3f3;box-shadow:0 24px 60px rgba(5,58,67,.15);border:1px solid #dce9e8}
.contact-hq-photo-card>img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .65s ease}
.contact-hq-photo-card:hover>img{transform:scale(1.025)}
.contact-hq-photo-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,37,46,0) 52%,rgba(3,37,46,.78) 100%)}
.contact-photo-overlay{position:absolute;left:24px;right:24px;bottom:24px;z-index:2;color:#fff;background:rgba(4,45,57,.62);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(12px);padding:20px 22px;border-radius:22px}
.contact-photo-overlay span{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.15);font-size:.8rem;font-weight:700}
.contact-photo-overlay strong{display:block;font-size:1.35rem;margin:10px 0 5px}.contact-photo-overlay small{color:rgba(255,255,255,.82)}
.contact-premium-card{position:relative;overflow:hidden;background:linear-gradient(180deg,#fff,#f9fcfc);border:1px solid #dce8e8;border-radius:30px;padding:32px;box-shadow:0 24px 60px rgba(5,58,67,.1)}
.contact-premium-card::before{content:"";position:absolute;width:250px;height:250px;border-radius:50%;right:-100px;top:-110px;background:radial-gradient(circle,rgba(10,168,155,.13),rgba(10,168,155,0))}
.contact-operator-head{display:flex;gap:22px;align-items:center;position:relative;z-index:1}
.contact-operator-avatar{position:relative;flex:0 0 118px;width:118px;height:118px;border-radius:34px;padding:6px;background:linear-gradient(135deg,#c9f0e9,#fff);box-shadow:0 18px 36px rgba(7,93,88,.16)}
.contact-operator-avatar img{width:100%;height:100%;object-fit:cover;border-radius:28px;display:block}
.contact-online-dot{position:absolute;right:4px;bottom:10px;width:20px;height:20px;border-radius:50%;background:#24c875;border:4px solid #fff;box-shadow:0 0 0 5px rgba(36,200,117,.12)}
.contact-headset-badge{position:absolute;left:-8px;bottom:-8px;width:42px;height:42px;border-radius:14px;background:var(--secondary);color:#fff;display:grid;place-items:center;border:4px solid #fff;box-shadow:0 10px 22px rgba(5,58,67,.2)}
.contact-operator-copy{min-width:0}.contact-operator-copy h2{font-size:clamp(1.75rem,2.8vw,2.5rem);margin:10px 0 8px;color:var(--secondary)}
.contact-operator-copy>p{color:var(--muted);line-height:1.7;margin:0 0 15px}
.contact-primary-links{display:flex;gap:10px 18px;flex-wrap:wrap;margin-bottom:16px}.contact-primary-links a{display:inline-flex;align-items:center;gap:8px;color:var(--secondary);font-weight:700;overflow-wrap:anywhere}.contact-primary-links i{color:var(--primary-dark)}
.contact-wa-btn{min-width:210px;justify-content:center}
.contact-detail-list{margin-top:28px;border:1px solid #e0ebeb;border-radius:24px;overflow:hidden;background:#fff;position:relative;z-index:1}
.contact-detail-row{display:grid;grid-template-columns:50px minmax(0,1fr) auto;gap:14px;align-items:center;padding:17px 19px;color:var(--ink);border-bottom:1px solid #e7efef}.contact-detail-row:last-child{border-bottom:0}
a.contact-detail-row:hover{background:#f3fbf9}
.contact-detail-icon{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(135deg,#e5f7f4,#f7fcfb);border:1px solid #d6ece7;color:var(--primary-dark)}
.contact-detail-row small{display:block;color:var(--muted);font-size:.8rem;margin-bottom:4px}.contact-detail-row strong{display:block;color:var(--secondary);line-height:1.55}.contact-detail-row>.fa-chevron-right{color:#9cb1b5;font-size:.8rem}
.contact-trust-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px}.contact-trust-strip span{display:flex;align-items:center;justify-content:center;gap:8px;text-align:center;padding:12px;border-radius:15px;background:#edf8f6;color:var(--secondary);font-size:.78rem;font-weight:700;border:1px solid #d7ece8}
.contact-form-section{padding-top:62px}.contact-form-layout{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:34px;align-items:center}
.contact-form-intro h2{font-size:clamp(2rem,3.5vw,3.2rem);margin:12px 0 14px}.contact-form-intro>p{color:var(--muted);line-height:1.8;max-width:540px}
.contact-form-highlights{display:grid;gap:13px;margin-top:24px}.contact-form-highlights>div{display:flex;gap:14px;align-items:center;padding:14px 16px;border:1px solid #dce9e8;border-radius:18px;background:#fff}.contact-form-highlights i{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:#e8f8f5;color:var(--primary-dark)}.contact-form-highlights strong,.contact-form-highlights small{display:block}.contact-form-highlights small{color:var(--muted);margin-top:3px}
.contact-form-premium{padding:30px;border-radius:28px;background:linear-gradient(180deg,#fff,#fbfdfd)}
.contact-form-premium .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.contact-form-premium .form-span-2{grid-column:1/-1}.contact-submit-btn{width:100%;margin-top:18px;justify-content:center;min-height:54px}
.operator-avatar-wrap{position:relative;width:50px;height:50px;flex:0 0 50px}.operator-avatar-wrap img{width:100%!important;height:100%!important;border-radius:16px!important;object-fit:cover}.operator-online{position:absolute;right:-2px;bottom:-2px;width:13px;height:13px;border-radius:50%;background:#20c878;border:3px solid #fff}
.purchase-bubble{background:#fff!important;padding:8px;overflow:hidden!important}.purchase-bubble img{width:100%;height:100%;object-fit:contain;border-radius:13px;display:block}.purchase-bubble>i{display:none}
.operator-bubble{background:linear-gradient(135deg,#d8f5ef,#17bb7c)!important}.operator-bubble img{object-position:center 36%}
.whatsapp-card-head .operator-avatar-wrap img{background:#fff}.whatsapp-card-head{padding:15px 17px}
@media(max-width:1000px){.contact-showcase-grid,.contact-form-layout{grid-template-columns:1fr}.contact-hq-photo-card{min-height:500px}.contact-trust-strip{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:680px){.contact-showcase-section{padding-top:36px}.contact-hq-photo-card{min-height:360px;border-radius:24px}.contact-premium-card{padding:22px;border-radius:24px}.contact-operator-head{align-items:flex-start}.contact-operator-avatar{width:86px;height:86px;flex-basis:86px;border-radius:25px}.contact-operator-avatar img{border-radius:20px}.contact-headset-badge{width:34px;height:34px;border-radius:11px}.contact-primary-links{display:grid}.contact-detail-row{grid-template-columns:44px minmax(0,1fr)}.contact-detail-row>.fa-chevron-right{display:none}.contact-trust-strip{grid-template-columns:1fr}.contact-form-premium .form-grid{grid-template-columns:1fr}.contact-form-premium .form-span-2{grid-column:auto}.contact-form-section{padding-top:44px}}
@media(max-width:440px){.contact-operator-head{display:grid}.contact-operator-avatar{width:96px;height:96px}.contact-photo-overlay{left:14px;right:14px;bottom:14px;padding:16px}.contact-hq-photo-card{min-height:300px}}


/* === AS SALIK PREMIUM REBRAND OVERRIDE === */
:root{--primary:#8b0f22!important;--primary-dark:#5d0917!important;--primary-soft:#fff2f4!important;--secondary:#1b1112!important;--gold:#d9b760!important;--gold-dark:#a47b26!important;--gold-soft:#fff6d8!important;--ink:#1a1213!important;--muted:#6d5c60!important;--line:#eadcc9!important;--surface:#fffaf2!important;--surface-2:#fff6e7!important}
body{background:linear-gradient(180deg,#fffaf2 0%,#fff 42%,#fff7ea 100%)}.site-header{background:rgba(255,250,242,.92)!important;border-bottom:1px solid rgba(139,15,34,.12);backdrop-filter:blur(18px)}.brand-logo img,.panel-brand img{object-fit:contain;background:#fff;border-radius:15px;padding:4px;box-shadow:0 8px 24px rgba(93,9,23,.10)}.hero-slide:before{background:linear-gradient(90deg,rgba(32,10,12,.88),rgba(93,9,23,.65) 48%,rgba(255,255,255,.08))!important}.hero-slide:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 22% 16%,rgba(217,183,96,.28),transparent 28%),radial-gradient(circle at 80% 35%,rgba(255,255,255,.22),transparent 30%);pointer-events:none}.hero-content,.hero-card-preview{position:relative;z-index:2}.hero-title span{color:#f2d27a!important}.hero-price strong{color:#f8d97a!important;text-shadow:0 5px 24px rgba(0,0,0,.35)}.btn-primary,.form-section-title>span{background:linear-gradient(135deg,#9e1128,#5d0917)!important}.btn-gold{background:linear-gradient(135deg,#f7d77a,#ad7d2a)!important;color:#2b1608!important}.feature-card,.card,.customer-home-panel,.benefit-row{box-shadow:0 20px 55px rgba(93,9,23,.10)!important;border-color:rgba(139,15,34,.12)!important}.icon-box{background:linear-gradient(135deg,#fff6d8,#fff)!important;color:#8b0f22!important;border:1px solid rgba(217,183,96,.34)}.page-hero{background:linear-gradient(135deg,rgba(93,9,23,.92),rgba(22,13,13,.84)),url('../images/as-poster-jom-umrah.jpg') center/cover!important}.contact-hq-photo-card img{content:url('../images/as-gallery-09.jpg')}.customer-home-image img{content:url('../images/as-gallery-02.jpg')}.benefit-showcase-image{content:url('../images/as-gallery-09.jpg')}.contact-photo-overlay{background:linear-gradient(180deg,transparent,rgba(93,9,23,.94))!important}.whatsapp-float{background:linear-gradient(135deg,#25d366,#128c7e)!important;box-shadow:0 18px 45px rgba(18,140,126,.28)!important}.badge-success{background:#eaf8ec!important;color:#0f6f2b!important}.badge-warning{background:#fff4d5!important;color:#87600e!important}.section-deep{background:linear-gradient(135deg,#5d0917,#8b0f22 55%,#2b1416)!important}.footer{background:#160b0d!important;color:#fff}.footer a{color:#fff}.main-nav a:hover,.main-nav a.active{color:#8b0f22!important;background:#fff2f4!important}@media(max-width:768px){.hero-title{font-size:2.4rem!important}.hero-card-preview{display:none}.hero-slide:before{background:linear-gradient(180deg,rgba(32,10,12,.9),rgba(93,9,23,.74))!important}.hero-contact-layout{margin-top:-30px}.brand-logo img{height:44px!important}.customer-home-panel{gap:20px}.benefit-row{padding:20px!important}}
