:root{--mist:#f4f6f5;--paper:#ffffff;--lime:#ebe6da;--lime2:#d9d1bf;--ink:#1b2831;--slate:#4a5964;--river:#1d4a66;--river2:#e4edf2;--maple:#a3301c;--sage:#e3ebe1;--sageink:#2f5537;--ochre:#efe5cf;--ochreink:#5c4721;
--serif:"Alegreya",Georgia,"Times New Roman",serif;--sans:"Alegreya Sans","Gill Sans",system-ui,sans-serif;--top:64px;color-scheme:light}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:150px}
body{margin:0;background:var(--mist);color:var(--ink);font:400 18px/1.68 var(--sans);overflow-x:hidden}
img,svg{max-width:100%}
a{color:var(--river);text-underline-offset:3px;text-decoration-thickness:1px;overflow-wrap:anywhere}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--river);outline-offset:3px;border-radius:3px}
h1,h2,h3{font-family:var(--serif);font-weight:700;line-height:1.15;margin:0 0 .5em;color:var(--ink)}
h2{font-size:clamp(1.6rem,1.2rem + 1.4vw,2.2rem)}
p{margin:0 0 1em}
.tr-shell{width:100%;max-width:1160px;margin:0 auto;padding:0 24px}
.tr-skip{position:absolute;left:12px;top:-60px;background:var(--river);color:var(--paper);padding:12px 18px;z-index:200;border-radius:4px}
.tr-skip:focus{top:12px}
main:focus{outline:none}
/* header */
.tr-top{position:sticky;top:0;z-index:60;background:var(--paper);border-bottom:1px solid var(--lime2)}
.tr-top__row{display:flex;align-items:center;gap:14px;min-height:var(--top)}
.tr-logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);min-height:44px}
.tr-logo__word{font:500 1.45rem/1 var(--serif);letter-spacing:.01em}
.tr-logo__word b,.tr-foot__brand b{color:var(--river);font-weight:700}
.tr-badge{font:700 .75rem/1 var(--sans);letter-spacing:.14em;color:var(--river);border:1px solid var(--river);padding:6px 8px;border-radius:3px;white-space:nowrap}
.tr-nav{margin-left:auto}
.tr-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:4px}
.tr-nav a{display:flex;align-items:center;min-height:44px;padding:0 12px;color:var(--ink);text-decoration:none;font-weight:500;border-bottom:2px solid transparent}
.tr-nav a:hover,.tr-nav a[aria-current]{border-bottom-color:var(--maple)}
.tr-menu{display:none;margin-left:auto;min-height:44px;padding:0 16px;font:700 .95rem var(--sans);background:var(--paper);color:var(--river);border:1px solid var(--river);border-radius:4px;cursor:pointer}
/* kicker + disclosure */
.tr-kicker{font:700 .8rem/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--slate);margin:0 0 .7em}
.tr-aff{max-width:68ch;margin:0 0 1.2em;padding:12px 16px;background:var(--paper);border:1px solid var(--lime2);border-left:4px solid var(--river);font-size:.95rem;line-height:1.55;color:var(--ink)}
.tr-aff__k{display:inline-block;font-weight:700;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--river);margin-right:8px}
/* hero */
.tr-hero{background:var(--mist);padding-top:56px}
.tr-hero__in{padding-bottom:12px}
.tr-hero h1{font-size:clamp(2.5rem,1.6rem + 4vw,4.6rem);font-weight:700;letter-spacing:-.01em;margin-bottom:.35em}
.tr-hero h1 em{font-style:italic;font-weight:500;color:var(--maple)}
.tr-hero__lede{max-width:62ch;font-size:1.12rem;color:var(--slate)}
.tr-ribbon{display:block;width:100%;height:150px;margin-top:8px}
/* intro */
.tr-intro{background:var(--paper);border-top:1px solid var(--lime2);border-bottom:1px solid var(--lime2);padding:56px 0}
.tr-intro__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:48px}
.tr-intro p{max-width:68ch}
.tr-h-small{font-size:1.5rem}
.tr-honest{background:var(--lime);padding:16px 18px;border-radius:4px}
.tr-crit{margin:0;padding:0;list-style:none;counter-reset:c}
.tr-crit li{counter-increment:c;position:relative;padding:10px 0 10px 48px;border-top:1px solid var(--lime2)}
.tr-crit li::before{content:counter(c);position:absolute;left:0;top:9px;width:32px;height:32px;border-radius:50%;border:1px solid var(--river);color:var(--river);font:700 1rem/30px var(--serif);text-align:center}
/* filters */
.tr-filters{position:sticky;top:var(--top);z-index:50;background:var(--paper);border-bottom:1px solid var(--lime2)}
.tr-filters__in{display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px;padding-top:10px;padding-bottom:10px}
.tr-filters__set{display:flex;align-items:center;gap:10px;min-width:0;max-width:100%}
.tr-filters__lbl{font:700 .78rem var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--slate)}
.tr-chips{display:flex;gap:6px;flex-wrap:wrap;min-width:0}
.tr-chip{min-height:44px;padding:0 14px;border-radius:999px;border:1px solid var(--lime2);background:var(--mist);color:var(--ink);font:500 .95rem var(--sans);cursor:pointer;white-space:nowrap}
.tr-chip:hover{border-color:var(--river)}
.tr-chip[aria-pressed="true"]{background:var(--river);border-color:var(--river);color:var(--paper)}
.tr-count{margin:0 0 0 auto;font-size:.95rem;color:var(--slate)}
.tr-count b{color:var(--ink)}
/* list */
.tr-list{padding:48px 0 32px}
.tr-list__h{margin-bottom:.6em}
.tr-jump{list-style:none;margin:0 0 40px;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.tr-jump a{display:flex;align-items:center;gap:8px;min-height:48px;padding:6px 12px;background:var(--paper);border:1px solid var(--lime2);border-radius:4px;color:var(--ink);text-decoration:none;font-size:.92rem;line-height:1.25;overflow-wrap:anywhere}
.tr-jump a span{font:700 1rem var(--serif);color:var(--river);white-space:nowrap;flex:none}
.tr-jump a:hover{border-color:var(--river)}
.tr-lands{display:grid;gap:40px}
.tr-land{position:relative;display:grid;grid-template-columns:230px minmax(0,1fr);background:var(--paper);border:1px solid var(--lime2);border-radius:6px;padding-top:0}
.tr-land[hidden]{display:none}
.tr-land--own{border:2px solid var(--maple)}
.tr-land__edge{position:absolute;left:-1px;top:-16px;display:flex;align-items:stretch;gap:0;max-width:calc(100% + 2px);z-index:2}
.tr-rank{display:flex;align-items:center;justify-content:center;min-width:52px;padding:0 10px;height:34px;background:var(--river);color:var(--paper);font:700 1.05rem/1 var(--serif);border-radius:4px 0 0 4px}
.tr-land--own .tr-rank{background:var(--maple)}
.tr-tag{display:flex;align-items:center;padding:0 12px;height:34px;font:700 .8rem/1.15 var(--sans);letter-spacing:.04em;border-radius:0 4px 4px 0;border:1px solid transparent;min-width:0}
.tr-tone-river{background:var(--river2);color:var(--river);border-color:#c6d6e0}
.tr-tone-ochre{background:var(--ochre);color:var(--ochreink);border-color:#ddd0b2}
.tr-tone-sage{background:var(--sage);color:var(--sageink);border-color:#c9d8c6}
.tr-tone-maple{background:var(--paper);color:var(--maple);border-color:var(--maple)}
.tr-strip{background:var(--river2);border-right:1px solid #c6d6e0;padding:40px 20px 24px;border-radius:6px 0 0 6px}
.tr-land--own .tr-strip{border-radius:4px 0 0 4px}
.tr-strip__no{margin:0 0 16px;font:700 .78rem var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--river)}
.tr-strip__no b{display:block;font:700 3.2rem/1 var(--serif);letter-spacing:0;color:var(--river)}
.tr-land--own .tr-strip__no b{color:var(--maple)}
.tr-strip dl{margin:0;display:grid;gap:12px}
.tr-strip dt{font:700 .78rem var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--slate)}
.tr-strip dd{margin:0;font-size:.95rem;line-height:1.45}
.tr-land__main{padding:40px 32px 28px;min-width:0}
.tr-land__head{display:flex;gap:18px;align-items:flex-start;margin-bottom:14px}
.tr-mono{flex:0 0 76px;height:76px;display:flex;align-items:center;justify-content:center;background:var(--lime);border:1px solid var(--lime2);box-shadow:inset 0 0 0 4px var(--lime),inset 0 0 0 5px var(--lime2);border-radius:4px}
.tr-mono span{font:700 1.6rem/1 var(--serif);color:var(--river);letter-spacing:.04em}
.tr-land--own .tr-mono span{color:var(--maple)}
.tr-land__title{min-width:0}
.tr-land h3{font-size:clamp(1.4rem,1.1rem + 1vw,1.9rem);margin:0 0 .2em}
.tr-land__where{margin:0;color:var(--slate)}
.tr-land__was{margin:.2em 0 0;font-size:.92rem;color:var(--slate);font-style:italic}
.tr-land__owner{max-width:68ch;margin:0 0 1em;padding:12px 16px;border-left:4px solid var(--maple);background:var(--mist);font-size:.98rem}
.tr-land__owner--quiet{border-left-color:var(--river)}
.tr-land__rooms,.tr-best,.tr-notes{max-width:68ch}
.tr-land__cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;margin:6px 0 16px}
.tr-mini{font:700 .78rem var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--slate);margin:0 0 .5em}
.tr-facs{margin:0;padding:0;list-style:none}
.tr-facs li{padding:5px 0 5px 20px;position:relative;border-bottom:1px dotted var(--lime2)}
.tr-facs li::before{content:"";position:absolute;left:2px;top:15px;width:8px;height:2px;background:var(--river)}
.tr-hl{background:var(--lime);border-radius:4px;padding:16px 18px;align-self:start}
.tr-hl p:last-child{margin:0;font:500 1.1rem/1.45 var(--serif)}
.tr-notes{font-size:.98rem;color:var(--slate)}
.tr-land__act{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin:4px 0 14px}
.tr-cta{display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 22px;background:var(--river);color:var(--paper);border-radius:4px;font:700 1rem var(--sans);text-decoration:none;white-space:nowrap;overflow-wrap:normal}
.tr-cta:hover{background:#163a51}
.tr-land--own .tr-cta{background:var(--maple)}
.tr-land--own .tr-cta:hover{background:#86271a}
.tr-land__trip{font-size:.92rem;color:var(--slate)}
.tr-more{border-top:1px solid var(--lime2);padding-top:6px}
.tr-more summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:700;color:var(--river)}
.tr-more p{max-width:68ch}
.tr-more__src{font-size:.92rem;color:var(--slate)}
.tr-empty{padding:20px;background:var(--paper);border:1px dashed var(--lime2);text-align:center}
/* compare */
.tr-cmp{padding:56px 0;background:var(--paper);border-top:1px solid var(--lime2);border-bottom:1px solid var(--lime2)}
.tr-sec__lead{max-width:62ch;color:var(--slate)}
.tr-grid{width:100%;border-collapse:collapse;font-size:.95rem;line-height:1.45}
.tr-grid caption{text-align:left;font:500 1rem var(--serif);font-style:italic;color:var(--slate);padding-bottom:10px}
.tr-grid th,.tr-grid td{text-align:left;vertical-align:top;padding:12px 12px;border-bottom:1px solid var(--lime2)}
.tr-grid thead th{font:700 .78rem var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--slate);background:var(--mist);border-bottom:2px solid var(--river)}
.tr-grid tbody th{font-weight:700}
.tr-grid tbody th a{text-decoration:none}
/* faq */
.tr-faq{padding:56px 0}
.tr-faq__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:40px}
.tr-q{background:var(--paper);border:1px solid var(--lime2);border-radius:4px;margin-bottom:10px}
.tr-q summary{cursor:pointer;min-height:48px;display:flex;align-items:center;padding:10px 18px;font:700 1.08rem/1.35 var(--serif)}
.tr-q p{padding:0 18px 14px;margin:0;max-width:68ch}
/* method */
.tr-method{padding:56px 0 64px;background:var(--lime)}
.tr-method__in>p{max-width:68ch}
.tr-method .tr-kicker{color:var(--ink)}
/* inner pages */
.tr-pagehead{background:var(--paper);border-bottom:1px solid var(--lime2);padding:52px 0 28px}
.tr-pagehead h1{font-size:clamp(2.1rem,1.5rem + 2.6vw,3.3rem)}
.tr-lead{max-width:62ch;font-size:1.1rem;color:var(--slate)}
.tr-dated{font-size:.9rem;color:var(--slate);margin:0}
.tr-docgrid{display:grid;grid-template-columns:240px minmax(0,1fr);gap:48px;padding-top:40px;padding-bottom:64px}
.tr-docnav{position:sticky;top:calc(var(--top) + 20px);align-self:start}
.tr-docnav__h{font:700 .78rem var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--slate)}
.tr-docnav ol{list-style:none;margin:0;padding:0;border-left:2px solid var(--lime2)}
.tr-docnav a{display:flex;gap:10px;align-items:baseline;min-height:44px;padding:10px 0 10px 14px;color:var(--ink);text-decoration:none;font-size:.95rem;line-height:1.35}
.tr-docnav a span{font:700 .9rem var(--serif);color:var(--river)}
.tr-docnav a:hover{color:var(--river)}
.tr-docbody{min-width:0;max-width:68ch}
.tr-part{padding-bottom:20px;margin-bottom:28px;border-bottom:1px solid var(--lime2)}
.tr-part h2{display:flex;gap:12px;align-items:baseline;font-size:1.55rem}
.tr-part__n{font:700 1rem var(--sans);color:var(--maple)}
.tr-part ul{padding-left:1.2em}
.tr-part li{margin-bottom:.4em}
/* form */
.tr-form{display:grid;gap:16px;background:var(--paper);border:1px solid var(--lime2);border-radius:6px;padding:24px}
.tr-field{display:grid;gap:6px}
.tr-field label{font-weight:700}
.tr-field input,.tr-field select,.tr-field textarea{width:100%;min-height:46px;padding:10px 12px;border:1px solid #8c979e;border-radius:4px;background:var(--paper);color:var(--ink);font:400 1rem var(--sans)}
.tr-check{display:flex;gap:10px;align-items:flex-start;font-size:.95rem}
.tr-check input{width:22px;height:22px;margin-top:3px;flex:0 0 auto}
.tr-form__err{color:var(--maple);font-weight:700;margin:0}
.tr-form__hint{font-size:.9rem;color:var(--slate);margin:0}
/* buttons */
.tr-btn{min-height:44px;padding:0 18px;border-radius:4px;font:700 .95rem var(--sans);cursor:pointer;white-space:nowrap}
.tr-btn--solid{background:var(--river);color:var(--paper);border:1px solid var(--river)}
.tr-btn--line{background:var(--paper);color:var(--river);border:1px solid var(--river)}
.tr-textbtn{background:none;border:0;padding:0;min-height:44px;font:inherit;color:var(--river);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
/* footer */
.tr-foot{background:var(--paper);border-top:3px solid var(--river);padding:44px 0 110px;font-size:.98rem}
.tr-foot__grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:40px}
.tr-foot__brand{display:flex;align-items:center;gap:10px;font:500 1.3rem var(--serif);margin-bottom:.6em}
.tr-foot__say{max-width:56ch;color:var(--slate)}
.tr-foot__op{font-style:normal;line-height:1.6}
.tr-foot__h{font:700 .78rem var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--slate)}
.tr-foot__links{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 16px}
.tr-foot__links a{display:flex;align-items:center;min-height:44px}
.tr-foot__aff,.tr-foot__stay{max-width:80ch;margin-top:18px;padding-top:14px;border-top:1px solid var(--lime2);color:var(--slate)}
.tr-foot__stay{color:var(--ink)}
.tr-foot__fine{display:flex;flex-wrap:wrap;gap:6px 24px;font-size:.88rem;color:var(--slate);margin:14px 0 0}
/* consent */
.tr-consent{position:fixed;left:12px;right:12px;bottom:12px;z-index:90;max-width:860px;margin:0 auto;display:flex;align-items:center;gap:14px;background:var(--paper);border:1px solid var(--lime2);border-top:3px solid var(--river);border-radius:6px;padding:12px 14px;box-shadow:0 6px 18px rgba(27,40,49,.12)}
.tr-consent[hidden]{display:none}
.tr-consent p{margin:0;font-size:.9rem;line-height:1.45;flex:1 1 auto;min-width:0}
.tr-consent__btns{display:grid;grid-template-columns:repeat(3,auto);gap:6px;flex:0 0 auto}
.tr-consent .tr-btn{padding:0 12px;font-size:.86rem}
.tr-prefs{max-width:520px;width:calc(100% - 24px);border:1px solid var(--lime2);border-radius:6px;padding:24px;background:var(--paper);color:var(--ink)}
.tr-prefs::backdrop{background:rgba(27,40,49,.35)}
.tr-prefs h2{font-size:1.5rem}
.tr-switch{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:12px 0;border-top:1px solid var(--lime2)}
.tr-switch small{display:block;font-size:.9rem;color:var(--slate);line-height:1.45}
.tr-switch input{width:24px;height:24px;flex:0 0 auto;margin-top:4px}
.tr-gpcnote{color:var(--maple)!important;font-weight:700}
.tr-prefs__btns{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;margin-top:12px}
/* responsive */
@media (max-width:960px){
 .tr-land{grid-template-columns:minmax(0,1fr)}
 .tr-strip{border-right:0;border-bottom:1px solid #c6d6e0;border-radius:6px 6px 0 0;padding:52px 20px 18px}
 .tr-strip__no{display:flex;align-items:baseline;gap:10px}
 .tr-strip__no b{font-size:2.2rem}
 .tr-strip dl{grid-template-columns:repeat(2,minmax(0,1fr))}
 .tr-land__main{padding:24px 22px 20px}
 .tr-docgrid{grid-template-columns:minmax(0,1fr);gap:16px}
 .tr-docnav{position:static}
 .tr-faq__grid,.tr-intro__grid{grid-template-columns:minmax(0,1fr);gap:24px}
}
@media (max-width:820px){
 .tr-menu{display:block}
 .tr-nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);border-bottom:1px solid var(--lime2);margin:0}
 .tr-nav.is-open{display:block}
 .tr-nav ul{flex-direction:column;padding:6px 16px 12px}
 .tr-top__row{position:relative}
 .tr-jump{grid-template-columns:repeat(2,minmax(0,1fr))}
 .tr-grid thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
 .tr-grid,.tr-grid tbody,.tr-grid tr,.tr-grid th,.tr-grid td{display:block;width:100%}
 .tr-grid caption{display:block}
 .tr-grid tr{background:var(--paper);border:1px solid var(--lime2);border-radius:6px;margin-bottom:12px;padding:6px 0}
 .tr-grid th,.tr-grid td{display:grid;grid-template-columns:minmax(0,7.5em) minmax(0,1fr);gap:10px;border-bottom:1px dotted var(--lime2);padding:8px 14px}
 .tr-grid tr>*:last-child{border-bottom:0}
 .tr-grid th::before,.tr-grid td::before{content:attr(data-label);font:700 .75rem/1.6 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--slate)}
 .tr-filters__in{flex-direction:column;align-items:stretch;gap:6px}
 .tr-filters__set{display:grid;grid-template-columns:3.4em minmax(0,1fr)}
 .tr-chips{flex-wrap:wrap;overflow:visible}
.tr-filters{position:static}
 .tr-chip{min-height:44px;padding:0 12px;font-size:.9rem}
 .tr-count{margin:0;font-size:.88rem}
 html{scroll-padding-top:200px}
}
@media (max-width:600px){
 body{font-size:17px}
 .tr-shell{padding:0 16px}
 .tr-badge{font-size:.75rem;padding:5px 6px;letter-spacing:.08em}
 .tr-logo__word{font-size:1.25rem}
 .tr-hero{padding-top:36px}
 .tr-ribbon{height:96px}
 .tr-intro,.tr-cmp,.tr-faq,.tr-method{padding:40px 0}
 .tr-land__cols{grid-template-columns:minmax(0,1fr)}
 .tr-land__head{gap:12px}
 .tr-mono{flex-basis:58px;height:58px}
 .tr-mono span{font-size:1.25rem}
 .tr-strip dl{grid-template-columns:minmax(0,1fr)}
 .tr-land__main{padding:20px 16px 18px}
 .tr-strip{padding:50px 16px 16px}
 .tr-tag{font-size:.75rem;padding:0 8px;height:auto;min-height:34px;line-height:1.2}
 .tr-rank{height:auto;min-height:34px}
 .tr-consent{flex-direction:column;align-items:stretch;gap:8px;left:8px;right:8px;bottom:8px;padding:10px}
 .tr-consent p{font-size:.82rem}
 .tr-consent__btns{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}
 .tr-consent .tr-btn{padding:0 4px;font-size:.75rem;white-space:normal;line-height:1.1}
 .tr-foot__grid{grid-template-columns:minmax(0,1fr);gap:20px}
 .tr-form{padding:16px}
}
@media (max-width:360px){
 .tr-badge{display:none}
 .tr-cta{padding:0 16px;font-size:.95rem}
 .tr-filters__set{grid-template-columns:minmax(0,1fr)}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}.tr-chip,.tr-cta,.tr-jump a{transition:background-color .15s,border-color .15s}}
