/* ttwt-guide.css: guide product pages (2 Oct 2026; sample = /products/the-schengen-visa-guide/). Tokens --tt-* and the product tiles (.ttwt-pc) come from ttwt-brief.css.
   Page = buy screen (photo strip + price + buttons), then the description in blocks: the 2 AM line, contents list, who it is for / not for, disclaimer, the couple, other products. A buy bar follows the scroll. */
.ttwt-guide{color:var(--tt-ink)}
.ttwt-guide .heading{margin-top:0}
.ttwt-guide .rv{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease;transition-delay:var(--d,0s)}
.ttwt-guide .ttwt-rv.is-in .rv{opacity:1;transform:none}

/* 1. buy screen: no reveal here (the loader covers the first section) */
.ttwt-g-buy{padding:22px 0 72px;background:linear-gradient(180deg,#fff 0%,var(--tt-cream) 100%)}
.ttwt-g-buy .nav-breadcrumb{margin:0 0 26px;font-size:14px}
.ttwt-g-top{display:grid;grid-template-columns:minmax(0,500px) minmax(0,560px);justify-content:center;gap:88px;align-items:center}
.ttwt-g-view{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;aspect-ratio:823/1029;border-radius:14px;background:var(--tt-line);box-shadow:0 30px 60px -34px rgba(0,0,0,.45)}
.ttwt-g-view::-webkit-scrollbar{display:none}
.ttwt-g-view img{flex:0 0 100%;width:100%;height:100%;object-fit:cover;scroll-snap-align:start}
.ttwt-g-thumbs{display:flex;gap:10px;margin-top:14px}
.ttwt-g-thumbs button{flex:0 0 64px;padding:0;border:1px solid transparent;border-radius:8px;overflow:hidden;background:none;opacity:.55;transition:opacity .2s,border-color .2s}
.ttwt-g-thumbs button[aria-current],.ttwt-g-thumbs button:hover{opacity:1;border-color:var(--tt-ink)}
.ttwt-g-thumbs img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}
.ttwt-g-info{max-width:560px}
.ttwt-g-vendor{margin:0 0 8px;font-size:16px;font-style:italic;opacity:.85}
.ttwt-g-title{margin:0 0 14px;font-size:clamp(38px,4.2vw,60px);line-height:1.03}
.ttwt-g-price{margin:0 0 24px;font-size:24px}
.ttwt-g-price .ttwt-plus-gst{font-size:15px;letter-spacing:.04em;opacity:.75}
.ttwt-g-lead{margin:0 0 14px;padding-left:18px;border-left:2px solid var(--tt-accent);font-family:var(--bs-font-heading-family);font-style:italic;font-size:26px;line-height:1.3}
.ttwt-g-fact{margin:0 0 28px;font-size:17px;line-height:1.5;opacity:.85}
.ttwt-g-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 14px}
.ttwt-g-form .btn,.ttwt-g-bar .btn{padding:18px 20px;border:1px solid var(--tt-ink);border-radius:10px;background:var(--tt-ink);color:#fff;font-size:16px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;transition:background .2s,color .2s,transform .2s}
.ttwt-g-form .btn:hover,.ttwt-g-bar .btn:hover{background:#000;color:#fff;transform:translateY(-1px)}
.ttwt-g-form .ttwt-g-now{background:#fff;color:var(--tt-ink)}
.ttwt-g-form .ttwt-g-now:hover{background:var(--tt-ink);color:#fff}
.ttwt-g-share .share-button__button{padding-left:0}

/* 2. the 2 AM line */
.ttwt-g-story{padding:8px 0 88px;background:var(--tt-cream);text-align:center}
.ttwt-g-story .container{max-width:920px}
.ttwt-g-quote{margin:0 0 22px;font-family:var(--bs-font-heading-family);font-size:clamp(26px,3vw,40px);line-height:1.22}
.ttwt-g-after{max-width:640px;margin:0 auto;font-size:20px;line-height:1.55;opacity:.85}

/* 3. contents list */
.ttwt-g-inside{padding:88px 0;background:#fff}
.ttwt-g-head{max-width:640px;margin:0 0 40px}
.ttwt-guide h2.heading{margin-bottom:14px;font-size:clamp(30px,3vw,44px);line-height:1.1}
.ttwt-g-head p{margin:0;font-size:19px;line-height:1.5;opacity:.85}
.ttwt-g-toc{display:grid;grid-template-columns:1fr 1fr;column-gap:64px;margin:0;padding:0;list-style:none}
.ttwt-g-toc li{display:flex;gap:22px;padding:22px 0;border-top:1px solid var(--tt-line)}
.ttwt-g-no{flex:0 0 52px;font-family:var(--bs-font-heading-family);font-size:40px;line-height:1;color:var(--tt-accent)}
.ttwt-g-toc strong{display:block;margin:0 0 4px;font-size:19px;font-weight:700;line-height:1.3}
.ttwt-g-toc p{margin:0;font-size:16px;line-height:1.5;opacity:.82}

/* 4. for / not for / disclaimer */
.ttwt-g-fit{padding:88px 0;background:var(--tt-cream)}
.ttwt-g-fit-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:64px;align-items:start}
.ttwt-g-fit ul{margin:0;padding:0;list-style:none}
.ttwt-g-fit li{display:flex;gap:14px;padding:13px 0;border-top:1px solid var(--tt-line);font-size:18px;line-height:1.45}
.ttwt-g-fit li i{flex:none;font-size:20px;line-height:1.3;color:var(--tt-accent)}
.ttwt-g-not{padding:28px 28px 14px;border:1px solid var(--tt-line);border-radius:14px;background:#fff}
.ttwt-g-not h3{margin:0 0 14px;font-size:26px;line-height:1.15}
.ttwt-g-not li:first-child{border-top:0}
.ttwt-g-not li i{color:var(--tt-ink);opacity:.45}
.ttwt-g-note{max-width:880px;margin-top:56px;padding:4px 0 4px 24px;border-left:2px solid var(--tt-accent)}
.ttwt-g-note h3{margin:0 0 12px;font:600 12px/1 var(--bs-font-body-family,sans-serif);letter-spacing:.16em;text-transform:uppercase;opacity:.6}
.ttwt-g-note p{margin:0;font-family:var(--bs-font-heading-family);font-size:clamp(20px,2vw,26px);line-height:1.38}

/* 5. the couple */
.ttwt-g-us{padding:88px 0;background:#fff}
.ttwt-g-us-grid{display:grid;grid-template-columns:minmax(0,400px) minmax(0,1fr);gap:72px;align-items:center}
.ttwt-g-us figure{margin:0}
.ttwt-g-us img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:14px}
.ttwt-g-us p{max-width:640px;margin:0 0 14px;font-size:18px;line-height:1.6}
.ttwt-g-us p.ttwt-g-sign{margin:22px 0 0;font-family:var(--bs-font-heading-family);font-style:italic;font-size:26px}

/* 6. other products */
.ttwt-g-more{padding:80px 0 96px;background:var(--tt-cream);text-align:center}
.ttwt-g-more h2.heading{margin-bottom:36px}
.ttwt-g-more .ttwt-pcs{grid-template-columns:repeat(2,minmax(0,300px));justify-content:center;text-align:left}

/* buy bar: slides up once the buttons have scrolled away (ttwt-shop.js block 9); the WhatsApp button moves above it */
.ttwt-g-bar{position:fixed;left:0;right:0;bottom:0;z-index:1040;background:#fff;border-top:1px solid var(--tt-line);box-shadow:0 -14px 30px -20px rgba(0,0,0,.4);transform:translateY(105%);visibility:hidden;transition:transform .35s cubic-bezier(.2,.7,.2,1),visibility 0s .35s}
html.ttwt-bar-on .ttwt-g-bar{transform:none;visibility:visible;transition-delay:0s}
.ttwt-g-bar .container{display:flex;align-items:center;gap:14px;padding-top:10px;padding-bottom:10px}
.ttwt-g-bar img{flex:none;width:44px;height:55px;object-fit:cover;border-radius:6px}
.ttwt-g-bar-t{flex:1;min-width:0;overflow:hidden;font-family:var(--bs-font-heading-family);font-size:22px;line-height:1.1;white-space:nowrap;text-overflow:ellipsis}
.ttwt-g-bar-t small{display:block;margin-top:4px;font-family:var(--bs-font-body-family,sans-serif);font-size:14px;opacity:.75}
.ttwt-g-bar .btn{flex:none;padding:14px 28px}
.whatsapp-float{transition:bottom .35s cubic-bezier(.2,.7,.2,1)}
html.ttwt-bar-on .whatsapp-float{bottom:96px}
body:has(.ttwt-guide){padding-bottom:76px}

@media (max-width:991px){.ttwt-g-top{grid-template-columns:minmax(0,380px) minmax(0,1fr);gap:40px}.ttwt-g-form{grid-template-columns:1fr}.ttwt-g-us-grid{grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:40px}}
@media (max-width:749px){
.ttwt-g-buy{padding:14px 0 48px}
.ttwt-g-buy .nav-breadcrumb{margin-bottom:16px}
.ttwt-g-top{grid-template-columns:minmax(0,1fr);gap:24px}
.ttwt-g-thumbs button{flex-basis:54px}
.ttwt-g-lead{font-size:22px}
.ttwt-g-story{padding:0 0 56px}
.ttwt-g-inside,.ttwt-g-fit,.ttwt-g-us{padding:56px 0}
.ttwt-g-toc{grid-template-columns:minmax(0,1fr)}
.ttwt-g-toc li{gap:16px;padding:18px 0}
.ttwt-g-no{flex-basis:40px;font-size:32px}
.ttwt-g-fit-grid,.ttwt-g-us-grid{grid-template-columns:minmax(0,1fr);gap:32px}
.ttwt-g-not{padding:22px 20px 10px}
.ttwt-g-note{margin-top:40px;padding-left:18px}
.ttwt-g-us figure{max-width:200px}
.ttwt-g-us p{font-size:16px;line-height:1.55}
.ttwt-g-quote{font-size:24px}
.ttwt-g-after,.ttwt-g-head p{font-size:17px}
.ttwt-g-toc strong{font-size:18px}
.ttwt-g-toc p{font-size:15px}
.ttwt-g-fit li{padding:11px 0;font-size:16px}
.ttwt-g-more{padding:56px 0 72px}
.ttwt-g-more .ttwt-pcs{grid-template-columns:repeat(2,minmax(0,1fr))}
.ttwt-g-bar .container{gap:10px}
.ttwt-g-bar img{width:36px;height:45px}
.ttwt-g-bar-t{font-size:18px}
.ttwt-g-bar .btn{padding:12px 16px;font-size:14px}
html.ttwt-bar-on .whatsapp-float{bottom:82px}
body:has(.ttwt-guide){padding-bottom:66px}
}
@media (prefers-reduced-motion:reduce){.ttwt-guide .rv{opacity:1;transform:none;transition:none}.ttwt-g-bar,.whatsapp-float{transition:none}}
