/*
Theme Name: Tevaiora
Author: {{HOTEL_NAME}}
Description: Airlie Beach, Whitsundays, Queensland — tevaiora.com.
Version: 1.4.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: tevaiora
*/

:root{--paper:#f7f3ea;--ink:#1b2a28;--primary:#2f6b61;--dark:#1d443e;--accent:#c4653f;--line:#ded5c4;--shell:#fffdf8}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Sora",system-ui,sans-serif;font-size:16px;line-height:1.62;overflow-wrap:break-word}
h1,h2,h3,h4{font-family:"Newsreader","Iowan Old Style",serif;font-weight:600;line-height:1.14;margin:0 0 .6rem;letter-spacing:-.01em}
h1{font-size:2.05rem}h2{font-size:1.55rem}h3{font-size:1.18rem}h4{font-size:1rem}
p{margin:0 0 1.05rem}
a{color:var(--dark)}
a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
img,svg{max-width:100%;height:auto;display:block}
.tv-skip{position:absolute;left:-9999px;top:0;background:var(--dark);color:#fff;padding:.7rem 1rem;z-index:60}
.tv-skip:focus{left:0}
.tv-wrap{width:100%;max-width:1120px;margin:0 auto;padding:0 20px}

.tv-top{background:var(--shell);border-bottom:1px solid var(--line);position:relative;z-index:30}
.tv-top__bar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 0}
.tv-top__mark{display:flex;flex-direction:column;min-width:0;text-decoration:none;color:var(--ink)}
.tv-top__mark b{font-family:"Newsreader",serif;font-size:1.12rem;font-weight:600;letter-spacing:.01em}
.tv-top__mark span{display:block;font-size:.66rem;letter-spacing:.17em;text-transform:uppercase;color:var(--primary)}
.tv-top__toggle{flex:0 0 auto;font:inherit;font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;background:none;border:1px solid var(--line);border-radius:2px;padding:.46rem .7rem;color:var(--ink)}
.tv-nav{display:none;padding:0 0 14px}
.tv-nav[data-open="yes"]{display:block}
.tv-nav__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.tv-nav__list a{display:block;padding:.5rem 0;text-decoration:none;font-size:.95rem;border-bottom:1px solid var(--line)}
.tv-nav__list a[aria-current="page"]{color:var(--accent)}

.tv-hero{position:relative;background:var(--dark)}
.tv-hero__shot{width:100%;height:clamp(300px,58vw,470px);object-fit:cover;opacity:.74}
.tv-hero__over{position:absolute;inset:auto 0 0 0;padding:22px 0 26px;background:linear-gradient(to top,rgba(14,28,26,.82),rgba(14,28,26,0))}
.tv-hero__over h1{color:#fff;margin:0 0 .35rem;max-width:18ch}
.tv-hero__over p{color:#eae2d2;margin:0;font-size:.95rem;max-width:46ch}

.tv-strip{background:var(--dark);color:#e9e2d3}
.tv-strip__list{list-style:none;margin:0;padding:18px 0;display:grid;gap:12px;grid-template-columns:1fr}
.tv-strip__list b{display:block;font-family:"Newsreader",serif;font-size:1.02rem;color:#fff}
.tv-strip__list span{font-size:.85rem}

.tv-band{padding:44px 0;border-bottom:1px solid var(--line)}
.tv-band--pale{background:var(--shell)}
.tv-band__kick{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--primary);margin:0 0 .5rem}
.tv-band__pair{display:grid;gap:24px}
.tv-band__text p:last-child{margin-bottom:0}

.tv-room{border-top:1px solid var(--line);padding:26px 0}
.tv-room:first-of-type{border-top:0}
.tv-room__shot{margin:0 0 16px}
.tv-room__facts{list-style:none;margin:.9rem 0 0;padding:0;display:grid;gap:4px;font-size:.88rem}
.tv-room__facts li{display:flex;gap:10px;border-bottom:1px dotted var(--line);padding:.3rem 0}
.tv-room__facts b{flex:0 0 8.5rem;font-weight:500;color:var(--primary);font-family:"Sora",sans-serif}

.tv-draw{background:var(--shell);border:1px solid var(--line);padding:16px}
.tv-draw figcaption{font-size:.82rem;color:#4b5a57;margin-top:10px}

.tv-cta{display:inline-block;margin-top:.4rem;background:var(--primary);color:#fff;text-decoration:none;padding:.66rem 1.1rem;font-size:.9rem;letter-spacing:.04em}
.tv-cta:hover{background:var(--dark)}

.tv-facts{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.tv-facts li{background:var(--shell);border-left:3px solid var(--accent);padding:12px 14px}
.tv-band__pair--even{grid-template-columns:1fr}
.tv-facts b{display:block;font-size:.7rem;letter-spacing:.17em;text-transform:uppercase;color:var(--primary)}

.tv-page{padding:34px 0 40px}
.tv-page__lede{font-size:1.06rem;color:#36453f;max-width:62ch}
.tv-prose{max-width:66ch}
.tv-prose h2{margin-top:1.9rem}
.tv-prose ul{padding-left:1.1rem}
.tv-prose li{margin-bottom:.4rem}
.tv-prose table{display:block;overflow-x:auto;border-collapse:collapse;width:100%;font-size:.9rem}
.tv-prose th,.tv-prose td{border:1px solid var(--line);padding:.5rem .6rem;text-align:left;vertical-align:top}

.tv-note{border-top:1px solid var(--line);padding:16px 0 0;font-size:.8rem;color:#55635f;max-width:70ch}

.tv-foot{background:var(--dark);color:#d9d2c3;padding:34px 0 26px;font-size:.88rem}
.tv-foot a{color:#f0e9da}
.tv-foot__cols{display:grid;gap:22px}
.tv-foot h2{color:#fff;font-size:1rem;margin-bottom:.5rem}
.tv-foot ul{list-style:none;margin:0;padding:0}
.tv-foot li{margin-bottom:.3rem}
.tv-foot__line{margin:20px 0 0;padding-top:14px;border-top:1px solid rgba(255,255,255,.17)}
.tv-foot__btn{font:inherit;background:none;border:0;color:#f0e9da;text-decoration:underline;padding:0;cursor:pointer}

.tv-gate{position:fixed;inset:0;background:rgba(16,30,28,.96);color:#fff;z-index:70;display:flex;align-items:flex-start;justify-content:center;overflow-y:auto;padding:24px 16px 140px}
.tv-gate[hidden]{display:none}
.tv-gate__card{background:var(--dark);border:1px solid rgba(255,255,255,.2);max-width:420px;width:100%;padding:26px 22px;margin-top:8vh}
.tv-gate__card h2{color:#fff}
.tv-gate__row{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.tv-gate__row button{font:inherit;padding:.6rem 1.1rem;border:1px solid #fff;background:none;color:#fff;cursor:pointer}
.tv-gate__row button:first-child{background:#fff;color:var(--dark)}
.tv-gate__no{margin-top:14px;font-size:.9rem;color:#f3d9cd}
.tv-gate__no[hidden]{display:none}

.tv-bar{position:fixed;left:0;right:0;bottom:0;background:var(--shell);border-top:2px solid var(--primary);padding:14px 0;z-index:80;font-size:.86rem}
.tv-bar[hidden]{display:none}
.tv-bar__in{display:grid;gap:10px}
.tv-bar__row{display:flex;gap:10px;flex-wrap:wrap}
.tv-bar__row button{font:inherit;padding:.5rem .95rem;border:1px solid var(--primary);background:none;color:var(--primary);cursor:pointer}
.tv-bar__row button:first-child{background:var(--primary);color:#fff}

.tv-stop{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:30px 20px;text-align:center}

@media (min-width:700px){
  h1{font-size:2.6rem}h2{font-size:1.85rem}
  .tv-strip__list{grid-template-columns:repeat(3,1fr);gap:22px}
  .tv-band__pair{grid-template-columns:1.1fr .9fr;gap:34px;align-items:start}
  .tv-band__pair--even{grid-template-columns:1fr 1fr}
  .tv-band--flip .tv-band__text{order:2}
  .tv-facts{grid-template-columns:repeat(2,1fr)}
  .tv-room__pair{display:grid;grid-template-columns:1.15fr .85fr;gap:28px;align-items:start}
  .tv-room__shot{margin:0}
  .tv-foot__cols{grid-template-columns:1.3fr 1fr 1fr}
  .tv-bar__in{grid-template-columns:1fr auto;align-items:center}
}
@media (min-width:980px){
  .tv-top__toggle{display:none}
  .tv-nav{display:block;padding:0}
  .tv-top__bar{padding:18px 0}
  .tv-nav__list{flex-direction:row;gap:22px}
  .tv-nav__list a{border-bottom:0;padding:0;font-size:.9rem}
  .tv-hero__shot{height:min(74vh,520px)}
}
