/**
 * TTB Resources Library / Homepage Preview v1.0.9.
 * Intentional visual break after navy qualification section; warm white surfaces,
 * disciplined Roboto Slab/Roboto typographic system, one editorial feature.
 */
.ttb-res-preview,.ttb-res-page,.ttb-res-single{--tr-navy:#1a2847;--tr-deep:#173650;--tr-gold:#d4a574;--tr-cream:#f7f2e8;--tr-ink:#172b3a;--tr-grey:#66717c;--tr-line:#dfe5e5;font-family:"Roboto",Arial,sans-serif;color:var(--tr-ink)}
.ttb-res-preview *,.ttb-res-page *,.ttb-res-single *{box-sizing:border-box}
.ttb-res-preview{position:relative;isolation:isolate;padding:clamp(72px,7vw,112px) 0 clamp(68px,6vw,95px);background:#fff;border-top:1px solid #e8e5e0;overflow:hidden}
.ttb-res-preview:before{content:"";position:absolute;top:0;right:0;width:31%;height:270px;background:linear-gradient(135deg,transparent 49.5%,rgba(212,165,116,.22) 50%,transparent 50.3%);pointer-events:none;z-index:-1}
.ttb-res-eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 18px!important;color:#986a3f;font:700 11px/1.4 "Roboto",Arial,sans-serif;letter-spacing:.18em;text-transform:uppercase}
.ttb-res-eyebrow>span{display:block;flex:0 0 31px;height:2px;background:#d4a574}
.ttb-res-preview__intro{display:grid;grid-template-columns:minmax(0,1.17fr) minmax(245px,.68fr);align-items:end;gap:clamp(35px,8vw,120px);margin-bottom:39px}
.ttb-res-preview__intro h2{max-width:685px;margin:0;color:#1a2847;font:700 clamp(31px,3.25vw,44px)/1.2 "Roboto Slab",Georgia,serif;letter-spacing:-.032em;text-wrap:balance}
.ttb-res-preview__aside{padding:0 0 3px 23px;border-left:2px solid #d4a574}
.ttb-res-preview__aside p{margin:0 0 13px;color:#4e6070;font-size:15px;line-height:1.66}
.ttb-res-preview__browse{display:inline-flex;align-items:center;gap:19px;color:#1a2847;font-size:14px;font-weight:700;text-decoration:none;white-space:normal}
.ttb-res-preview__browse span{font-size:21px;line-height:1;color:#a87949;transition:transform .2s}
.ttb-res-preview__browse:hover span{transform:translate(3px,-3px)}
.ttb-res-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:clamp(16px,2vw,26px)}
.ttb-res-grid>*{min-width:0}
.ttb-res-card{position:relative;display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #e1e6e7;box-shadow:0 12px 31px rgba(24,48,69,.055);transition:box-shadow .22s,transform .22s}
.ttb-res-card:hover{transform:translateY(-4px);box-shadow:0 22px 45px rgba(24,48,69,.11)}
.ttb-res-card--lead{background:#faf7f1;border-color:#e8dfd2}
.ttb-res-card--lead:after{position:absolute;content:"";height:3px;bottom:0;left:0;right:0;background:#d4a574;pointer-events:none}
.ttb-res-card__media{position:relative;display:block;overflow:hidden;aspect-ratio:16/10;background:#edf0ee;text-decoration:none}
.ttb-res-card__image{display:block;width:100%;height:100%;object-fit:cover;transform:scale(1.001);transition:transform .45s cubic-bezier(.2,.75,.3,1)}
.ttb-res-card:hover .ttb-res-card__image{transform:scale(1.045)}
.ttb-res-card__category{position:absolute;bottom:15px;left:17px;max-width:calc(100% - 34px);padding:8px 13px;background:#fff;color:#203c54;font:700 11px/1.15 "Roboto",Arial,sans-serif;letter-spacing:.085em;text-transform:uppercase;border-left:3px solid #d4a574;box-shadow:0 4px 15px rgba(0,0,0,.08)}
.ttb-res-card__media-fallback{position:relative;display:flex;width:100%;height:100%;align-items:center;justify-content:center;background:radial-gradient(circle at 85% 10%,rgba(212,165,116,.23),transparent 52%),linear-gradient(145deg,#e9ece8,#f5f1e7);overflow:hidden}
.ttb-res-card__media-fallback:before{content:"";position:absolute;top:-60px;right:8%;width:220px;height:220px;border:1px solid rgba(31,68,91,.18);border-radius:50%}
.ttb-res-card__media-fallback:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,transparent,transparent 28px,rgba(23,53,80,.035) 29px,transparent 30px)}
.ttb-res-card__media-fallback>span{position:relative;z-index:1;display:grid;place-items:center;width:84px;height:84px;border:1px solid rgba(25,58,82,.35);color:#1a2847;font:700 25px/1 "Roboto Slab",Georgia,serif;letter-spacing:-.03em;background:rgba(255,255,255,.65)}
.ttb-res-card__media-fallback i{position:absolute;left:8%;bottom:20%;width:60%;height:1px;background:#b88b59;transform:rotate(-11deg)}
.ttb-res-card__media-fallback b{position:absolute;bottom:17px;right:18px;color:#496377;font:700 10px/1 "Roboto",Arial,sans-serif;text-transform:uppercase;letter-spacing:.12em}
.ttb-res-card__content{display:flex;flex:1;flex-direction:column;padding:clamp(22px,2vw,29px)}
.ttb-res-card__eyebrow{margin:0 0 10px;color:#a37446;font:700 10px/1.4 "Roboto",Arial,sans-serif;letter-spacing:.16em}
.ttb-res-card__title{margin:0 0 13px!important;color:#1a2847!important;font:700 clamp(20px,1.82vw,25px)/1.32 "Roboto Slab",Georgia,serif!important;letter-spacing:-.025em!important}
.ttb-res-card__title a{color:inherit!important;text-decoration:none}
.ttb-res-card__title a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.ttb-res-card__excerpt{margin:0 0 22px!important;color:#5a6d7b!important;font:400 14px/1.67 "Roboto",Arial,sans-serif!important}
.ttb-res-card__action{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:auto;padding-top:14px;border-top:1px solid #e4e7e6;color:#153851!important;font:700 13px/1.4 "Roboto",Arial,sans-serif!important;text-decoration:none!important}
.ttb-res-card__action:hover{color:#a57642!important}
.ttb-res-card__action-arrow{display:grid;place-items:center;width:32px;height:32px;flex:0 0 32px;border-radius:50%;background:#f0e4d5;color:#9e7148;font:700 18px/1 "Roboto",Arial,sans-serif;transition:background-color .2s,transform .2s}
.ttb-res-card__action:hover .ttb-res-card__action-arrow{background:#d4a574;color:#1a2847;transform:translate(2px,-2px)}
.ttb-res-preview__footnote{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:27px;padding-top:23px;border-top:1px solid #dfe5e6;color:#74808b;font:500 12px/1.5 "Roboto",Arial,sans-serif}
.ttb-res-preview__footnote a{color:#1a2847;font-weight:700;text-decoration:none}
.ttb-res-preview__footnote a:hover{text-decoration:underline;text-underline-offset:3px}
.ttb-res-editor-hint{padding:15px 22px!important;margin-top:24px;margin-bottom:24px;background:#fff9e8;border-left:4px solid #d4a574;font:14px/1.6 "Roboto",Arial,sans-serif}
.ttb-res-page{background:#fff}
.ttb-res-page__hero,.ttb-res-single__header{background:#f7f2e8;border-bottom:1px solid #e8e0d7}
.ttb-res-page__intro{padding-top:clamp(60px,7vw,100px);padding-bottom:clamp(55px,6vw,84px)}
.ttb-res-page__intro h1,.ttb-res-single__header h1{max-width:850px;margin:0 0 19px;color:#1a2847;font:700 clamp(35px,4.2vw,59px)/1.16 "Roboto Slab",Georgia,serif;letter-spacing:-.04em}
.ttb-res-page__intro>p:last-child,.ttb-res-single__summary{max-width:740px;margin:0;color:#516779;font:400 clamp(15px,1.5vw,18px)/1.65 "Roboto",Arial,sans-serif}
.ttb-res-page__browse{padding:clamp(40px,5.8vw,78px) 0 clamp(65px,6vw,96px)}
.ttb-res-filter{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin-bottom:32px;border-bottom:1px solid #e1e6e7;padding-bottom:24px}
.ttb-res-filter a{display:inline-flex;padding:10px 15px;border:1px solid #e0e5e7;border-radius:2px;color:#435c6e;text-decoration:none;font:700 13px/1.2 "Roboto",Arial,sans-serif;transition:background .2s,color .2s}
.ttb-res-filter a:hover,.ttb-res-filter a.is-active{background:#1a2847;border-color:#1a2847;color:#fff}
.ttb-res-pagination{margin-top:42px;color:#1a2847}
.ttb-res-pagination .nav-links{display:flex;gap:11px;align-items:center;justify-content:center}
.ttb-res-pagination a,.ttb-res-pagination .current{padding:10px 14px;border:1px solid #e0e5e7;text-decoration:none}
.ttb-res-empty{padding:45px 30px;background:#f7f2e8}
.ttb-res-empty h2{margin:0 0 12px;color:#1a2847;font:700 26px/1.3 "Roboto Slab",Georgia,serif}
.ttb-res-empty p{color:#566a7a}
.ttb-res-empty a{font-weight:700;color:#1a2847}
.ttb-res-single__header>.ttb-container{padding-top:clamp(50px,6vw,85px);padding-bottom:clamp(45px,6vw,75px)}
.ttb-res-single__back{display:inline-block;margin-bottom:26px;font-size:13px;font-weight:700;color:#436078;text-decoration:none}
.ttb-res-single__main{max-width:980px;padding-top:clamp(45px,5vw,75px);padding-bottom:clamp(65px,6vw,100px)}
.ttb-res-single__image{margin:0 0 38px;overflow:hidden}
.ttb-res-single__image img{display:block;width:100%;height:auto;max-height:580px;object-fit:contain}
.ttb-res-single__content{font:400 17px/1.85 "Roboto",Arial,sans-serif;color:#2b4355;overflow-wrap:break-word}
.ttb-res-single__content h2,.ttb-res-single__content h3{margin-top:30px;color:#1a2847;font-family:"Roboto Slab",Georgia,serif;letter-spacing:-.025em}
.ttb-res-single__content a{color:#996936}
.ttb-res-single__video{margin-top:30px;position:relative;aspect-ratio:16/9;max-width:100%;background:#152e48}
.ttb-res-single__video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.ttb-res-single__download-wrap{margin-top:31px}
.ttb-res-single__download,.ttb-res-single__booking{display:inline-flex;gap:26px;align-items:center;justify-content:space-between;padding:15px 24px;min-height:55px;background:#d4a574;color:#1a2847;text-decoration:none;font-weight:700}
.ttb-res-single__download:hover,.ttb-res-single__booking:hover{background:#e4bb8d}
.ttb-res-single__cta{padding:clamp(48px,6vw,78px) 0;background:#1a2847;color:#fff}
.ttb-res-single__cta-inner{display:flex;align-items:center;justify-content:space-between;gap:26px}
.ttb-res-single__cta .ttb-res-eyebrow{color:#e9c391}
.ttb-res-single__cta h2{max-width:660px;margin:0;color:#fff;font:700 clamp(26px,3vw,38px)/1.25 "Roboto Slab",Georgia,serif;letter-spacing:-.03em}
.ttb-res-single__booking{flex:0 0 auto}
.ttb-res-preview a:focus-visible,.ttb-res-page a:focus-visible,.ttb-res-single a:focus-visible{outline:3px solid #bc8653;outline-offset:3px}
@media(max-width:1050px){.ttb-res-preview__intro{grid-template-columns:1fr .78fr;gap:40px}.ttb-res-grid{gap:15px}.ttb-res-card__content{padding:21px}}
@media(max-width:850px){
.ttb-res-preview__intro{grid-template-columns:1fr;gap:22px;margin-bottom:30px}
.ttb-res-preview__aside{max-width:720px}.ttb-res-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:19px}
.ttb-res-single__cta-inner{align-items:flex-start;flex-direction:column}
}
@media(max-width:600px){
.ttb-res-preview{padding:60px 0 62px}
.ttb-res-preview__intro h2{font-size:clamp(29px,8vw,36px)}
.ttb-res-preview__aside{padding-left:17px}
.ttb-res-preview__aside p{font-size:14px}
.ttb-res-grid{grid-template-columns:1fr;gap:18px}
.ttb-res-card__media{aspect-ratio:16/9}
.ttb-res-card__content{padding:21px 20px}
.ttb-res-card__title{font-size:23px!important}
.ttb-res-preview__footnote{flex-direction:column;align-items:flex-start;gap:8px}
.ttb-res-page__intro{padding-block:52px}
.ttb-res-page__intro h1,.ttb-res-single__header h1{font-size:clamp(31px,9vw,41px)}
.ttb-res-page__browse{padding:37px 0 60px}
.ttb-res-filter{gap:8px;margin-bottom:25px}
.ttb-res-filter a{font-size:12px;padding:9px 12px}
.ttb-res-single__main{padding-block:39px 68px}
.ttb-res-single__content{font-size:15px}
.ttb-res-single__booking{width:100%}
}
@media(prefers-reduced-motion:reduce){.ttb-res-card,.ttb-res-card__image,.ttb-res-card__action-arrow{transition:none!important}}
