/*
Theme Name: Jet Splash Holidays
Author: Jet Splash Holidays
Description: A responsive WordPress theme for island tours and local experiences.
Version: 1.1.1
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: langkawi-island
*/
:root{--sea:#17494a;--deep:#102f32;--sand:#f3ead9;--cream:#fbfaf6;--coral:#c87951;--ink:#183b3c;--muted:#667a74;--line:#e8e8df;--serif:Georgia,"Times New Roman",serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}
a{color:inherit}
img{max-width:100%;height:auto}
button,input,select,textarea{font:inherit}
.site-shell{overflow:hidden}
.site-header{position:relative;z-index:10;background:rgba(251,250,246,.96);border-bottom:1px solid rgba(23,73,74,.08)}
.header-inner{width:min(1240px,calc(100% - 48px));height:82px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none}
.brand-logo{display:block;flex:0 0 auto;object-fit:contain;background:#fff;border-radius:6px;width:68px;height:68px}
.brand-name{min-width:0}
.brand-mark{display:grid;place-items:center;width:39px;height:39px;border-radius:50%;background:var(--sea);color:#fff;font-family:var(--serif);font-size:22px}
.brand-name{display:flex;flex-direction:column;line-height:1.1}
.brand-name strong{font-size:15px;letter-spacing:.03em;color:var(--deep)}
.brand-name span{margin-top:4px;font-size:9px;letter-spacing:.19em;text-transform:uppercase;color:#7c8a7e}
.primary-nav{display:flex;align-items:center;gap:30px}
.primary-nav ul{display:flex;align-items:center;gap:30px;margin:0;padding:0;list-style:none}
.primary-nav li{margin:0;padding:0}
.primary-nav a{color:#516b66;font-size:13px;text-decoration:none;transition:color .2s}
.primary-nav a:hover{color:var(--coral)}
.header-book{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 19px;border-radius:5px;background:var(--sea);color:#fff;text-decoration:none;font-size:12px;font-weight:700;letter-spacing:.04em;transition:background .2s}
.header-book:hover{background:var(--deep);color:#fff}
.mobile-nav-toggle{display:none;border:0;background:none;color:var(--sea);font-size:27px}
.promo-banner{padding:9px 20px;background:#e9f0e8;color:#294e4b;text-align:center;font-size:12px}
.promo-banner a{font-weight:700;color:#a45e3c;text-decoration:none}
.hero{position:relative;min-height:630px;display:flex;align-items:center;background-color:#dce9e1;background-image:linear-gradient(90deg,rgba(13,43,45,.72) 0%,rgba(19,61,60,.46) 43%,rgba(13,43,45,.05) 100%),url("assets/island-scene.svg");background-size:cover;background-position:center}
.hero::after{content:"";position:absolute;inset:auto 0 0;height:140px;background:linear-gradient(transparent,var(--cream));pointer-events:none}
.hero-inner{position:relative;z-index:1;width:min(1240px,calc(100% - 48px));margin:auto;padding:86px 0 115px}
.hero-copy{max-width:680px;color:#fff}
.eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 20px;color:#f3d7aa;font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}
.eyebrow::before{content:"";width:33px;height:1px;background:#e6b889}
.hero h1{max-width:670px;margin:0;font-family:var(--serif);font-size:clamp(48px,7vw,86px);font-weight:400;line-height:.99;letter-spacing:-.035em}
.hero h1 em{color:#f2c68f;font-weight:400}
.hero-description{max-width:475px;margin:24px 0 29px;color:rgba(255,255,255,.85);font-size:15px;line-height:1.8}
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px}
.button-primary{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:52px;padding:0 22px;border:0;border-radius:5px;background:#d88b5f;color:#fff;text-decoration:none;font-size:12px;font-weight:700;letter-spacing:.045em;transition:transform .2s,background .2s}
.button-primary:hover{transform:translateY(-2px);background:#c87951;color:#fff}
.button-text{color:#fff;text-decoration:none;font-size:12px;font-weight:650}
.hero-footnote{margin-top:40px;color:rgba(255,255,255,.74);font-size:11px;letter-spacing:.08em}
.hero-footnote span{color:#f3d7aa}
.section-wrap{width:min(1240px,calc(100% - 48px));margin:0 auto}
.section-pad{padding:86px 0}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:30px}
.section-heading h2,.story-copy h2,.experience-copy h2{max-width:580px;margin:8px 0 0;font-family:var(--serif);font-weight:400;font-size:clamp(34px,4vw,52px);line-height:1.08;letter-spacing:-.02em;color:var(--deep)}
.section-heading p{max-width:330px;margin:0;color:var(--muted);font-size:14px}
.section-label{margin:0;color:#ae704b;font-size:10px;font-weight:700;letter-spacing:.17em;text-transform:uppercase}
.tour-section{padding:32px 0 87px}
.story-section{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding:82px 0}
.story-art{position:relative;min-height:410px;border-radius:4px;background:linear-gradient(180deg,rgba(22,74,73,.05),rgba(22,74,73,.13)),url("assets/island-scene.svg") center/cover}
.story-art::before{content:"";position:absolute;inset:24px -20px -20px 24px;border:1px solid #d7b38b;z-index:-1}
.story-stamp{position:absolute;right:26px;bottom:25px;width:115px;height:115px;display:grid;place-items:center;text-align:center;border-radius:50%;background:#f5e8d5;color:var(--sea);font-family:var(--serif);font-size:18px;line-height:1.15;transform:rotate(9deg)}
.story-copy p{max-width:490px;color:var(--muted);font-size:14px;line-height:1.85}
.story-copy .button-text{display:inline-block;margin-top:12px;color:var(--coral)}
.experience-band{position:relative;padding:70px 0;background:#eaf0e8}
.experience-band-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}
.experience-copy{max-width:630px}
.experience-copy h2{font-size:clamp(33px,4vw,48px)}
.experience-copy p{max-width:515px;color:var(--muted);font-size:14px}
.experience-facts{display:grid;grid-template-columns:repeat(2,minmax(120px,1fr));gap:14px;min-width:300px}
.fact{padding:19px 20px;background:rgba(255,255,255,.66);border:1px solid #dae4d9;border-radius:9px}
.fact strong{display:block;color:var(--sea);font-family:var(--serif);font-size:24px;font-weight:400}
.fact span{display:block;color:var(--muted);font-size:11px}
.journal-section{padding:84px 0}
.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.journal-card{padding:24px;background:#fff;border:1px solid var(--line);border-radius:12px}
.journal-card time{color:#ae704b;font-size:10px;letter-spacing:.1em;text-transform:uppercase}
.journal-card h3{margin:11px 0;font-family:var(--serif);font-size:23px;font-weight:400;line-height:1.2}
.journal-card h3 a{text-decoration:none}
.journal-card p{color:var(--muted);font-size:13px}
.journal-more{display:inline-block;margin-top:8px;color:var(--coral);font-size:12px;font-weight:700;text-decoration:none}
.closing-cta{padding:70px 0;background:var(--deep);color:#fff}
.closing-cta-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}
.closing-cta h2{max-width:670px;margin:7px 0 0;font-family:var(--serif);font-size:clamp(32px,4vw,50px);font-weight:400;line-height:1.1}
.closing-cta .section-label{color:#edbd8f}
.site-footer{padding:50px 0 28px;background:#102c2e;color:#dce5dc}
.footer-main{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:50px;padding-bottom:38px}
.footer-main p{max-width:300px;color:#a8b9af;font-size:12px}
.site-footer .brand-name strong{color:#fbfaf6}
.site-footer .brand-name span{color:#a8b9af}
.site-footer .brand-logo{width:82px;height:82px}
.footer-title{margin:0 0 13px;color:#f1d0a5;font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.footer-nav{display:flex;flex-direction:column;gap:8px}
.footer-nav ul{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none}
.footer-nav li{list-style:none}
.footer-nav a{color:#c4d0c7;font-size:12px;text-decoration:none}
.footer-bottom{display:flex;justify-content:space-between;gap:18px;padding-top:19px;border-top:1px solid rgba(255,255,255,.12);color:#9eafa5;font-size:10px}
.page-hero{padding:75px 0 55px;background:#eaf0e8}
.page-hero h1{max-width:850px;margin:9px 0 14px;font-family:var(--serif);font-size:clamp(38px,6vw,64px);font-weight:400;line-height:1.06;color:var(--deep)}
.page-hero p{max-width:610px;color:var(--muted)}
.single-tour-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(400px,460px);align-items:start;gap:clamp(32px,4vw,56px);padding:55px 0 90px}
.single-tour-content h2,.entry-content h2{font-family:var(--serif);font-weight:400;color:var(--deep)}
.single-tour-content{color:#536b66}
.single-tour-content img{border-radius:12px}
.single-tour-booking{position:sticky;top:24px}
.entry-content{max-width:850px;margin:0 auto;padding:55px 24px 90px}
.entry-content p,.entry-content li{color:#536b66;line-height:1.8}
.entry-content a{color:#a45e3c}
.site-main{min-height:55vh}
.woocommerce .woocommerce-breadcrumb{color:var(--muted);font-size:12px}
.woocommerce .woocommerce-message,.woocommerce .woocommerce-info{border-top-color:var(--coral)}
.woocommerce .button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{border-radius:5px;background:var(--sea);color:#fff}
.woocommerce .button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{background:var(--deep);color:#fff}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{min-height:46px;padding:10px 12px;border:1px solid #d7e0d8;border-radius:7px}
.woocommerce-checkout #payment{background:#eef3ed;border-radius:8px}
.not-found{text-align:center;padding:90px 20px}
@media(max-width:950px){.primary-nav{gap:17px}.header-inner{width:calc(100% - 36px)}.hero-inner,.section-wrap{width:calc(100% - 36px)}.single-tour-layout{grid-template-columns:minmax(0,1fr) minmax(330px,390px);gap:28px}.experience-band-inner{align-items:flex-start;flex-direction:column}.experience-facts{width:100%;max-width:500px}}
@media(max-width:760px){.header-inner{height:72px}.mobile-nav-toggle{display:block}.header-book{display:none}.primary-nav{position:absolute;top:72px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:9px 22px 16px;background:var(--cream);border-bottom:1px solid var(--line)}.primary-nav.is-open{display:flex}.primary-nav ul{align-items:stretch;flex-direction:column;gap:0}.primary-nav a{display:block;padding:12px 0;border-bottom:1px solid var(--line)}.hero{min-height:570px;background-position:62% center}.hero-inner{padding:70px 0 90px}.hero h1{font-size:clamp(48px,12vw,72px)}.section-pad,.journal-section{padding:62px 0}.section-heading{align-items:flex-start;flex-direction:column}.story-section{grid-template-columns:1fr;gap:40px;padding:58px 0}.story-art{min-height:310px;margin-right:18px}.experience-band{padding:55px 0}.journal-grid{grid-template-columns:1fr}.closing-cta-inner{align-items:flex-start;flex-direction:column}.footer-main{grid-template-columns:1fr 1fr;gap:30px}.footer-main>div:first-child{grid-column:1/-1}.single-tour-layout{grid-template-columns:1fr;gap:28px;padding:35px 0 60px}.single-tour-booking{position:static}.page-hero{padding:54px 0 40px}}
@media(max-width:480px){.header-inner,.hero-inner,.section-wrap{width:calc(100% - 30px)}.hero{min-height:550px}.hero-description{font-size:14px}.hero-actions{align-items:flex-start;flex-direction:column}.experience-facts{grid-template-columns:1fr 1fr;min-width:0}.fact{padding:15px}.footer-main{grid-template-columns:1fr;gap:24px}.footer-main>div:first-child{grid-column:auto}.footer-bottom{align-items:flex-start;flex-direction:column}.page-hero h1{font-size:42px}}
