/* Tinas Rum 5.0 — cohesive editorial and booking refinements. */
.trb-luxury .site-nav{gap:clamp(12px,1.45vw,23px)}
.trb-luxury .site-nav>a,.trb-luxury .nav-dropdown>button{white-space:nowrap}
@media (min-width:981px) and (max-width:1220px){
  .trb-luxury .header-inner{gap:16px}
  .trb-luxury .site-nav{gap:11px}
  .trb-luxury .site-nav>a,.trb-luxury .nav-dropdown>button{font-size:.7rem}
  .trb-luxury .brand small{display:none}
}

/* Decorative numbering is intentionally gone; meaningful dates, prices and durations remain. */
.trb-luxury .tr-card-number{display:none!important}
.trb-luxury .tr-card{justify-content:flex-end;isolation:isolate;background:linear-gradient(145deg,#fffdf9 0%,#f6f0e8 100%)}
.trb-luxury .tr-card::before{content:"";position:absolute;right:-55px;top:-55px;width:145px;height:145px;border-radius:50%;background:radial-gradient(circle,rgba(181,111,87,.16),rgba(181,111,87,0) 70%);z-index:-1}
.trb-luxury .tr-card:nth-child(2n)::before{background:radial-gradient(circle,rgba(63,91,75,.17),rgba(63,91,75,0) 70%)}
.trb-luxury .tr-card h3{max-width:11ch;font-size:clamp(1.75rem,3vw,2.35rem)}
.trb-luxury .tr-card p{max-width:32ch}
@media (min-width:981px){
  .trb-luxury-home .tr-card:nth-child(7){grid-column:span 5}
  .trb-luxury-home .tr-card:nth-child(8){grid-column:span 7}
}

.trb-luxury .trb-knowledge-grid h3{margin-top:48px}
.trb-luxury .trb-editorial-grid article{display:flex;min-height:260px;flex-direction:column;justify-content:flex-end}
.trb-luxury .trb-editorial-grid article h3{margin-top:0}
.trb-luxury .trb-image-story-item figcaption{display:none!important}

/* Booking feels like a calm product flow, with the amount never hidden. */
.trb-luxury .trb-price-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.trb-luxury .trb-price-grid .tr-session{display:flex;min-height:390px;flex-direction:column;align-items:flex-start}
.trb-luxury .trb-price-grid .tr-session p{flex:1}
.trb-price{display:block;margin:20px 0;color:var(--tr-forest);font-family:var(--tr-serif);font-size:clamp(1.65rem,3vw,2.2rem);font-weight:500}
.trb-booking-intro{max-width:720px;margin:0 auto 32px;text-align:center}
.trb-booking-intro h2{margin-top:12px}
.trb-booking-page .trb-service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.trb-booking-page .trb-service{position:relative;display:flex;min-height:300px;flex-direction:column;align-items:flex-start;gap:15px;padding:25px}
.trb-booking-page .trb-service-time{min-width:70px}
.trb-booking-page .trb-service-copy{flex:1}
.trb-booking-page .trb-service-copy b{font-family:var(--tr-serif);font-size:1.4rem;font-weight:500;line-height:1.13}
.trb-booking-page .trb-service-copy em{order:2;color:var(--tr-clay);font-family:var(--tr-serif);font-size:1.22rem;font-style:normal;font-weight:600}
.trb-booking-page .trb-service-copy small{order:3;margin-top:3px}
.trb-price-grid .trb-clip-discount{display:block;margin-top:8px;color:var(--tr-clay);font-size:.72rem;font-weight:700;line-height:1.45}
.trb-booking-page .trb-service .trb-arrow{position:absolute;right:23px;top:38px}
.trb-booking-page .trb-step-heading{display:block}
.trb-booking-page .trb-progress{max-width:620px}
.trb-booking-page .trb-progress span{position:relative;padding-left:18px}
.trb-booking-page .trb-progress span::before{content:"";position:absolute;left:0;width:7px;height:7px;border-radius:50%;background:currentColor;opacity:.45}
.trb-booking-page .trb-progress span.is-active::before{opacity:1;background:var(--tr-clay);box-shadow:0 0 0 5px rgba(181,111,87,.12)}

/* Free consultation */
.trb-consultation{background:#20372d;color:#fff;overflow:hidden}
.trb-consultation-card{position:relative;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(240px,.65fr);gap:clamp(40px,8vw,110px);align-items:center;padding-block:clamp(20px,4vw,55px)}
.trb-consultation-card::after{content:"";position:absolute;right:-8%;top:-45%;width:420px;height:420px;border:1px solid rgba(255,255,255,.13);border-radius:50%;box-shadow:0 0 0 65px rgba(255,255,255,.025),0 0 0 130px rgba(255,255,255,.018);pointer-events:none}
.trb-consultation h2{color:#fff}
.trb-consultation p{max-width:690px;color:rgba(255,255,255,.74)}
.trb-consultation-details{display:flex;flex-wrap:wrap;gap:9px;margin-top:25px}
.trb-consultation-details span{padding:8px 12px;border:1px solid rgba(255,255,255,.18);border-radius:999px;color:rgba(255,255,255,.8);font-size:.75rem;font-weight:750}
.trb-consultation-action{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start}
.trb-consultation-action strong{font-family:var(--tr-serif);font-size:clamp(3.3rem,7vw,5.4rem);font-weight:400;line-height:.9}
.trb-consultation-action small{margin:10px 0 25px;color:#d7c9bb;text-transform:uppercase;letter-spacing:.14em}

/* Page-specific sections */
.trb-intimacy{background:linear-gradient(135deg,#efe3db,#f8f4ee)}
.trb-intimacy-note,.trb-clipcard-sample{padding:clamp(30px,4vw,48px);border-radius:30px;background:#253a31;color:#fff;box-shadow:0 28px 70px rgba(35,51,45,.14)}
.trb-intimacy-note>span,.trb-clipcard-sample>span{color:#dcb39f;font-size:.69rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.trb-intimacy-note ul{display:grid;gap:14px;margin:30px 0;padding:0;list-style:none}
.trb-intimacy-note li{position:relative;padding-left:23px;color:rgba(255,255,255,.84)}
.trb-intimacy-note li::before{content:"";position:absolute;left:0;top:.65em;width:9px;height:1px;background:#dcb39f}
.trb-intimacy-note p,.trb-clipcard-sample p{color:rgba(255,255,255,.62);font-size:.82rem}
.trb-crisis-anchors{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.trb-crisis-anchors article{display:flex;min-height:310px;flex-direction:column;justify-content:flex-end;padding:clamp(30px,5vw,56px);border-radius:30px;background:#fff;box-shadow:0 20px 55px rgba(35,51,45,.07)}
.trb-crisis-anchors article:last-child{background:#283b33;color:#fff}
.trb-crisis-anchors small{margin-bottom:auto;color:var(--tr-clay);font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.trb-crisis-anchors article:last-child p{color:rgba(255,255,255,.68)}

.trb-reframe-options{display:grid;gap:10px}
.trb-reframe-options button{width:100%;text-align:left;background:#fff!important;color:var(--tr-forest)!important;border:1px solid var(--tr-line)!important}
.trb-reframe-options button:hover,.trb-reframe-options button.is-active{border-color:var(--tr-clay)!important;background:#f3e7dc!important;transform:translateX(4px)}
.trb-reframe [data-reframe-output]{margin:4px 0 0;font-family:var(--tr-serif);font-size:1.2rem}

/* Breathing guide: six exact 4/6 cycles in one minute. */
.trb-breathe-readout{display:flex;align-items:baseline;gap:16px;margin-top:28px;padding-top:22px;border-top:1px solid rgba(35,51,45,.12)}
.trb-breathe-readout strong{min-width:94px;color:var(--tr-forest);font-family:var(--tr-serif);font-size:2.4rem;font-weight:500;font-variant-numeric:tabular-nums}
.trb-breathe-readout span{color:var(--tr-ink-soft);font-size:.82rem}
.trb-breathe>[data-breathe-orb]{position:relative;display:flex!important;flex-direction:column;gap:4px}
.trb-breathe>[data-breathe-orb] b{font-family:var(--tr-serif);font-size:2rem;font-weight:400;font-variant-numeric:tabular-nums}
.trb-breathe>[data-breathe-orb].is-running{animation:trb-breath-v5 10s cubic-bezier(.4,0,.2,1) infinite}
@keyframes trb-breath-v5{0%{transform:scale(.82)}40%{transform:scale(1.04)}100%{transform:scale(.82)}}

.trb-clipcard-sample h3{margin:15px 0 28px;color:#fff}
.trb-clipcard-sample>div{display:flex;gap:10px;margin:0 0 28px}
.trb-clipcard-sample i{width:33px;height:33px;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:#d6ae99;box-shadow:inset 0 0 0 7px #253a31}
.trb-clipcard-sample i:nth-child(n+4){background:transparent}
.trb-clipcard-sample a{color:#fff;font-weight:750}

@media (max-width:980px){
  .trb-luxury .site-nav{gap:2px}
  .trb-luxury .trb-price-grid,.trb-booking-page .trb-service-grid{grid-template-columns:1fr 1fr}
  .trb-consultation-card{grid-template-columns:1fr;gap:35px}
}
@media (max-width:720px){
  /* booking.css hid the old numbered labels at phone width; v5 uses the
     words themselves as the progress indicator, so they must stay readable. */
  .trb-booking-page .trb-progress span{font-size:.58rem}
  .trb-booking-page .trb-progress span b{display:none}
  .trb-luxury .trb-price-grid,.trb-booking-page .trb-service-grid,.trb-crisis-anchors{grid-template-columns:1fr}
  .trb-luxury .trb-price-grid .tr-session{min-height:330px}
  .trb-booking-page .trb-service{min-height:0}
  .trb-consultation-card::after{right:-60%;top:45%}
  .trb-breathe-readout{align-items:flex-start;flex-direction:column;gap:2px}
}
@media (prefers-reduced-motion:reduce){
  .trb-breathe>[data-breathe-orb].is-running{animation:none}
}
