/* TourPhuket Tour Manager v1.2 - scoped public tour layout */
body.single-tp_tour .site-main,body.single-tp_tour .site-main>.page-content,body.single-tp_tour .site-main>.entry-content,body.single-tp_tour main#content,body.single-tp_tour .content-area,body.single-tp_tour .site-main article,body.single-tp_tour .site-main .entry-content{max-width:none!important;width:100%!important}
body.single-tp_tour .site-main{padding-left:0!important;padding-right:0!important}
body.single-tp_tour .site-main .entry-header,body.single-tp_tour .site-main>article>.entry-header,body.single-tp_tour .site-main .page-header,body.single-tp_tour .site-main .entry-title:not(.tptm-tour *){display:none!important}
body.single-tp_tour .site-main .entry-content{margin-top:0!important}
.tptm-tour{max-width:1180px!important;width:calc(100% - 36px)!important;margin:24px auto 80px!important;font-family:Arial,'Noto Sans Thai',Tahoma,sans-serif!important;font-size:16px;line-height:1.7;color:#153b58}
.tptm-tour .tptm-hero{min-height:490px;border-radius:22px;box-shadow:0 16px 42px rgba(8,57,91,.14);position:relative}
.tptm-tour .tptm-hero-inner{padding:70px 7%;max-width:750px;position:relative;z-index:1}
.tptm-tour .tptm-hero h1{font-size:clamp(30px,4vw,54px);line-height:1.22;text-shadow:0 2px 8px rgba(0,0,0,.2);font-weight:800}
.tptm-tour .tptm-hero p{font-size:clamp(15px,1.5vw,19px);max-width:620px;line-height:1.8}
.tptm-tour .tptm-hero .tptm-eyebrow{font-weight:700;color:#d7f7ff}
.tptm-tour .tptm-btn{border-radius:999px;padding:13px 24px;box-shadow:0 5px 12px rgba(0,0,0,.1)}
.tptm-tour .tptm-section{padding:44px 30px}
.tptm-tour .tptm-hero+.tptm-section{margin-top:22px}
.tptm-tour .tptm-pale{background:#edf8ff;border:1px solid #dceefa;border-radius:20px}
.tptm-tour h2{font-size:clamp(23px,2.5vw,30px);font-weight:800;margin:0 0 24px;color:#084b75}
.tptm-tour .tptm-prices{gap:18px}
.tptm-tour .tptm-prices>div{padding:25px 22px;border-radius:16px;border:1px solid #d5e8f4;box-shadow:0 5px 18px rgba(4,65,110,.05)}
.tptm-tour .tptm-prices span{font-size:18px;font-weight:700}
.tptm-tour .tptm-prices strong{font-size:clamp(27px,3vw,38px);line-height:1.4;color:#006da8}
.tptm-tour .tptm-gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.tptm-tour .tptm-gallery a{border-radius:14px;box-shadow:0 4px 14px rgba(12,64,89,.08)}
.tptm-tour .tptm-gallery a:first-child{min-height:300px}
.tptm-tour .tptm-timeline{gap:0;position:relative;padding-left:27px}
.tptm-tour .tptm-timeline:before{content:'';position:absolute;top:15px;bottom:15px;left:10px;width:3px;border-radius:2px;background:#c8e7f8}
.tptm-tour .tptm-stop{position:relative;align-items:flex-start;margin-bottom:15px;border-radius:14px;padding:19px 22px;box-shadow:0 3px 10px rgba(4,66,101,.04)}
.tptm-tour .tptm-stop:before{content:'';position:absolute;left:-26px;top:24px;width:13px;height:13px;border-radius:50%;background:#087dbb;border:3px solid white;box-shadow:0 0 0 2px #087dbb}
.tptm-tour .tptm-stop b{font-size:17px;min-width:130px;color:#006eaa}
.tptm-tour .tptm-panel{border-radius:18px;box-shadow:0 5px 18px rgba(4,65,110,.04)}
.tptm-tour .tptm-booking{margin-top:12px;border-radius:22px;padding:48px 36px;background:linear-gradient(130deg,#073d63,#0b8dbb)}
.tptm-tour .tptm-form{max-width:940px;box-shadow:0 15px 35px rgba(0,31,55,.15)}
.tptm-tour .tptm-channels button{padding:13px 25px;border-radius:11px}
@media(max-width:780px){.tptm-tour{width:calc(100% - 24px)!important;margin:12px auto 48px!important}.tptm-tour .tptm-hero{min-height:430px}.tptm-tour .tptm-hero-inner{padding:48px 23px}.tptm-tour .tptm-section{padding:28px 17px}.tptm-tour .tptm-prices{grid-template-columns:1fr;gap:10px}.tptm-tour .tptm-prices>div{padding:16px 18px}.tptm-tour .tptm-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.tptm-tour .tptm-gallery a:first-child{grid-column:span 2;min-height:240px}.tptm-tour .tptm-cols,.tptm-tour .tptm-fields{grid-template-columns:1fr}.tptm-tour .tptm-stop{display:block;padding:14px}.tptm-tour .tptm-stop b{display:block;margin-bottom:4px}.tptm-tour .tptm-booking{padding:30px 17px}.tptm-tour .tptm-form{padding:18px}}
@media(prefers-reduced-motion:reduce){.tptm-tour *{scroll-behavior:auto!important;transition:none!important}}
