:root{--xp-cream:#f7f4ee;--xp-paper:#fff;--xp-green:#214e4b;--xp-green-dark:#143936;--xp-gold:#c7a86b;--xp-text:#2c2b27;--xp-muted:#747068;--xp-line:#e6dfd3;--xp-ok:#2f6d4f;--xp-bad:#a94840;--xp-shadow:0 18px 55px rgba(25,54,51,.09)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--xp-cream);color:var(--xp-text);font-family:Inter,"Segoe UI",Arial,sans-serif;line-height:1.55}a{color:var(--xp-green);text-decoration:none}button,input,select,textarea{font:inherit}.xp-header{height:76px;padding:0 clamp(18px,5vw,72px);display:flex;align-items:center;justify-content:space-between;background:rgba(247,244,238,.96);border-bottom:1px solid var(--xp-line);position:sticky;top:0;z-index:40;backdrop-filter:blur(12px)}.xp-brand{display:flex;align-items:center;gap:10px;font-size:22px;font-weight:900;letter-spacing:-.5px}.xp-brand img{width:38px;height:38px;object-fit:contain}.xp-header nav{display:flex;gap:22px;align-items:center}.xp-header nav a{font-weight:750;font-size:14px}.xp-nav-cta{padding:9px 14px;border:1px solid var(--xp-green);border-radius:999px}.xp-main{min-height:calc(100vh - 160px)}.xp-flash{max-width:1180px;margin:14px auto 0;padding:13px 16px;border-radius:12px;font-weight:700}.xp-flash.success{background:#e5f3ea;color:var(--xp-ok)}.xp-flash.error{background:#f9e7e5;color:var(--xp-bad)}.xp-hero{padding:70px clamp(18px,5vw,72px) 52px;background:linear-gradient(125deg,var(--xp-green-dark),var(--xp-green));color:#fff;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,480px);gap:48px;align-items:end}.xp-hero h1,.xp-event-hero h1{font-size:clamp(44px,7vw,86px);line-height:.98;letter-spacing:-3px;margin:13px 0 18px}.xp-hero p,.xp-event-hero p{font-size:18px;max-width:700px;color:#d8e5e3}.xp-kicker{display:block;color:var(--xp-gold);font-size:11px;letter-spacing:1.5px;font-weight:900}.xp-filter{background:#fff;padding:16px;border-radius:18px;display:grid;gap:10px;box-shadow:var(--xp-shadow)}input,select,textarea{width:100%;border:1px solid #d9d1c5;border-radius:10px;padding:12px 13px;background:#fff;color:var(--xp-text)}textarea{min-height:105px;resize:vertical}label{display:block;font-size:12px;font-weight:800;color:var(--xp-green);margin-bottom:10px}label small{display:block;color:var(--xp-muted);font-weight:500;margin-top:5px}.xp-filter button,.xp-button{border:0;border-radius:10px;padding:12px 18px;background:var(--xp-green);color:#fff;font-weight:850;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px}.xp-button.secondary{background:#ece7de;color:var(--xp-green)}.xp-button.small{padding:9px 13px;font-size:12px}.xp-button.wide{width:100%}.xp-section-head,.xp-account-head,.xp-checkout-head{max-width:1240px;margin:0 auto;padding:42px 22px 22px;display:flex;align-items:end;justify-content:space-between;gap:24px}.xp-section-head span,.xp-account-head .xp-kicker{color:var(--xp-gold);font-weight:900;font-size:11px;letter-spacing:1.4px}.xp-section-head h2,.xp-account-head h1,.xp-checkout-head h1{margin:5px 0 0;color:var(--xp-green);font-size:clamp(28px,4vw,44px);letter-spacing:-1.3px}.xp-event-grid{max-width:1240px;margin:0 auto;padding:0 22px 60px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.xp-event-card,.xp-card,.xp-form-card,.xp-booking-card,.xp-order-row,.xp-ticket-sheet{background:var(--xp-paper);border:1px solid var(--xp-line);border-radius:18px;box-shadow:var(--xp-shadow)}.xp-event-card{overflow:hidden;display:flex;flex-direction:column}.xp-event-image{height:220px;background:linear-gradient(145deg,#315d59,#193e3b);background-size:cover;background-position:center;display:flex;align-items:flex-start;padding:14px}.xp-event-image span{background:rgba(255,255,255,.92);border-radius:999px;padding:7px 10px;font-size:10px;font-weight:900;color:var(--xp-green)}.xp-event-body{padding:20px;display:flex;flex-direction:column;flex:1}.xp-event-meta{display:flex;justify-content:space-between;gap:12px;color:var(--xp-muted);font-size:12px}.xp-event-meta strong{color:var(--xp-gold)}.xp-event-card h3{font-size:23px;line-height:1.15;margin:14px 0 8px}.xp-event-card p{color:var(--xp-muted);font-size:14px;flex:1}.xp-event-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:15px}.xp-empty{grid-column:1/-1;text-align:center;padding:60px;background:#fff;border:1px dashed var(--xp-line);border-radius:18px}.xp-event-hero{padding:70px clamp(18px,5vw,72px);background:linear-gradient(125deg,var(--xp-green-dark),var(--xp-green));background-position:center;background-size:cover;color:#fff}.xp-event-hero h1{max-width:920px}.xp-back{display:inline-block;margin-bottom:20px;font-weight:800}.xp-event-hero .xp-back{color:#fff}.xp-hero-facts{display:flex;gap:10px;flex-wrap:wrap}.xp-hero-facts span{border:1px solid rgba(255,255,255,.28);padding:8px 12px;border-radius:999px;font-size:12px;font-weight:750}.xp-detail-layout{max-width:1240px;margin:0 auto;padding:28px 22px 70px;display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start}.xp-detail-layout.account{grid-template-columns:minmax(0,1fr) 340px}.xp-content-stack{display:grid;gap:20px}.xp-card,.xp-form-card,.xp-booking-card{padding:24px}.xp-card h2,.xp-booking-card h2,.xp-form-card h2{color:var(--xp-green);margin:6px 0 15px}.xp-prose,.xp-card>p{color:var(--xp-muted)}.xp-booking-card{position:sticky;top:96px}.xp-booking-card.checkout{top:94px}.xp-ticket-option{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--xp-line);border-radius:12px;padding:12px;margin-bottom:10px;cursor:pointer}.xp-ticket-option input{width:auto;margin-top:4px}.xp-ticket-option span{flex:1}.xp-ticket-option strong,.xp-ticket-option small{display:block}.xp-ticket-option small{color:var(--xp-muted);font-weight:500}.xp-ticket-option b{white-space:nowrap}.xp-fine{color:var(--xp-muted);font-size:11px}.xp-sold,.xp-inline-error{background:#f9e7e5;color:var(--xp-bad);padding:14px;border-radius:10px;font-weight:750}.xp-agenda>div{display:grid;grid-template-columns:90px 1fr;gap:15px;padding:14px 0;border-bottom:1px solid var(--xp-line)}.xp-agenda time{color:var(--xp-gold);font-weight:900}.xp-agenda p{margin:5px 0;color:var(--xp-muted)}.xp-policy-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0}.xp-policy-grid div{background:#faf8f4;border-radius:11px;padding:12px}.xp-policy-grid strong,.xp-policy-grid span{display:block}.xp-policy-grid span{color:var(--xp-muted);font-size:12px;margin-top:4px}.xp-auth-shell{max-width:1100px;margin:0 auto;padding:70px 22px;display:grid;grid-template-columns:1fr 480px;gap:60px;align-items:center}.xp-auth-shell.compact{max-width:900px}.xp-auth-copy h1{font-size:clamp(40px,6vw,70px);line-height:1;letter-spacing:-2.5px;color:var(--xp-green);margin:12px 0}.xp-auth-copy p{color:var(--xp-muted);font-size:18px}.xp-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.xp-form-card p{text-align:center;color:var(--xp-muted);font-size:13px}.xp-account-head p,.xp-checkout-head p{color:var(--xp-muted);margin:6px 0 0}.xp-order-list{max-width:1240px;margin:0 auto;padding:0 22px 70px;display:grid;gap:14px}.xp-order-row{padding:18px;display:grid;grid-template-columns:70px minmax(0,1fr) 180px auto;align-items:center;gap:18px}.xp-order-date{background:#f4efe5;border-radius:12px;padding:9px;text-align:center}.xp-order-date strong,.xp-order-date span{display:block}.xp-order-date strong{font-size:24px;color:var(--xp-green)}.xp-order-date span{font-size:11px;color:var(--xp-muted)}.xp-order-row h3{margin:3px 0}.xp-order-row p{margin:0;color:var(--xp-muted);font-size:13px}.xp-order-status{display:grid;gap:5px;justify-items:end}.xp-status{display:inline-block;border-radius:999px;padding:6px 9px;background:#ece7de;font-size:10px;font-weight:900;text-transform:uppercase}.xp-status.paid,.xp-status.captured{background:#e5f3ea;color:var(--xp-ok)}.xp-status.failed,.xp-status.refunded{background:#f9e7e5;color:var(--xp-bad)}.xp-ticket-list{display:grid;gap:10px}.xp-ticket-list a{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--xp-line);border-radius:12px;padding:13px}.xp-ticket-list strong,.xp-ticket-list span{display:block}.xp-ticket-list span{font-size:12px;color:var(--xp-muted)}.xp-ticket-list em{font-style:normal;font-size:12px;font-weight:800}.xp-money-list{display:grid;gap:10px;margin:15px 0}.xp-money-list>div{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--xp-line);padding-bottom:9px}.xp-money-list .total{font-size:20px;color:var(--xp-green);border:0}.xp-dl{display:grid;grid-template-columns:100px 1fr;gap:10px;margin:0}.xp-dl dt{color:var(--xp-muted);font-size:12px}.xp-dl dd{margin:0;font-weight:750}.xp-checkout-head>div:last-child{display:grid;text-align:right}.xp-checkout-head>div:last-child span{color:var(--xp-muted);font-size:13px}.xp-checkout-layout{max-width:1240px;margin:0 auto;padding:0 22px 70px;display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start}.xp-check-row{display:grid;gap:8px;margin-top:10px}.xp-check-row label{display:flex;gap:8px;align-items:flex-start;font-weight:600;color:var(--xp-muted)}.xp-check-row input{width:auto;margin-top:3px}.xp-check-row.required{background:#faf8f4;padding:13px;border-radius:10px}.xp-payment-shell{min-height:70vh;display:grid;place-items:center;padding:50px 20px}.xp-payment-shell .xp-card{width:min(520px,100%)}.xp-pay-total{display:flex;justify-content:space-between;align-items:end;background:#faf8f4;border-radius:13px;padding:18px;margin:20px 0}.xp-pay-total strong{font-size:32px;color:var(--xp-green)}.xp-payment-shell form{margin-top:12px}.xp-ticket-page{padding:45px 20px 70px}.xp-ticket-sheet{max-width:720px;margin:auto;overflow:hidden}.xp-ticket-brand{background:var(--xp-green);color:#fff;padding:18px 24px;display:flex;justify-content:space-between}.xp-ticket-brand span{font-size:20px;font-weight:900}.xp-ticket-brand em{color:var(--xp-gold);font-style:normal;font-size:11px;font-weight:900}.xp-ticket-event{padding:28px 28px 10px}.xp-ticket-event>span{color:var(--xp-gold);font-weight:900}.xp-ticket-event h1{color:var(--xp-green);font-size:38px;line-height:1.05;margin:8px 0}.xp-ticket-event p{color:var(--xp-muted)}.xp-ticket-holder{padding:20px 28px;display:flex;justify-content:space-between;align-items:center;gap:22px}.xp-ticket-holder small,.xp-ticket-holder strong,.xp-ticket-holder span{display:block}.xp-ticket-holder strong{font-size:23px;color:var(--xp-green)}.xp-ticket-holder span{color:var(--xp-muted)}.xp-ticket-qr{width:180px;min-height:180px;background:#fff}.xp-ticket-number{border-top:1px dashed var(--xp-line);border-bottom:1px dashed var(--xp-line);padding:15px 28px;display:flex;justify-content:space-between;font-family:monospace;font-weight:800}.xp-ticket-number em{font-style:normal;color:var(--xp-ok)}.xp-ticket-sheet>.xp-fine{padding:14px 28px}.xp-ticket-actions{max-width:720px;margin:20px auto;display:flex;justify-content:center;gap:10px}.xp-footer{padding:30px clamp(18px,5vw,72px);background:var(--xp-green-dark);color:#fff;display:flex;justify-content:space-between;gap:20px}.xp-footer strong,.xp-footer span{display:block}.xp-footer span{color:#b8ccca;font-size:12px}.xp-footer>div:last-child{display:flex;gap:18px}.xp-footer a{color:#fff;font-size:13px}@media(max-width:980px){.xp-event-grid{grid-template-columns:repeat(2,1fr)}.xp-hero,.xp-auth-shell{grid-template-columns:1fr}.xp-detail-layout,.xp-detail-layout.account,.xp-checkout-layout{grid-template-columns:1fr}.xp-booking-card{position:static}.xp-policy-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:680px){.xp-header{height:auto;padding:14px 16px;align-items:flex-start}.xp-header nav{gap:10px;flex-wrap:wrap;justify-content:flex-end}.xp-header nav a{font-size:12px}.xp-hero{padding:50px 18px 38px}.xp-hero h1,.xp-event-hero h1{letter-spacing:-2px}.xp-event-grid{grid-template-columns:1fr;padding-left:14px;padding-right:14px}.xp-section-head,.xp-account-head,.xp-checkout-head{align-items:flex-start;flex-direction:column}.xp-event-hero{padding:48px 18px}.xp-detail-layout,.xp-checkout-layout{padding-left:14px;padding-right:14px}.xp-form-grid{grid-template-columns:1fr}.xp-order-row{grid-template-columns:58px 1fr}.xp-order-status{justify-items:start;grid-column:2}.xp-order-row>.xp-button{grid-column:2}.xp-ticket-holder{display:block}.xp-ticket-qr{margin:18px auto 0}.xp-footer{display:block}.xp-footer>div:last-child{margin-top:18px;flex-wrap:wrap}}@media print{.xp-header,.xp-footer,.xp-ticket-actions,.xp-flash{display:none!important}.xp-ticket-page{padding:0}.xp-ticket-sheet{box-shadow:none;border:0;max-width:none}}


/* v27 blog */
.xp-blog-hero{padding:70px clamp(18px,5vw,72px) 52px;background:linear-gradient(125deg,var(--xp-green-dark),var(--xp-green));color:#fff;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,440px);gap:48px;align-items:end}.xp-blog-hero h1{font-size:clamp(44px,7vw,82px);line-height:.98;letter-spacing:-3px;margin:12px 0 18px}.xp-blog-hero p{font-size:18px;color:#d8e5e3;max-width:720px}.xp-blog-filter{background:#fff;padding:16px;border-radius:18px;display:grid;gap:10px;box-shadow:var(--xp-shadow)}.xp-blog-layout{max-width:1240px;margin:0 auto;padding:0 22px 65px;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}.xp-blog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.xp-blog-card{background:#fff;border:1px solid var(--xp-line);border-radius:18px;overflow:hidden;box-shadow:var(--xp-shadow);display:flex;flex-direction:column}.xp-blog-image{height:230px;background:linear-gradient(145deg,#315d59,#193e3b);background-size:cover;background-position:center;padding:14px;display:block}.xp-blog-image span{display:inline-block;background:rgba(255,255,255,.93);border-radius:999px;padding:7px 10px;font-size:10px;font-weight:900}.xp-blog-body{padding:21px;display:flex;flex-direction:column;flex:1}.xp-blog-meta,.xp-blog-card-foot,.xp-article-meta{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;color:var(--xp-muted);font-size:12px}.xp-blog-card h2{font-size:25px;line-height:1.15;margin:13px 0 8px}.xp-blog-card p{color:var(--xp-muted);flex:1}.xp-blog-card-foot{border-top:1px solid var(--xp-line);padding-top:13px}.xp-blog-side{display:grid;gap:20px;position:sticky;top:95px}.xp-blog-taxonomy{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--xp-line)}.xp-blog-taxonomy b{color:var(--xp-gold)}.xp-blog-tags,.xp-article-tags{display:flex;gap:8px;flex-wrap:wrap}.xp-blog-tags a,.xp-article-tags a{background:#f1ece3;padding:7px 10px;border-radius:999px;font-size:12px}.xp-pagination{max-width:1240px;margin:-30px auto 60px;padding:0 22px;display:flex;gap:8px}.xp-pagination a{width:38px;height:38px;display:grid;place-items:center;background:#fff;border:1px solid var(--xp-line);border-radius:10px;font-weight:800}.xp-pagination a.active{background:var(--xp-green);color:#fff}.xp-article-head{max-width:1000px;margin:0 auto;padding:75px 22px 35px;text-align:center}.xp-article-head h1{font-size:clamp(42px,7vw,78px);line-height:1.02;letter-spacing:-2.8px;color:var(--xp-green);margin:14px 0}.xp-article-head>p{font-size:19px;color:var(--xp-muted);max-width:780px;margin:0 auto 20px}.xp-article-meta{justify-content:center}.xp-article-image{max-width:1180px;margin:0 auto 35px;padding:0 22px}.xp-article-image img{width:100%;max-height:650px;object-fit:cover;border-radius:22px;box-shadow:var(--xp-shadow)}.xp-article-layout{max-width:1100px;margin:0 auto;padding:0 22px 80px;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:45px;align-items:start}.xp-article-layout aside{display:grid;gap:20px;position:sticky;top:96px}.xp-article-prose{font-family:Georgia,'Times New Roman',serif;font-size:19px;line-height:1.85;color:#3d3a34}.xp-article-prose h2,.xp-article-prose h3,.xp-article-prose h4{font-family:Inter,'Segoe UI',Arial,sans-serif;color:var(--xp-green);line-height:1.2;margin-top:1.8em}.xp-article-prose img{max-width:100%;height:auto;border-radius:15px}.xp-article-prose blockquote{border-left:4px solid var(--xp-gold);margin:28px 0;padding:8px 0 8px 22px;color:var(--xp-green);font-size:23px}.xp-article-prose a{text-decoration:underline}.xp-article-prose table{width:100%;border-collapse:collapse;font-family:Inter,'Segoe UI',Arial,sans-serif;font-size:14px}.xp-article-prose th,.xp-article-prose td{border:1px solid var(--xp-line);padding:10px}.xp-article-tags{border-top:1px solid var(--xp-line);padding-top:25px;margin-top:45px}.xp-related-grid{max-width:1240px;margin:0 auto;padding:0 22px 70px;grid-template-columns:repeat(3,minmax(0,1fr))}.xp-button.secondary{background:#ece7de;color:var(--xp-green)}
@media(max-width:980px){.xp-blog-hero{grid-template-columns:1fr}.xp-blog-layout,.xp-article-layout{grid-template-columns:1fr}.xp-blog-side,.xp-article-layout aside{position:static}.xp-related-grid{grid-template-columns:1fr 1fr}}@media(max-width:680px){.xp-blog-hero{padding:50px 18px 38px}.xp-blog-grid,.xp-related-grid{grid-template-columns:1fr}.xp-blog-layout{padding-left:14px;padding-right:14px}.xp-article-head{padding-top:50px}.xp-article-layout{padding-left:16px;padding-right:16px}.xp-article-prose{font-size:17px}.xp-blog-image{height:200px}}

/* v28: Public static pages and newsletter */
.xp-content-page{max-width:1080px;margin:0 auto 64px}.xp-content-hero{padding:64px clamp(24px,7vw,86px);border-radius:28px;background:#f2eee6;background-size:cover;background-position:center;color:#0a3434}.xp-content-hero[style]{color:#fff}.xp-content-hero h1{max-width:850px;font-size:clamp(2.2rem,5vw,4.7rem);line-height:1.02;margin:.5rem 0 1rem}.xp-content-hero p{max-width:760px;font-size:1.1rem;line-height:1.7}.xp-content-body{max-width:850px;margin:42px auto;font-size:1.05rem;line-height:1.85}.xp-content-body h2,.xp-content-body h3,.xp-content-body h4{color:#0a3434;margin-top:2em;line-height:1.2}.xp-content-body a{color:#214e4b;font-weight:700}.xp-content-body blockquote{margin:2rem 0;padding:1rem 1.5rem;border-left:4px solid #c7a86b;background:#f7f4ee}.xp-content-body table{width:100%;border-collapse:collapse}.xp-content-body th,.xp-content-body td{padding:10px;border:1px solid #ddd6c9;text-align:left}.xp-content-policy .xp-content-body{max-width:780px}.xp-content-updated{max-width:850px;margin:0 auto;color:#6b746f;font-size:.9rem;border-top:1px solid #e4ded2;padding-top:18px}.xp-footer-rich{display:grid;grid-template-columns:1.1fr 2fr 1.2fr;gap:36px;align-items:start}.xp-footer-brand{display:flex!important;flex-direction:column;gap:6px}.xp-footer-brand p{max-width:300px;line-height:1.6;color:inherit;opacity:.78}.xp-footer-links{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:26px}.xp-footer-links>div{display:flex;flex-direction:column;gap:8px}.xp-footer h4{margin:0 0 8px}.xp-newsletter p{line-height:1.5;opacity:.8}.xp-newsletter-form{display:flex;flex-direction:column;gap:9px}.xp-newsletter-form input[type=email],.xp-newsletter-form input[type=text]{width:100%;box-sizing:border-box;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.1);color:inherit;border-radius:10px;padding:11px}.xp-newsletter-form input::placeholder{color:inherit;opacity:.65}.xp-newsletter-consent{font-size:.78rem;line-height:1.4;display:flex;gap:8px;align-items:flex-start}.xp-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}.xp-newsletter .xp-button{width:max-content}.xp-auth-wrap{min-height:55vh;display:grid;place-items:center}.xp-auth-card{max-width:620px;text-align:center;background:#fff;padding:42px;border-radius:22px;border:1px solid #e4ded2}
@media(max-width:980px){.xp-footer-rich{grid-template-columns:1fr}.xp-footer-links{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.xp-content-hero{padding:42px 22px;border-radius:18px}.xp-content-body{padding:0 4px}.xp-footer-links{grid-template-columns:1fr 1fr}}

/* V41 consent-aware attribution */
.xp-consent-banner{position:fixed;z-index:9999;left:1rem;right:1rem;bottom:1rem;display:flex;gap:1.5rem;align-items:center;justify-content:space-between;padding:1rem 1.2rem;border-radius:18px;background:#fff;box-shadow:0 16px 50px rgba(10,52,52,.22);border:1px solid rgba(10,52,52,.14);color:#0a3434}.xp-consent-banner p{margin:.3rem 0 0;max-width:760px}.xp-consent-actions{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}.xp-consent-actions form{margin:0}.xp-button-secondary{background:transparent!important;color:#0a3434!important;border:1px solid rgba(10,52,52,.25)!important}.xp-privacy-choices{margin-top:1rem}.xp-privacy-choices summary{cursor:pointer;font-weight:700}.xp-privacy-choices form{display:grid;gap:.55rem;margin-top:.7rem}.xp-privacy-choices label{display:flex;gap:.45rem;align-items:flex-start}.xp-privacy-choices input[type=checkbox]{width:auto;margin-top:.2rem}@media(max-width:850px){.xp-consent-banner{align-items:flex-start;flex-direction:column}.xp-consent-actions{width:100%}.xp-consent-actions form,.xp-consent-actions button{width:100%}}

/* XTribe CRM V43 — Customer recommendation experience */
.xp-recommendation-head-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.xp-recommendation-head-actions form{margin:0}.xp-recommendation-shell{max-width:1240px;margin:0 auto;padding:0 22px 65px}.xp-recommendation-notice{max-width:1196px;margin:0 auto 24px;padding:22px;border:1px solid var(--xp-line);border-radius:18px;background:#fff8e8}.xp-recommendation-notice strong{display:block;color:var(--xp-green);font-size:18px}.xp-recommendation-notice p{color:var(--xp-muted);max-width:850px}.xp-recommendation-grid{padding-top:0}.xp-recommendation-card{position:relative}.xp-match-reasons{margin:4px 0 14px;padding:0;list-style:none;display:grid;gap:6px}.xp-match-reasons li{position:relative;padding-left:18px;color:var(--xp-green);font-size:12px;font-weight:750}.xp-match-reasons li:before{content:'✓';position:absolute;left:0;color:var(--xp-gold)}.xp-recommendation-state{font-size:10px;font-weight:850;text-transform:uppercase;color:var(--xp-muted)}.xp-recommendation-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:14px}.xp-recommendation-actions form{margin:0}.xp-text-button{border:0;background:transparent;color:var(--xp-muted);font-size:12px;font-weight:750;cursor:pointer;padding:8px}.xp-recommendation-preferences{max-width:1240px;margin:0 auto;padding:0 22px 70px;display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px;align-items:start}.xp-choice-grid{border:1px solid var(--xp-line);border-radius:14px;padding:14px;margin:0 0 14px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.xp-choice-grid legend{padding:0 7px;color:var(--xp-green);font-size:12px;font-weight:900}.xp-choice-grid label{display:flex;gap:7px;align-items:center;margin:0;color:var(--xp-muted);font-weight:650}.xp-choice-grid input{width:auto;margin:0}.xp-recommendation-privacy{position:sticky;top:96px}.xp-recommendation-privacy h2{font-size:32px}.xp-account-tools{max-width:1240px;margin:0 auto 28px;padding:0 22px;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.xp-account-tools .xp-card{display:block}.xp-account-tools .xp-card h3{margin:6px 0}.xp-account-tools .xp-card p{margin:0}
@media(max-width:980px){.xp-recommendation-preferences{grid-template-columns:1fr}.xp-recommendation-privacy{position:static}.xp-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.xp-account-tools{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.xp-recommendation-head-actions{width:100%}.xp-recommendation-head-actions form,.xp-recommendation-head-actions .xp-button{width:100%}.xp-choice-grid,.xp-account-tools{grid-template-columns:1fr}.xp-recommendation-preferences{padding-left:14px;padding-right:14px}}

/* V50 public Help Centre */
.xp-help-hero{padding:68px clamp(18px,5vw,72px) 48px;background:linear-gradient(125deg,var(--xp-green-dark),var(--xp-green));color:#fff;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,470px);gap:42px;align-items:end}.xp-help-hero h1{font-size:clamp(44px,7vw,78px);line-height:1;letter-spacing:-2.8px;margin:12px 0 16px}.xp-help-hero p{font-size:18px;color:#d8e5e3;max-width:720px}.xp-help-search{background:#fff;padding:16px;border-radius:18px;display:grid;gap:10px;box-shadow:var(--xp-shadow)}.xp-help-shell{max-width:1240px;margin:0 auto;padding:42px 22px 80px}.xp-help-topics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:46px}.xp-help-topic{display:block;min-height:190px}.xp-help-topic h3{margin:9px 0}.xp-help-topic p{color:var(--xp-muted)}.xp-help-topic strong{color:var(--xp-gold)}.xp-help-articles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.xp-help-article-card{display:block}.xp-help-article-card h3{font-size:22px;margin:10px 0}.xp-help-article-card p{color:var(--xp-muted)}.xp-help-article-card>span:last-child{font-weight:800;color:var(--xp-green)}.xp-help-contact{margin-top:36px;display:flex;align-items:center;justify-content:space-between;gap:24px}.xp-help-contact h2{margin:8px 0}.xp-help-detail>header{max-width:950px;margin:0 auto;padding:70px 22px 34px;text-align:center}.xp-help-detail>header h1{font-size:clamp(40px,7vw,72px);line-height:1.04;letter-spacing:-2.5px;color:var(--xp-green);margin:14px 0}.xp-help-detail>header>p{font-size:19px;color:var(--xp-muted);max-width:760px;margin:0 auto}.xp-help-meta{display:flex;gap:16px;justify-content:center;color:var(--xp-muted);font-size:12px;margin-top:18px}.xp-help-detail-layout{max-width:1080px;margin:0 auto;padding:0 22px 80px;display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:28px;align-items:start}.xp-help-detail-layout aside{display:grid;gap:18px;position:sticky;top:96px}.xp-help-answer{padding:32px}.xp-help-prose{white-space:normal;font-size:17px;line-height:1.8;color:#3d3a34}.xp-help-feedback{border-top:1px solid var(--xp-line);margin-top:32px;padding-top:22px;display:flex;align-items:center;justify-content:space-between;gap:18px}.xp-help-feedback>div{display:flex;gap:8px}.xp-help-feedback form{margin:0}
@media(max-width:980px){.xp-help-hero{grid-template-columns:1fr}.xp-help-topics{grid-template-columns:repeat(2,minmax(0,1fr))}.xp-help-articles{grid-template-columns:repeat(2,minmax(0,1fr))}.xp-help-detail-layout{grid-template-columns:1fr}.xp-help-detail-layout aside{position:static}}
@media(max-width:680px){.xp-help-hero{padding:50px 18px 38px}.xp-help-shell{padding-left:14px;padding-right:14px}.xp-help-topics,.xp-help-articles{grid-template-columns:1fr}.xp-help-contact,.xp-help-feedback{display:block}.xp-help-contact .xp-button{margin-top:16px}.xp-help-feedback>div{margin-top:12px}.xp-help-answer{padding:22px}}


/* V54.1 CSRF-protected customer logout */
.xp-nav-form {
  display: inline-flex;
  margin: 0;
  padding: 0;
}
.xp-nav-link {
  border: 0;
  padding: 0;
  color: var(--xp-green);
  background: transparent;
  font: inherit;
  font-size: 14px;
  font-weight: 750;
  cursor: pointer;
}
.xp-nav-link:hover,
.xp-nav-link:focus-visible {
  text-decoration: underline;
}

/* ========================================================================== 
   XTribe V58 — Luxury public homepage and global public navigation
   ========================================================================== */
:root{
  --xh-ink:#0a2f2d;
  --xh-green:#073b36;
  --xh-green-soft:#174e48;
  --xh-coral:#df6f55;
  --xh-coral-dark:#c85d46;
  --xh-gold:#b98d45;
  --xh-cream:#fbf8f2;
  --xh-warm:#f5efe7;
  --xh-white:#fffdfa;
  --xh-copy:#3e4542;
  --xh-muted:#737773;
  --xh-line:#e8e0d6;
  --xh-shadow:0 22px 70px rgba(20,45,41,.09);
  --xh-serif:Georgia,"Times New Roman",serif;
  --xh-sans:Inter,"Segoe UI",Arial,sans-serif;
}
body{background:var(--xh-cream);color:var(--xh-copy)}
.xp-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.xp-skip-link{position:fixed;top:12px;left:12px;z-index:10000;transform:translateY(-150%);background:var(--xh-green);color:#fff;padding:10px 14px;border-radius:8px;font-weight:800}.xp-skip-link:focus{transform:translateY(0)}
.xh-container{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.xh-announcement{background:var(--xh-green);color:#fff;font-size:12px;letter-spacing:.01em}
.xh-announcement-inner{min-height:34px;display:flex;align-items:center;justify-content:center;gap:22px;text-align:center}
.xh-announcement a{color:#efbd70;font-weight:800}
.xp-site-header{position:sticky;top:0;z-index:80;background:rgba(251,248,242,.94);border-bottom:1px solid rgba(10,47,45,.08);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.xp-site-header-inner{min-height:76px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:42px}
.xp-site-brand{display:inline-flex;align-items:center;color:var(--xh-ink);min-width:max-content}.xp-site-brand img{display:block;max-width:148px;max-height:44px;object-fit:contain}.xp-wordmark{font-family:var(--xh-serif);font-size:31px;line-height:1;letter-spacing:-1.5px}.xp-wordmark b{color:var(--xh-coral);font-weight:700}
.xp-primary-navigation{display:flex;align-items:center;justify-content:center;gap:30px}.xp-primary-navigation a,.xp-header-login{color:var(--xh-ink);font-size:13px;font-weight:700;white-space:nowrap}.xp-primary-navigation a:hover,.xp-primary-navigation a:focus-visible,.xp-header-login:hover,.xp-header-login:focus-visible{color:var(--xh-coral)}
.xp-header-actions{display:flex;align-items:center;gap:20px}.xp-header-cta{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 22px;border:1px solid var(--xh-coral);border-radius:999px;background:var(--xh-coral);color:#fff;font-size:13px;font-weight:800;cursor:pointer}.xp-header-cta:hover,.xp-header-cta:focus-visible{background:var(--xh-coral-dark);border-color:var(--xh-coral-dark);color:#fff}.xp-header-cta-outline{background:transparent;color:var(--xh-coral)}
.xp-menu-toggle{display:none;border:0;background:transparent;color:var(--xh-ink);padding:8px;cursor:pointer}.xp-menu-toggle-label{font-size:12px;font-weight:800}.xp-menu-toggle-lines{display:grid;gap:5px;margin-left:8px}.xp-menu-toggle-lines i{display:block;width:20px;height:1px;background:currentColor}
.xp-flash{position:relative;z-index:5}
.xh-home-page .xp-main{overflow:hidden;background:var(--xh-cream)}
.xh-eyebrow{display:inline-block;color:var(--xh-coral);font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.xh-button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:48px;padding:0 22px;border:1px solid transparent;border-radius:999px;font-size:13px;font-weight:850;transition:transform .2s ease,background .2s ease,border-color .2s ease,color .2s ease}.xh-button:hover,.xh-button:focus-visible{transform:translateY(-2px)}.xh-button-primary{background:var(--xh-coral);color:#fff}.xh-button-primary:hover,.xh-button-primary:focus-visible{background:var(--xh-coral-dark);color:#fff}.xh-button-ghost{border-color:rgba(10,47,45,.35);color:var(--xh-ink);background:transparent}.xh-button-ghost:hover,.xh-button-ghost:focus-visible{border-color:var(--xh-ink);color:var(--xh-ink)}.xh-button-coral{background:var(--xh-coral);color:#fff}.xh-button-coral:hover,.xh-button-coral:focus-visible{background:#ef8269;color:#fff}.xh-button-light-outline{border-color:rgba(255,255,255,.55);color:#fff}.xh-button-light-outline:hover,.xh-button-light-outline:focus-visible{border-color:#fff;color:#fff}
.xh-text-link{display:inline-flex;align-items:center;gap:9px;color:var(--xh-coral);font-size:13px;font-weight:850}.xh-text-link:hover,.xh-text-link:focus-visible{color:var(--xh-coral-dark)}
.xh-hero{padding:54px 0 38px}.xh-hero-grid{display:grid;grid-template-columns:minmax(0,.84fr) minmax(470px,1.16fr);align-items:center;gap:60px}.xh-hero-copy{padding:20px 0}.xh-hero h1{font-family:var(--xh-serif);font-weight:500;color:var(--xh-ink);font-size:clamp(54px,6.3vw,86px);line-height:.96;letter-spacing:-4px;margin:18px 0 24px}.xh-hero-lead{max-width:560px;font-size:17px;line-height:1.72;color:#444b48;margin:0}.xh-hero-actions{display:flex;align-items:center;gap:12px;margin-top:30px}.xh-solo-note{display:flex;align-items:center;gap:13px;margin:27px 0 0;font-size:12px;color:var(--xh-muted)}.xh-solo-note strong{color:var(--xh-ink)}.xh-solo-avatars{display:flex;padding-left:8px}.xh-solo-avatars i{width:28px;height:28px;border-radius:50%;border:2px solid var(--xh-cream);margin-left:-8px;background-position:center;background-size:cover}.xh-solo-avatars i:nth-child(1){background:linear-gradient(145deg,#d5b49a,#7d4a36)}.xh-solo-avatars i:nth-child(2){background:linear-gradient(145deg,#475f57,#d6ab81)}.xh-solo-avatars i:nth-child(3){background:linear-gradient(145deg,#b16c56,#2e4b47)}
.xh-hero-visual{position:relative}.xh-hero-visual>img{display:block;width:100%;aspect-ratio:1.32/1;object-fit:cover;border-radius:30px;box-shadow:var(--xh-shadow)}.xh-curated-stamp{position:absolute;left:-30px;bottom:-26px;width:112px;height:112px;border:1px solid #d8c4b0;border-radius:50%;background:rgba(251,248,242,.96);box-shadow:0 14px 40px rgba(34,43,40,.09);display:grid;place-content:center;text-align:center;color:#9d7251;transform:rotate(-8deg)}.xh-curated-stamp b{font-size:9px;letter-spacing:.18em}.xh-curated-stamp i{font-style:normal;color:var(--xh-coral);font-size:18px;line-height:1.2}
.xh-trust-strip{padding:20px 0 54px}.xh-trust-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:rgba(255,253,250,.76);border:1px solid var(--xh-line);border-radius:24px;padding:25px 16px;box-shadow:0 16px 45px rgba(28,51,47,.04)}.xh-trust-grid article{display:grid;grid-template-columns:44px 1fr;align-items:center;gap:14px;padding:4px 20px;border-right:1px solid var(--xh-line)}.xh-trust-grid article:last-child{border-right:0}.xh-line-icon{font-family:var(--xh-serif);color:var(--xh-green);font-size:31px;text-align:center}.xh-trust-grid h2{margin:0 0 4px;color:var(--xh-ink);font-size:13px}.xh-trust-grid p{margin:0;color:var(--xh-muted);font-size:11px;line-height:1.5}
.xh-section{padding:76px 0}.xh-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:30px}.xh-section-heading h2,.xh-centered-heading h2,.xh-promise-copy h2,.xh-faq-intro h2,.xh-final-cta h2{font-family:var(--xh-serif);font-weight:500;color:var(--xh-ink);letter-spacing:-1.7px}.xh-section-heading h2{font-size:clamp(36px,4vw,50px);line-height:1;margin:8px 0 0}.xh-section-heading h2 em,.xh-stories h2 em{font-style:normal;color:var(--xh-coral);font-size:.5em;vertical-align:top;margin-left:8px}
.xh-experience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.xh-experience-card{display:flex;flex-direction:column;overflow:hidden;background:var(--xh-white);border:1px solid var(--xh-line);border-radius:18px;transition:transform .22s ease,box-shadow .22s ease}.xh-experience-card:hover{transform:translateY(-4px);box-shadow:0 20px 55px rgba(28,51,47,.09)}.xh-experience-image{position:relative;display:block;overflow:hidden;aspect-ratio:1.62/1;background:#d8ddd9}.xh-experience-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.xh-experience-card:hover .xh-experience-image img{transform:scale(1.03)}.xh-experience-image>span{position:absolute;left:14px;top:14px;background:rgba(255,253,250,.94);border-radius:999px;padding:6px 10px;color:var(--xh-ink);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.xh-experience-content{display:flex;flex-direction:column;flex:1;padding:20px}.xh-card-kicker{color:var(--xh-coral);font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.xh-experience-content h3{font-family:var(--xh-serif);font-weight:500;font-size:25px;line-height:1.08;margin:7px 0 16px}.xh-experience-content h3 a{color:var(--xh-ink)}.xh-event-facts{display:grid;gap:7px;margin:0}.xh-event-facts div{display:grid;grid-template-columns:58px 1fr;gap:8px;font-size:11px}.xh-event-facts dt{color:var(--xh-muted)}.xh-event-facts dd{margin:0;color:#444b48}.xh-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:auto;padding-top:17px;font-size:11px}.xh-card-bottom span{color:var(--xh-ink);font-weight:750}.xh-card-bottom strong{color:var(--xh-coral);font-size:10px}.xh-card-link{display:flex;align-items:center;justify-content:space-between;margin-top:14px;padding-top:13px;border-top:1px solid var(--xh-line);color:var(--xh-ink);font-size:11px;font-weight:850}.xh-honest-empty{padding:70px;text-align:center;border:1px solid var(--xh-line);border-radius:24px;background:var(--xh-white)}.xh-honest-empty span{color:var(--xh-coral);font-weight:850;font-size:12px}.xh-honest-empty h3{font-family:var(--xh-serif);font-size:36px;color:var(--xh-ink);font-weight:500;margin:10px auto 22px}
.xh-how{background:#f8f3ec;border-block:1px solid var(--xh-line)}.xh-centered-heading{text-align:center;max-width:720px;margin:0 auto 43px}.xh-centered-heading h2{font-size:clamp(40px,5vw,58px);line-height:1;margin:8px 0 14px}.xh-centered-heading p{color:var(--xh-muted);margin:0}.xh-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.xh-steps article{position:relative;text-align:center;padding:0 25px}.xh-steps article:not(:last-child):after{content:"";position:absolute;right:-40px;top:52px;width:80px;border-top:1px dashed #d8bfa8}.xh-steps article>span{display:block;color:var(--xh-coral);font-size:10px;font-weight:900;letter-spacing:.1em}.xh-step-icon{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;margin:10px auto 17px;background:#e8ece6;color:var(--xh-green);font-family:var(--xh-serif);font-size:34px}.xh-steps h3{font-size:15px;color:var(--xh-ink);margin:0 0 7px}.xh-steps p{font-size:12px;line-height:1.65;color:var(--xh-muted);margin:0}
.xh-promise-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}.xh-promise-image{position:relative}.xh-promise-image:before{content:"";position:absolute;left:-70px;top:-50px;width:150px;height:150px;border:1px solid #efc9b6;border-radius:52% 48% 57% 43%;transform:rotate(25deg)}.xh-promise-image img{position:relative;z-index:1;display:block;width:100%;aspect-ratio:1.52/1;object-fit:cover;border-radius:24px}.xh-promise-copy h2{font-size:clamp(42px,5vw,60px);line-height:.98;margin:14px 0 24px}.xh-promise-copy>p{font-size:16px;line-height:1.75;color:var(--xh-copy);max-width:570px}.xh-promise-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:30px 0 28px}.xh-promise-points div{text-align:center}.xh-promise-points b{display:grid;place-items:center;width:46px;height:46px;border:1px solid var(--xh-line);border-radius:50%;margin:0 auto 8px;color:var(--xh-green);font-family:var(--xh-serif);font-size:22px}.xh-promise-points span{color:var(--xh-ink);font-size:11px;font-weight:800}
.xh-stories{padding-top:55px}.xh-section-heading-center{align-items:center}.xh-story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.xh-story-card{min-height:255px;padding:28px;background:var(--xh-white);border:1px solid var(--xh-line);border-radius:18px;display:flex;flex-direction:column}.xh-quote{font-family:var(--xh-serif);font-size:52px;line-height:.7;color:#e4a58f}.xh-story-card blockquote{margin:15px 0 24px;color:var(--xh-copy);font-size:14px;line-height:1.75;flex:1}.xh-story-card footer{display:flex;align-items:center;gap:12px}.xh-member-initial{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#e5ece7;color:var(--xh-green);font-family:var(--xh-serif);font-size:18px}.xh-story-card footer strong,.xh-story-card footer small{display:block}.xh-story-card footer strong{color:var(--xh-ink);font-size:12px}.xh-story-card footer small{color:var(--xh-muted);font-size:10px;margin-top:2px}.xh-testimonial-placeholder{display:grid;grid-template-columns:70px 1fr;align-items:center;max-width:820px;margin:0 auto;padding:42px 50px;border:1px solid var(--xh-line);border-radius:20px;background:var(--xh-white)}.xh-testimonial-placeholder h3{font-family:var(--xh-serif);font-weight:500;color:var(--xh-ink);font-size:31px;margin:0 0 8px}.xh-testimonial-placeholder p{margin:0;color:var(--xh-muted)}
.xh-community{padding:38px 0 80px}.xh-community-card{min-height:320px;display:grid;grid-template-columns:.9fr 1.1fr;overflow:hidden;border-radius:22px;background:var(--xh-green);color:#fff}.xh-community-copy{padding:50px 24px 50px 50px;display:flex;flex-direction:column;justify-content:center}.xh-community-copy .xh-eyebrow{color:#e6aa73}.xh-community-copy h2{font-family:var(--xh-serif);font-weight:500;font-size:clamp(38px,4.5vw,56px);line-height:.98;letter-spacing:-2px;margin:12px 0 18px;color:#fff}.xh-community-copy p{color:#d4e1dd;line-height:1.7;max-width:500px}.xh-community-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.xh-community-image{position:relative;min-height:320px}.xh-community-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--xh-green) 0%,rgba(7,59,54,.35) 28%,transparent 65%)}.xh-community-image img{display:block;width:100%;height:100%;object-fit:cover}
.xh-faq{border-top:1px solid var(--xh-line)}.xh-faq-grid{display:grid;grid-template-columns:340px 1fr;gap:85px;align-items:start}.xh-faq-intro{position:sticky;top:120px}.xh-faq-intro h2{font-size:50px;line-height:1;margin:12px 0 18px}.xh-faq-intro p{color:var(--xh-muted);line-height:1.7;margin:0 0 24px}.xh-faq-list{border-top:1px solid var(--xh-line)}.xh-faq-list details{border-bottom:1px solid var(--xh-line)}.xh-faq-list summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0;color:var(--xh-ink);font-size:14px;font-weight:750;cursor:pointer}.xh-faq-list summary::-webkit-details-marker{display:none}.xh-faq-list summary span{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--xh-line);border-radius:50%;font-size:17px;font-weight:400;transition:transform .2s ease}.xh-faq-list details[open] summary span{transform:rotate(45deg)}.xh-faq-list details p{max-width:720px;margin:-4px 0 23px;color:var(--xh-muted);font-size:14px;line-height:1.75}
.xh-final-cta{padding:70px 0;background:#f5ede3;border-top:1px solid var(--xh-line)}.xh-final-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:60px}.xh-final-cta h2{font-size:clamp(38px,5vw,58px);line-height:1.02;max-width:760px;margin:10px 0 0}
.xh-footer{background:#101f1e;color:#d9e2df;padding:68px 0 26px}.xh-footer-grid{display:grid;grid-template-columns:1.25fr .7fr .8fr 1.25fr;gap:48px}.xp-site-brand-footer{color:#fff}.xh-footer-brand p{max-width:280px;color:#bdc9c6;font-size:13px;line-height:1.7;margin:20px 0 10px}.xh-footer-brand>span{color:#8ea39f;font-size:11px}.xh-footer h2{color:#fff;font-size:12px;margin:0 0 18px}.xh-footer-column{display:flex;flex-direction:column;gap:10px}.xh-footer-column a{color:#bdc9c6;font-size:12px}.xh-footer-column a:hover{color:#fff}.xh-footer-newsletter>p{color:#bdc9c6;font-size:12px;line-height:1.6;margin:-4px 0 14px}.xh-newsletter-form{display:grid;gap:11px}.xh-newsletter-row{display:grid;grid-template-columns:1fr 48px}.xh-newsletter-row input{min-height:46px;border:1px solid #49615d;border-right:0;border-radius:12px 0 0 12px;background:transparent;color:#fff}.xh-newsletter-row button{border:0;border-radius:0 12px 12px 0;background:var(--xh-coral);color:#fff;font-size:18px;cursor:pointer}.xh-newsletter-consent{display:flex;gap:8px;color:#93a6a2!important;font-size:9px!important;font-weight:500!important;line-height:1.5!important}.xh-newsletter-consent input{width:auto;margin-top:2px}.xh-privacy-choices{color:#bdc9c6}.xh-privacy-choices summary{font-size:10px}.xh-privacy-choices form{margin-top:12px}.xh-footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid #2c4140;margin-top:50px;padding-top:23px;color:#7f9591;font-size:10px}.xh-footer-bottom nav{display:flex;gap:25px}.xh-footer-bottom a{color:#9db0ad}

/* Refined event-list hero under the V58 global shell */
.xp-events-list-page .xp-hero{background:var(--xh-cream);color:var(--xh-ink);padding-top:70px}.xp-events-list-page .xp-hero h1{font-family:var(--xh-serif);font-weight:500;color:var(--xh-ink)}.xp-events-list-page .xp-hero p{color:var(--xh-muted)}.xp-events-list-page .xp-filter{border:1px solid var(--xh-line);box-shadow:none}.xp-events-list-page .xp-section-head h2{font-family:var(--xh-serif);font-weight:500}.xp-events-list-page .xp-event-card{box-shadow:none}.xp-events-list-page .xp-event-card:hover{box-shadow:var(--xh-shadow)}

@media(max-width:1080px){
  .xp-site-header-inner{gap:24px}.xp-primary-navigation{gap:20px}.xp-header-actions{gap:12px}
  .xh-hero-grid{grid-template-columns:minmax(0,.9fr) minmax(390px,1.1fr);gap:38px}.xh-hero h1{font-size:64px}
  .xh-trust-grid article{padding-inline:13px}.xh-footer-grid{grid-template-columns:1.2fr .7fr .8fr 1.15fr;gap:30px}
}
@media(max-width:900px){
  .xh-container{width:min(100% - 36px,1180px)}
  .xp-site-header-inner{grid-template-columns:auto auto auto;justify-content:space-between}.xp-menu-toggle{display:inline-flex;align-items:center}.xp-primary-navigation{position:absolute;left:18px;right:18px;top:calc(100% + 8px);display:none;flex-direction:column;align-items:stretch;gap:0;padding:12px;background:var(--xh-white);border:1px solid var(--xh-line);border-radius:18px;box-shadow:var(--xh-shadow)}.xp-primary-navigation.is-open{display:flex}.xp-primary-navigation a{padding:13px 12px;border-bottom:1px solid var(--xh-line)}.xp-primary-navigation a:last-child{border-bottom:0}.xp-header-login{display:none}
  .xh-hero{padding-top:38px}.xh-hero-grid{grid-template-columns:1fr}.xh-hero-copy{max-width:720px}.xh-hero-visual{max-width:720px}.xh-curated-stamp{left:auto;right:-12px}
  .xh-trust-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.xh-trust-grid article:nth-child(2){border-right:0}.xh-trust-grid article:nth-child(-n+2){border-bottom:1px solid var(--xh-line)}.xh-trust-grid article{padding:18px}
  .xh-experience-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.xh-experience-card:last-child{display:none}
  .xh-promise-grid{grid-template-columns:1fr;gap:45px}.xh-promise-image{max-width:720px}.xh-story-grid{grid-template-columns:1fr 1fr}.xh-story-card:nth-child(3){display:none}
  .xh-community-card{grid-template-columns:1fr}.xh-community-image{min-height:260px}.xh-community-image:after{background:linear-gradient(180deg,var(--xh-green) 0%,rgba(7,59,54,.25) 28%,transparent 60%)}
  .xh-faq-grid{grid-template-columns:1fr;gap:35px}.xh-faq-intro{position:static;max-width:620px}
  .xh-footer-grid{grid-template-columns:1.2fr 1fr 1fr}.xh-footer-newsletter{grid-column:1/-1;max-width:520px}.xh-final-cta-inner{align-items:flex-start;flex-direction:column}
}
@media(max-width:640px){
  .xh-container{width:min(100% - 28px,1180px)}
  .xh-announcement-inner{min-height:42px;justify-content:center}.xh-announcement-inner>span{display:none}
  .xp-site-header-inner{min-height:66px}.xp-wordmark{font-size:27px}.xp-header-cta{min-height:38px;padding:0 15px;font-size:11px}.xp-menu-toggle-label{display:none}.xp-menu-toggle{gap:0}
  .xh-hero{padding:28px 0 24px}.xh-hero h1{font-size:clamp(48px,14.8vw,68px);letter-spacing:-3px;margin-top:14px}.xh-hero-lead{font-size:15px;line-height:1.65}.xh-hero-actions{align-items:stretch;flex-direction:column}.xh-button{width:100%}.xh-hero-visual>img{border-radius:20px}.xh-curated-stamp{width:82px;height:82px;bottom:-18px}.xh-curated-stamp b{font-size:7px}.xh-solo-note{align-items:flex-start}
  .xh-trust-strip{padding-top:20px}.xh-trust-grid{grid-template-columns:1fr;padding:6px 16px}.xh-trust-grid article,.xh-trust-grid article:nth-child(2){border-right:0;border-bottom:1px solid var(--xh-line)}.xh-trust-grid article:last-child{border-bottom:0}
  .xh-section{padding:58px 0}.xh-section-heading{align-items:flex-start;flex-direction:column;margin-bottom:24px}.xh-section-heading h2{font-size:40px}.xh-experience-grid{grid-template-columns:1fr}.xh-experience-card:last-child{display:flex}.xh-card-bottom{font-size:10px}
  .xh-centered-heading{text-align:left}.xh-centered-heading h2{font-size:43px}.xh-steps{grid-template-columns:1fr;gap:30px}.xh-steps article{text-align:left;display:grid;grid-template-columns:64px 1fr;grid-template-rows:auto auto auto;padding:0;column-gap:16px}.xh-steps article:after{display:none}.xh-steps article>span{grid-column:2}.xh-step-icon{grid-column:1;grid-row:1/4;width:58px;height:58px;margin:0;font-size:27px}.xh-steps h3{grid-column:2}.xh-steps p{grid-column:2}
  .xh-promise-copy h2{font-size:42px}.xh-promise-points{grid-template-columns:1fr;gap:12px}.xh-promise-points div{display:flex;align-items:center;gap:12px;text-align:left}.xh-promise-points b{margin:0;width:42px;height:42px}.xh-promise-image:before{display:none}
  .xh-story-grid{grid-template-columns:1fr}.xh-story-card:nth-child(3){display:flex}.xh-testimonial-placeholder{grid-template-columns:1fr;padding:30px}.xh-testimonial-placeholder h3{font-size:28px}.xh-section-heading-center{align-items:flex-start}
  .xh-community{padding-bottom:60px}.xh-community-copy{padding:38px 25px}.xh-community-copy h2{font-size:42px}.xh-community-actions{flex-direction:column}.xh-community-image{min-height:210px}
  .xh-faq-intro h2{font-size:43px}.xh-faq-list summary{font-size:13px;padding:19px 0}.xh-final-cta{padding:55px 0}.xh-final-cta h2{font-size:42px}
  .xh-footer{padding-top:52px}.xh-footer-grid{grid-template-columns:1fr 1fr;gap:35px 25px}.xh-footer-brand,.xh-footer-newsletter{grid-column:1/-1}.xh-footer-bottom{align-items:flex-start;flex-direction:column}.xh-footer-bottom nav{flex-wrap:wrap;gap:15px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.xh-button,.xh-experience-card,.xh-experience-image img{transition:none}}
.xp-mobile-account-link{display:none}
@media(max-width:900px){.xp-mobile-account-link{display:block!important;color:var(--xh-coral)!important}}

/* ========================================================================== 
   XTribe V58.2 — Homepage visual harmony and luxury scale hotfix
   Aligns typography, whitespace, imagery and section rhythm with the approved
   premium reference while keeping all live CRM content dynamic.
   ========================================================================== */
:root{
  --xh-serif:Georgia,"Times New Roman",serif;
  --xh-sans:Inter,"Avenir Next",Avenir,"Segoe UI",Arial,sans-serif;
  --xh-page-max:1260px;
}
body{font-family:var(--xh-sans);font-size:16px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.xh-container{width:min(var(--xh-page-max),calc(100% - 64px))}
.xh-announcement{font-size:12px}.xh-announcement-inner{min-height:38px}
.xp-site-header-inner{min-height:84px;gap:52px}
.xp-site-brand img{max-width:166px;max-height:50px}.xp-wordmark{font-size:36px;letter-spacing:-1.8px}
.xp-primary-navigation{gap:34px}.xp-primary-navigation a,.xp-header-login{font-size:14px;font-weight:650}
.xp-header-cta{min-height:46px;padding:0 25px;font-size:13px}
.xh-eyebrow{font-size:11px;letter-spacing:.14em}
.xh-button{min-height:51px;padding:0 25px;font-size:13px}
.xh-text-link{font-size:13px}

/* Hero: align copy with the top third of the collage and retain the full artwork. */
.xh-hero{padding:62px 0 34px}
.xh-hero-grid{grid-template-columns:minmax(0,.88fr) minmax(540px,1.12fr);align-items:start;gap:76px}
.xh-hero-copy{padding:34px 0 0;max-width:560px}
.xh-hero h1{font-size:clamp(68px,6.45vw,94px);line-height:.92;letter-spacing:-4.4px;margin:19px 0 25px}
.xh-hero h1 span{display:inline;color:var(--xh-coral,#e47d6b)}
.xh-hero-lead{max-width:535px;font-size:18px;line-height:1.7;color:#3c4541}
.xh-hero-actions{gap:14px;margin-top:31px}
.xh-solo-note{font-size:12.5px;line-height:1.45;margin-top:25px}
.xh-solo-avatars i{width:31px;height:31px}
.xh-hero-visual{min-width:0}
.xh-hero-visual>img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;border-radius:0;box-shadow:none}
.xh-curated-stamp{display:none}

/* Trust bar */
.xh-trust-strip{padding:8px 0 54px}
.xh-trust-grid{border-radius:22px;padding:28px 18px;background:rgba(255,253,250,.88)}
.xh-trust-grid article{grid-template-columns:50px 1fr;gap:16px;padding:5px 24px}
.xh-line-icon{font-size:34px}
.xh-trust-grid h2{font-size:14px;margin-bottom:5px}
.xh-trust-grid p{font-size:12px;line-height:1.55}

/* Shared section scale and headings */
.xh-section{padding:76px 0}
.xh-section-heading{margin-bottom:38px}
.xh-section-heading h2{font-size:clamp(43px,4.15vw,56px);letter-spacing:-2px}
.xh-centered-heading{max-width:780px;margin-bottom:54px}
.xh-centered-heading h2{font-size:clamp(48px,5vw,64px);letter-spacing:-2.3px}
.xh-centered-heading p{font-size:16px;line-height:1.65}

/* Experience cards: stronger hierarchy and less cramped metadata. */
.xh-experience-grid{gap:24px}
.xh-experience-card{border-radius:20px}
.xh-experience-image{aspect-ratio:1.58/1}
.xh-experience-content{padding:23px 23px 21px}
.xh-card-kicker{font-size:10px}
.xh-experience-content h3{font-size:28px;line-height:1.06;margin:9px 0 18px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:59px}
.xh-event-facts{gap:9px}
.xh-event-facts div{grid-template-columns:62px 1fr;font-size:12px;line-height:1.5}
.xh-card-bottom{padding-top:19px;font-size:12px}
.xh-card-bottom strong{font-size:11px}.xh-card-link{font-size:12px;padding-top:15px}

/* Steps: cleaner editorial row, larger icons and readable descriptions. */
.xh-how{padding-block:72px;background:#f7f1e9}
.xh-steps{gap:64px;max-width:1140px;margin-inline:auto}
.xh-steps article{padding:0 28px}
.xh-steps article:not(:last-child):after{right:-54px;top:62px;width:108px}
.xh-step-icon{width:88px;height:88px;margin:13px auto 20px;font-size:38px}
.xh-steps h3{font-size:17px;margin-bottom:9px}.xh-steps p{font-size:13px;line-height:1.7}

/* Promise */
.xh-promise-grid{grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:88px}
.xh-promise-image img{border-radius:26px}
.xh-promise-copy h2{font-size:clamp(50px,5vw,66px);letter-spacing:-2.4px;margin:15px 0 25px}
.xh-promise-copy>p{font-size:17px;line-height:1.75}
.xh-promise-points{margin:34px 0 30px}.xh-promise-points b{width:52px;height:52px;font-size:24px}.xh-promise-points span{font-size:12px}

/* Member stories and honest pre-launch state */
.xh-stories{padding-top:60px;padding-bottom:64px}
.xh-story-grid{gap:22px}.xh-story-card{min-height:270px;padding:31px}.xh-story-card blockquote{font-size:15px}
.xh-testimonial-placeholder{max-width:920px;grid-template-columns:90px 1fr;padding:48px 58px;border-radius:22px}
.xh-testimonial-placeholder h3{font-size:36px;line-height:1.08}.xh-testimonial-placeholder p{font-size:15px;line-height:1.65}

/* Community banner */
.xh-community{padding:26px 0 72px}
.xh-community-card{min-height:330px;border-radius:24px;grid-template-columns:.92fr 1.08fr}
.xh-community-copy{padding:50px 34px 50px 54px}
.xh-community-copy h2{font-size:clamp(48px,4.8vw,64px);letter-spacing:-2.4px;margin:13px 0 20px}
.xh-community-copy p{font-size:16px;line-height:1.7}
.xh-community-image{min-height:330px}

/* FAQ, final CTA and footer */
.xh-faq-grid{grid-template-columns:370px 1fr;gap:105px}
.xh-faq-intro h2{font-size:56px;letter-spacing:-2px}.xh-faq-intro p{font-size:15px}
.xh-faq-list summary{font-size:15px;padding:24px 0}.xh-faq-list details p{font-size:14.5px}
.xh-final-cta{padding:82px 0}.xh-final-cta h2{font-size:clamp(45px,5vw,62px);letter-spacing:-2.1px}
.xh-footer{padding:58px 0 26px}.xh-footer-grid{gap:58px}.xh-footer h2{font-size:13px}.xh-footer-column a,.xh-footer-newsletter>p{font-size:13px}.xh-footer-brand p{font-size:14px}.xh-footer-brand>span{font-size:12px}

@media(max-width:1180px){
  .xh-container{width:min(var(--xh-page-max),calc(100% - 48px))}
  .xp-site-header-inner{gap:30px}.xp-primary-navigation{gap:22px}
  .xh-hero-grid{grid-template-columns:minmax(0,.9fr) minmax(470px,1.1fr);gap:48px}
  .xh-hero-copy{padding-top:30px}.xh-hero h1{font-size:70px}
  .xh-trust-grid article{padding-inline:16px}
}
@media(max-width:900px){
  .xh-container{width:min(100% - 40px,var(--xh-page-max))}
  .xp-site-header-inner{min-height:74px}
  .xh-hero{padding:46px 0 34px}.xh-hero-grid{grid-template-columns:1fr;gap:34px}.xh-hero-copy{padding-top:0;max-width:760px}.xh-hero h1{font-size:clamp(62px,10vw,82px)}.xh-hero-visual{max-width:800px}
  .xh-trust-strip{padding-top:12px}.xh-trust-grid article{padding:20px}
  .xh-experience-content h3{min-height:0}
  .xh-promise-grid{gap:50px}
  .xh-community-card{grid-template-columns:1fr}.xh-community-copy{padding:50px 42px}.xh-community-image{min-height:300px}
  .xh-faq-grid{grid-template-columns:1fr;gap:38px}
}
@media(max-width:640px){
  .xh-container{width:min(100% - 30px,var(--xh-page-max))}
  .xp-wordmark{font-size:30px}.xp-site-header-inner{min-height:68px}
  .xh-hero{padding:34px 0 26px}.xh-hero h1{font-size:clamp(52px,15vw,70px);line-height:.94;letter-spacing:-3.2px}.xh-hero-lead{font-size:16px}.xh-hero-actions{margin-top:25px}
  .xh-trust-strip{padding-bottom:54px}.xh-trust-grid{padding:8px 18px}.xh-trust-grid article{grid-template-columns:48px 1fr;padding:19px 4px}
  .xh-section{padding:68px 0}.xh-section-heading h2{font-size:43px}.xh-centered-heading h2{font-size:46px}
  .xh-experience-content h3{font-size:27px}.xh-event-facts div{font-size:12px}
  .xh-how{padding-block:68px}.xh-steps{gap:34px}.xh-step-icon{width:64px;height:64px;font-size:29px}
  .xh-promise-copy h2{font-size:46px}.xh-promise-copy>p{font-size:16px}
  .xh-testimonial-placeholder{padding:34px 28px}.xh-testimonial-placeholder h3{font-size:31px}
  .xh-community{padding-bottom:68px}.xh-community-copy{padding:42px 28px}.xh-community-copy h2{font-size:45px}.xh-community-image{min-height:230px}
  .xh-faq-intro h2{font-size:46px}.xh-final-cta{padding:62px 0}.xh-final-cta h2{font-size:44px}
}


/* ========================================================================== 
   XTribe V58.5 — Founder story and purpose-led social growth positioning
   ========================================================================== */
.xh-founder-story{
  position:relative;
  overflow:hidden;
  background:#0b3b36;
  color:#f9f2e8;
  padding:94px 0 98px;
}
.xh-founder-story:before{
  content:"“";
  position:absolute;
  right:4%;
  top:-92px;
  color:rgba(255,255,255,.035);
  font-family:var(--xh-serif);
  font-size:430px;
  line-height:1;
  pointer-events:none;
}
.xh-founder-story-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr);
  gap:108px;
  align-items:start;
}
.xh-founder-story .xh-eyebrow{color:#e9a088}
.xh-founder-story-heading{position:sticky;top:112px}
.xh-founder-story-heading h2{
  margin:15px 0 26px;
  color:#fff9f0;
  font-family:var(--xh-serif);
  font-size:clamp(48px,5.2vw,70px);
  font-weight:500;
  line-height:.98;
  letter-spacing:-2.6px;
}

.xh-founder-photo{
  width:min(100%,330px);
  margin:28px 0 0;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.16);
  border-radius:22px;
  background:#163f3a;
  box-shadow:0 24px 60px rgba(0,0,0,.2);
}
.xh-founder-photo img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:4/5;
  object-fit:cover;
  object-position:center top;
}

.xh-founder-signature{
  margin:0;
  color:#d8c9bb;
  font-size:13px;
  font-weight:700;
  letter-spacing:.02em;
}
.xh-founder-story-copy{max-width:720px}
.xh-founder-story-copy>p{
  margin:0 0 21px;
  color:#e6ddd2;
  font-size:16px;
  line-height:1.84;
}
.xh-founder-story-copy .xh-founder-lead{
  color:#fff9f0;
  font-family:var(--xh-serif);
  font-size:27px;
  line-height:1.42;
  letter-spacing:-.45px;
}
.xh-founder-story-copy strong{color:#fff9f0}
.xh-founder-principle{
  margin:38px 0 34px;
  padding:31px 34px 30px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:20px;
  background:rgba(255,255,255,.055);
  backdrop-filter:blur(8px);
}
.xh-founder-principle>span{
  display:block;
  margin-bottom:13px;
  color:#e9a088;
  font-size:10px;
  font-weight:850;
  letter-spacing:.16em;
}
.xh-founder-principle blockquote{
  margin:0 0 15px;
  color:#fff9f0;
  font-family:var(--xh-serif);
  font-size:clamp(30px,3vw,42px);
  line-height:1.08;
  letter-spacing:-1.2px;
}
.xh-founder-principle p{margin:0;color:#d8cfc5;font-size:14px;line-height:1.72}
.xh-founder-story-copy .xh-founder-closing{
  margin-top:31px;
  padding-top:27px;
  border-top:1px solid rgba(255,255,255,.16);
  color:#fff9f0;
  font-size:17px;
}
@media(max-width:1000px){
  .xh-founder-story{padding:78px 0 82px}
  .xh-founder-story-grid{grid-template-columns:1fr;gap:44px}
  .xh-founder-story-heading{position:static;max-width:780px}
  .xh-founder-story-copy{max-width:820px}
}
@media(max-width:640px){
  .xh-founder-story{padding:64px 0 68px}
  .xh-founder-story-grid{gap:35px}
  .xh-founder-story-heading h2{font-size:47px;letter-spacing:-2px}
  .xh-founder-story-copy .xh-founder-lead{font-size:24px}
  .xh-founder-story-copy>p{font-size:15px;line-height:1.76}
  .xh-founder-principle{margin:31px 0;padding:26px 23px}
  .xh-founder-principle blockquote{font-size:31px}
}

/* ========================================================================== 
   XTribe V58.3 — GEO / SEO / AEO homepage answer architecture
   A calm editorial definition and direct-answer section for people and search.
   ========================================================================== */
.xh-answer-section{
  padding:64px 0 68px;
  background:#fffdfa;
  border-top:1px solid rgba(36,68,64,.08);
  border-bottom:1px solid rgba(36,68,64,.08);
}
.xh-answer-intro{
  display:grid;
  grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);
  column-gap:92px;
  align-items:start;
  max-width:1160px;
  margin-inline:auto;
}
.xh-answer-intro .xh-eyebrow{grid-column:1;align-self:end;margin-bottom:11px}
.xh-answer-intro h2{
  grid-column:1;
  margin:0;
  color:var(--xh-green,#0d403a);
  font-family:var(--xh-serif);
  font-size:clamp(46px,4.8vw,64px);
  line-height:.98;
  letter-spacing:-2.2px;
}
.xh-answer-intro>p{
  grid-column:2;
  grid-row:1/3;
  margin:2px 0 0;
  max-width:710px;
  color:#3b4541;
  font-size:18px;
  line-height:1.78;
}
.xh-answer-intro>p strong{color:var(--xh-green,#0d403a);font-weight:700}
.xh-answer-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  max-width:1160px;
  margin:48px auto 0;
  border-top:1px solid rgba(36,68,64,.12);
  padding-top:34px;
}
.xh-answer-grid article{padding:0 28px;min-width:0}
.xh-answer-grid article:first-child{padding-left:0}
.xh-answer-grid article:last-child{padding-right:0}
.xh-answer-grid article+article{border-left:1px solid rgba(36,68,64,.12)}
.xh-answer-grid h3{
  margin:0 0 12px;
  color:var(--xh-green,#0d403a);
  font-family:var(--xh-serif);
  font-size:22px;
  line-height:1.15;
  letter-spacing:-.45px;
}
.xh-answer-grid p{margin:0;color:#626963;font-size:13px;line-height:1.72}
@media(max-width:1000px){
  .xh-answer-intro{grid-template-columns:1fr;gap:18px}
  .xh-answer-intro .xh-eyebrow,.xh-answer-intro h2,.xh-answer-intro>p{grid-column:1;grid-row:auto}
  .xh-answer-intro>p{max-width:820px}
  .xh-answer-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:34px}
  .xh-answer-grid article{padding:0 28px}
  .xh-answer-grid article:nth-child(odd){padding-left:0;border-left:0}
  .xh-answer-grid article:nth-child(even){padding-right:0;border-left:1px solid rgba(36,68,64,.12)}
}
@media(max-width:640px){
  .xh-answer-section{padding:58px 0 60px}
  .xh-answer-intro h2{font-size:46px}
  .xh-answer-intro>p{font-size:16px;line-height:1.72}
  .xh-answer-grid{grid-template-columns:1fr;margin-top:36px;padding-top:26px;row-gap:0}
  .xh-answer-grid article,.xh-answer-grid article:first-child,.xh-answer-grid article:last-child,.xh-answer-grid article:nth-child(odd),.xh-answer-grid article:nth-child(even){padding:24px 0;border-left:0;border-bottom:1px solid rgba(36,68,64,.1)}
  .xh-answer-grid article:first-child{padding-top:0}
  .xh-answer-grid article:last-child{border-bottom:0;padding-bottom:0}
  .xh-answer-grid h3{font-size:24px}
  .xh-answer-grid p{font-size:14px}
}

/* ========================================================================== 
   XTribe V59 — trust, value assessment, group pricing, verification and media
   ========================================================================== */
.xh-home-page #xh-home-heading span{display:inline;color:var(--xh-coral,#e47d6b)}
.xh-home-page .xh-hero h1{font-size:clamp(58px,5.75vw,80px);line-height:.97;letter-spacing:-4px}

.xh-benefit-check{padding:92px 0;background:#0b3c36;color:#fff;border-radius:0}
.xh-benefit-grid{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr);gap:92px;align-items:start}
.xh-benefit-copy{position:sticky;top:110px}.xh-benefit-copy .xh-eyebrow{color:#ef9a82}.xh-benefit-copy h2{margin:15px 0 22px;color:#fff8ef;font-family:var(--xh-serif);font-size:clamp(46px,4.8vw,66px);line-height:1;letter-spacing:-2.3px;font-weight:500}.xh-benefit-copy>p{max-width:520px;margin:0;color:#d9e2dd;font-size:17px;line-height:1.75}.xh-benefit-assurance{margin-top:30px;padding:20px 22px;border:1px solid rgba(255,255,255,.17);border-radius:16px;background:rgba(255,255,255,.05)}.xh-benefit-assurance strong,.xh-benefit-assurance span{display:block}.xh-benefit-assurance strong{color:#fff;font-size:13px}.xh-benefit-assurance span{margin-top:5px;color:#cbd8d2;font-size:12px;line-height:1.55}
.xh-benefit-form{display:grid;gap:18px;padding:34px;border:1px solid rgba(255,255,255,.15);border-radius:24px;background:#fffaf4;color:var(--xh-ink);box-shadow:0 25px 70px rgba(0,0,0,.14)}.xh-benefit-form fieldset{margin:0;padding:0;border:0}.xh-benefit-form legend{margin-bottom:12px;color:var(--xh-green);font-family:var(--xh-serif);font-size:22px;line-height:1.15}.xh-choice-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.xh-choice-row label{cursor:pointer}.xh-choice-row input{position:absolute;opacity:0;pointer-events:none}.xh-choice-row span{display:flex;align-items:center;justify-content:center;min-height:56px;padding:11px 13px;border:1px solid #dedbd3;border-radius:13px;background:#fff;text-align:center;color:#4f5854;font-size:12px;font-weight:700;line-height:1.35;transition:.2s ease}.xh-choice-row input:focus-visible+span{outline:3px solid rgba(228,125,107,.32);outline-offset:2px}.xh-choice-row input:checked+span{border-color:var(--xh-coral);background:#fff1ec;color:#9d493a;box-shadow:inset 0 0 0 1px var(--xh-coral)}.xh-benefit-form>.xh-button{width:max-content;margin-top:5px}.xh-benefit-result{padding:24px;border-radius:17px;background:#edf3ef;border:1px solid #d5e2db}.xh-benefit-result h3{margin:0 0 8px;color:var(--xh-green);font-family:var(--xh-serif);font-size:29px;font-weight:500}.xh-benefit-result p{margin:0;color:#4f5d58;font-size:14px;line-height:1.65}.xh-benefit-result ul{margin:13px 0 0;padding-left:18px;color:#4f5d58;font-size:13px;line-height:1.7}

.xh-group-badge{position:absolute;right:12px;bottom:12px;padding:7px 10px;border-radius:999px;background:#fff8ef;color:#8b4b3f;font-size:10px;letter-spacing:.04em;box-shadow:0 5px 20px rgba(0,0,0,.12)}
.xh-group-pricing{padding:82px 0;background:#f4eee5}.xh-pricing-grid{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:76px;align-items:center}.xh-pricing-copy h2{margin:14px 0 20px;color:var(--xh-green);font-family:var(--xh-serif);font-size:clamp(43px,4.5vw,61px);line-height:1.02;letter-spacing:-2px;font-weight:500}.xh-pricing-copy p{margin:0;color:#5e6662;font-size:16px;line-height:1.72}.xh-pricing-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.xh-pricing-cards article{min-height:220px;padding:27px 24px;border:1px solid #dfd9cf;border-radius:20px;background:#fffaf4}.xh-pricing-cards article.is-featured{transform:translateY(-10px);background:#0d403a;color:#fff;border-color:#0d403a;box-shadow:0 22px 50px rgba(13,64,58,.16)}.xh-pricing-cards article>span{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#f1e5d9;color:#9b5d4c;font-family:var(--xh-serif);font-size:18px}.xh-pricing-cards .is-featured>span{background:rgba(255,255,255,.12);color:#f3b39f}.xh-pricing-cards h3{margin:27px 0 10px;color:inherit;font-family:var(--xh-serif);font-size:27px;font-weight:500}.xh-pricing-cards p{margin:0;color:#67706b;font-size:13px;line-height:1.65}.xh-pricing-cards .is-featured p{color:#d8e3de}

.xh-steps-four{grid-template-columns:repeat(4,minmax(0,1fr));gap:34px}.xh-steps-four article{padding-inline:14px}.xh-steps-four article:not(:last-child):after{display:none}
.xh-verification{padding:92px 0;background:#fffdfa}.xh-verification-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:90px;align-items:center}.xh-verification-copy h2{margin:15px 0 22px;color:var(--xh-green);font-family:var(--xh-serif);font-size:clamp(47px,4.8vw,64px);line-height:1;letter-spacing:-2.3px;font-weight:500}.xh-verification-copy p{margin:0 0 17px;color:#59635e;font-size:16px;line-height:1.76}.xh-verification-copy .xh-text-link{margin-top:8px}.xh-verification-list{border-top:1px solid #dcd9d1}.xh-verification-list article{display:grid;grid-template-columns:54px 1fr;gap:17px;padding:25px 0;border-bottom:1px solid #dcd9d1}.xh-verification-list b{font-family:var(--xh-serif);font-size:23px;color:var(--xh-coral)}.xh-verification-list h3{margin:0 0 6px;color:var(--xh-green);font-family:var(--xh-serif);font-size:25px;font-weight:500}.xh-verification-list p{margin:0;color:#69716d;font-size:13px;line-height:1.6}

.xh-founder-story-compact{padding-block:88px}.xh-founder-story-compact .xh-founder-story-copy>p{margin-bottom:18px}.xh-founder-story-compact .xh-founder-principle{margin:30px 0}
.xh-takeaway{padding:88px 0;background:#f6f1e9}.xh-takeaway .xh-centered-heading{max-width:820px}.xh-takeaway-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:1080px;margin:45px auto 0}.xh-takeaway-grid article{padding:31px;border:1px solid #ddd8cf;border-radius:20px;background:#fffaf4;text-align:left}.xh-takeaway-grid article>span{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#eaf0ec;color:var(--xh-green);font-size:24px}.xh-takeaway-grid h3{margin:23px 0 9px;color:var(--xh-green);font-family:var(--xh-serif);font-size:28px;font-weight:500}.xh-takeaway-grid p{margin:0;color:#69716d;font-size:13px;line-height:1.68}

.xh-story-card.has-video{padding:0;overflow:hidden}.xh-story-card.has-video>.xh-story-rating,.xh-story-card.has-video>.xh-quote,.xh-story-card.has-video>blockquote,.xh-story-card.has-video>footer{margin-left:27px;margin-right:27px}.xh-story-card.has-video>footer{margin-bottom:28px}.xh-testimonial-video{position:relative;width:100%;aspect-ratio:16/9;background:#0d211e}.xh-testimonial-video iframe,.xh-testimonial-video video{display:block;width:100%;height:100%;border:0;object-fit:cover}.xh-story-rating{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 8px;color:#c57d4e}.xh-story-card.has-video>.xh-story-rating{margin-top:22px}.xh-story-rating span{font-size:17px;letter-spacing:2px}.xh-story-rating small{color:#747c77;font-size:10px;font-weight:700}.xh-story-card footer{flex-wrap:wrap}.xh-story-card footer em{margin-left:auto;padding:5px 8px;border-radius:999px;background:#e8f0eb;color:#315e54;font-style:normal;font-size:9px;font-weight:800;letter-spacing:.04em}

.xh-artwork{padding:94px 0;background:#fffdfa}.xh-artwork-grid{display:grid;grid-template-columns:minmax(270px,.72fr) minmax(0,1.28fr);gap:75px;align-items:start}.xh-artwork-copy h2{margin:15px 0 21px;color:var(--xh-green);font-family:var(--xh-serif);font-size:clamp(46px,4.7vw,63px);line-height:1;letter-spacing:-2.2px;font-weight:500}.xh-artwork-copy p{margin:0 0 15px;color:#59635e;font-size:16px;line-height:1.72}.xh-artwork-copy .xh-artwork-note{font-size:12px;color:#7a817d}.xh-artwork-copy .xh-button{margin-top:13px}.xh-artwork-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.xh-artwork-cards article{padding:14px 14px 20px;border:1px solid #dfd9cf;border-radius:20px;background:#fff;box-shadow:0 15px 40px rgba(30,50,45,.05)}.xh-artwork-visual{display:grid;place-items:center;aspect-ratio:4/5;border-radius:13px;overflow:hidden;padding:22px;text-align:center}.xh-artwork-visual span{font-family:var(--xh-serif);font-size:30px;line-height:1;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.15)}.xh-artwork-visual-1{background:radial-gradient(circle at 30% 25%,#f3b297 0 12%,transparent 13%),linear-gradient(145deg,#173f3a 0 48%,#d66f58 49% 100%)}.xh-artwork-visual-2{background:linear-gradient(35deg,#ebd4ae 0 25%,#9d5145 26% 50%,#153d38 51% 75%,#f4eee2 76%)}.xh-artwork-visual-3{background:radial-gradient(circle at 70% 30%,#e47d6b 0 16%,transparent 17%),linear-gradient(160deg,#0f403a,#d6b27a)}.xh-artwork-cards h3{margin:17px 0 7px;color:var(--xh-green);font-family:var(--xh-serif);font-size:24px;font-weight:500}.xh-artwork-cards p{margin:0;color:#67706b;font-size:12px;line-height:1.58}.xh-artwork-cards small{display:block;margin-top:13px;color:#a35e4c;font-size:10px;font-weight:800}

.xh-answer-grid{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:34px}.xh-answer-grid article:nth-child(4){border-left:0}.xh-answer-grid article:nth-child(n+4){padding-top:32px;border-top:1px solid rgba(36,68,64,.12)}

@media(max-width:1050px){
  .xh-benefit-grid,.xh-pricing-grid,.xh-verification-grid,.xh-artwork-grid{grid-template-columns:1fr;gap:44px}.xh-benefit-copy{position:static}.xh-choice-row{grid-template-columns:1fr 1fr 1fr}.xh-pricing-copy,.xh-verification-copy,.xh-artwork-copy{max-width:800px}.xh-steps-four{grid-template-columns:repeat(2,minmax(0,1fr))}.xh-artwork-cards{max-width:900px}
}
@media(max-width:760px){
  .xh-home-page .xh-hero h1{font-size:clamp(47px,13vw,66px);letter-spacing:-3px}.xh-benefit-check,.xh-group-pricing,.xh-verification,.xh-takeaway,.xh-artwork{padding:66px 0}.xh-benefit-form{padding:24px 19px}.xh-choice-row,.xh-pricing-cards,.xh-takeaway-grid,.xh-artwork-cards,.xh-answer-grid{grid-template-columns:1fr}.xh-choice-row span{justify-content:flex-start;text-align:left;min-height:50px}.xh-benefit-form>.xh-button{width:100%}.xh-pricing-cards article.is-featured{transform:none}.xh-steps-four{grid-template-columns:1fr}.xh-verification-grid{gap:34px}.xh-story-card.has-video>.xh-story-rating,.xh-story-card.has-video>.xh-quote,.xh-story-card.has-video>blockquote,.xh-story-card.has-video>footer{margin-left:22px;margin-right:22px}.xh-answer-grid article,.xh-answer-grid article:nth-child(4),.xh-answer-grid article:nth-child(n+4){padding:22px 0;border-left:0;border-top:0;border-bottom:1px solid rgba(36,68,64,.1)}.xh-answer-grid article:last-child{border-bottom:0}.xh-artwork-visual{aspect-ratio:16/10}.xh-artwork-visual span{font-size:34px}
}

/* V59 secure professional profile checkout */
.xp-form-grid .xp-field-span-2{grid-column:1/-1}.xp-form-grid input[type="file"]{padding:10px;background:#faf8f4}.xp-form-grid label small{line-height:1.5}
@media(max-width:680px){.xp-form-grid .xp-field-span-2{grid-column:auto}}

/* XTribe CRM V59.1 — unified public H1 typography */
.xp-main h1{
  font-size:clamp(58px,5.75vw,80px)!important;
  line-height:.97!important;
  letter-spacing:-4px!important;
  overflow-wrap:anywhere;
  text-wrap:balance;
}
@media(max-width:1024px){
  .xp-main h1{
    font-size:clamp(50px,7.2vw,68px)!important;
    line-height:.98!important;
    letter-spacing:-3.2px!important;
  }
}
@media(max-width:760px){
  .xp-main h1{
    font-size:clamp(42px,11.8vw,58px)!important;
    line-height:1!important;
    letter-spacing:-2.4px!important;
  }
}
@media(max-width:420px){
  .xp-main h1{
    font-size:clamp(36px,10.8vw,48px)!important;
    letter-spacing:-1.8px!important;
  }
}


/* ========================================================================== 
   XTribe V59.2.1 — full-width homepage and premium founder-story layout
   Scoped override layer. Keep this block at the end of xtribe-public.css.
   ========================================================================== */
html,
body{
  width:100%;
  max-width:100%;
  overflow-x:hidden;
}
@supports (overflow:clip){
  html,
  body{overflow-x:clip}
}
.xh-home-page,
.xh-home-page .xp-main{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
}
.xh-home-page .xp-main{
  display:block!important;
  overflow-x:hidden!important;
}
@supports (overflow:clip){
  .xh-home-page .xp-main{overflow-x:clip!important}
}
.xh-home-page .xp-main>section,
.xh-home-page .xh-announcement,
.xh-home-page .xp-site-header,
.xh-home-page .xh-footer{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
}
.xh-home-page .xh-container{
  width:min(1260px,calc(100% - clamp(32px,6vw,96px)))!important;
  max-width:1260px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  min-width:0!important;
}
.xh-home-page .xh-container>*,
.xh-home-page [class*="-grid"]>*,
.xh-home-page [class*="-copy"]{
  min-width:0;
}
.xh-home-page img,
.xh-home-page video,
.xh-home-page iframe{
  max-width:100%;
}

/* Founder story: replace the long sticky split with a balanced editorial journey. */
.xh-founder-story-premium{
  position:relative;
  overflow:hidden;
  padding:clamp(82px,8vw,124px) 0!important;
  background:
    radial-gradient(circle at 8% 8%,rgba(228,125,107,.12),transparent 28%),
    radial-gradient(circle at 92% 85%,rgba(199,168,107,.09),transparent 30%),
    #0b3b36!important;
}
.xh-founder-story-premium:before{
  right:-26px!important;
  top:-135px!important;
  font-size:480px!important;
  color:rgba(255,255,255,.025)!important;
}
.xh-founder-story-shell{
  position:relative;
  z-index:1;
  display:grid;
  gap:clamp(46px,5vw,76px);
}
.xh-founder-story-premium .xh-founder-story-intro{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  align-items:end;
  gap:clamp(58px,7vw,118px);
  padding-bottom:clamp(42px,5vw,68px);
  border-bottom:1px solid rgba(255,255,255,.14);
}
.xh-founder-story-premium .xh-founder-story-heading{
  position:static!important;
  top:auto!important;
}
.xh-founder-story-premium .xh-founder-story-heading h2{
  max-width:610px;
  margin:17px 0 27px;
  font-size:clamp(52px,5.2vw,76px)!important;
  line-height:.97!important;
  letter-spacing:-3px!important;
  text-wrap:balance;
}
.xh-founder-story-opening{
  max-width:650px;
  padding-bottom:4px;
}
.xh-founder-story-premium .xh-founder-story-opening p{
  margin:0 0 20px;
  color:#dfd8cf;
  font-size:16px;
  line-height:1.82;
}
.xh-founder-story-premium .xh-founder-story-opening .xh-founder-lead{
  margin-bottom:23px;
  color:#fff9f0;
  font-family:var(--xh-serif);
  font-size:clamp(25px,2.15vw,34px);
  line-height:1.35;
  letter-spacing:-.7px;
}
.xh-founder-story-moment{
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(330px,.88fr);
  gap:clamp(34px,5vw,76px);
  align-items:stretch;
}
.xh-founder-story-moment-copy{
  padding:clamp(34px,4vw,56px);
  border:1px solid rgba(255,255,255,.13);
  border-radius:28px;
  background:rgba(255,255,255,.035);
}
.xh-story-step{
  display:flex;
  align-items:center;
  gap:12px;
  color:#f0a58e;
  font-family:var(--xh-serif);
  font-size:30px;
  line-height:1;
}
.xh-story-step i{
  font-family:var(--xh-sans);
  font-size:10px;
  font-style:normal;
  font-weight:850;
  letter-spacing:.16em;
}
.xh-founder-story-moment-copy h3,
.xh-founder-story-timeline h3{
  color:#fff9f0;
  font-family:var(--xh-serif);
  font-weight:500;
  text-wrap:balance;
}
.xh-founder-story-moment-copy h3{
  max-width:690px;
  margin:23px 0 25px;
  font-size:clamp(37px,3.6vw,53px);
  line-height:1.04;
  letter-spacing:-1.8px;
}
.xh-founder-story-moment-copy p,
.xh-founder-story-timeline p,
.xh-founder-story-manifesto p,
.xh-founder-story-close p{
  color:#ddd6cd;
  font-size:15px;
  line-height:1.8;
}
.xh-founder-story-moment-copy p{max-width:720px;margin:0 0 18px}
.xh-founder-story-question{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(34px,4vw,52px);
  border:1px solid rgba(240,165,142,.34);
  border-radius:28px;
  background:linear-gradient(145deg,rgba(228,125,107,.13),rgba(255,255,255,.045));
  box-shadow:0 28px 80px rgba(0,0,0,.13);
}
.xh-founder-story-question>span,
.xh-founder-story-manifesto .xh-eyebrow{
  color:#f0a58e;
}
.xh-founder-story-question>span{
  margin-bottom:18px;
  font-size:10px;
  font-weight:850;
  letter-spacing:.16em;
}
.xh-founder-story-question blockquote{
  margin:0 0 24px;
  color:#fff9f0;
  font-family:var(--xh-serif);
  font-size:clamp(34px,3.15vw,47px);
  line-height:1.08;
  letter-spacing:-1.4px;
}
.xh-founder-story-question p{margin:0;color:#d9d1c8;font-size:14px;line-height:1.72}
.xh-founder-story-timeline{
  position:relative;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
}
.xh-founder-story-timeline:before{
  content:"";
  position:absolute;
  left:8%;
  right:8%;
  top:25px;
  border-top:1px solid rgba(240,165,142,.3);
}
.xh-founder-story-timeline article{
  position:relative;
  padding:43px 30px 32px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:24px;
  background:rgba(255,255,255,.035);
}
.xh-founder-story-timeline article:before{
  content:"";
  position:absolute;
  top:19px;
  left:30px;
  width:13px;
  height:13px;
  border:4px solid #0b3b36;
  border-radius:50%;
  background:#f0a58e;
  box-shadow:0 0 0 1px rgba(240,165,142,.45);
}
.xh-founder-story-timeline .xh-story-step{
  position:relative;
  z-index:1;
  margin-bottom:22px;
  padding-left:0;
  font-size:26px;
}
.xh-founder-story-timeline h3{
  margin:0 0 17px;
  font-size:clamp(26px,2.2vw,34px);
  line-height:1.1;
  letter-spacing:-1px;
}
.xh-founder-story-timeline p{margin:0;font-size:14px;line-height:1.75}
.xh-founder-story-manifesto{
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);
  gap:clamp(38px,6vw,94px);
  align-items:center;
  padding:clamp(42px,5vw,68px);
  border-radius:30px;
  background:#f6efe5;
  color:#153d38;
}
.xh-founder-story-manifesto blockquote{
  max-width:760px;
  margin:17px 0 0;
  color:#153d38;
  font-family:var(--xh-serif);
  font-size:clamp(36px,3.7vw,53px);
  line-height:1.06;
  letter-spacing:-1.8px;
}
.xh-founder-story-manifesto p{
  margin:0 0 17px;
  color:#455a54;
  font-size:15px;
  line-height:1.78;
}
.xh-founder-story-manifesto p:last-child{margin-bottom:0}
.xh-founder-story-impact{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border-block:1px solid rgba(255,255,255,.14);
}
.xh-founder-story-impact article{
  display:flex;
  align-items:center;
  gap:16px;
  min-height:104px;
  padding:21px 25px;
  border-right:1px solid rgba(255,255,255,.14);
}
.xh-founder-story-impact article:last-child{border-right:0}
.xh-founder-story-impact b{
  color:#f0a58e;
  font-family:var(--xh-serif);
  font-size:25px;
  font-weight:500;
}
.xh-founder-story-impact span{
  color:#fff9f0;
  font-size:13px;
  font-weight:750;
  line-height:1.45;
}
.xh-founder-story-close{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:26px 58px;
  max-width:1060px;
  margin-inline:auto;
}
.xh-founder-story-close p{margin:0}
.xh-founder-story-close .xh-founder-closing{
  grid-column:1/-1;
  margin:8px 0 0;
  padding:27px 0 0;
  border-top:1px solid rgba(255,255,255,.16);
  color:#fff9f0;
  font-size:18px;
  line-height:1.7;
}

@media(max-width:1080px){
  .xh-founder-story-premium .xh-founder-story-intro,
  .xh-founder-story-moment,
  .xh-founder-story-manifesto{
    grid-template-columns:1fr;
  }
  .xh-founder-story-premium .xh-founder-story-heading h2{max-width:790px}
  .xh-founder-story-opening{max-width:800px}
  .xh-founder-story-question{min-height:0}
  .xh-founder-story-timeline{grid-template-columns:1fr}
  .xh-founder-story-timeline:before{left:36px;right:auto;top:35px;bottom:35px;border-top:0;border-left:1px solid rgba(240,165,142,.3)}
  .xh-founder-story-timeline article{padding-left:72px}
  .xh-founder-story-timeline article:before{left:29px;top:48px}
  .xh-founder-story-impact{grid-template-columns:repeat(2,minmax(0,1fr))}
  .xh-founder-story-impact article:nth-child(2){border-right:0}
  .xh-founder-story-impact article:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.14)}
}
@media(max-width:700px){
  .xh-home-page .xh-container{
    width:calc(100% - 30px)!important;
  }
  .xh-founder-story-premium{padding:68px 0 72px!important}
  .xh-founder-story-shell{gap:42px}
  .xh-founder-story-premium .xh-founder-story-intro{gap:30px;padding-bottom:38px}
  .xh-founder-story-premium .xh-founder-story-heading h2{
    font-size:clamp(43px,12vw,57px)!important;
    line-height:.99!important;
    letter-spacing:-2.2px!important;
  }
  .xh-founder-story-premium .xh-founder-story-opening .xh-founder-lead{font-size:25px}
  .xh-founder-story-moment-copy,
  .xh-founder-story-question,
  .xh-founder-story-manifesto{padding:28px 23px;border-radius:22px}
  .xh-founder-story-moment-copy h3{font-size:37px}
  .xh-founder-story-question blockquote{font-size:34px}
  .xh-founder-story-timeline article{padding:36px 23px 28px 58px;border-radius:20px}
  .xh-founder-story-timeline:before{left:23px}
  .xh-founder-story-timeline article:before{left:16px;top:41px}
  .xh-founder-story-timeline .xh-story-step{display:grid;gap:7px}
  .xh-founder-story-timeline h3{font-size:29px}
  .xh-founder-story-manifesto blockquote{font-size:35px}
  .xh-founder-story-impact{grid-template-columns:1fr}
  .xh-founder-story-impact article,
  .xh-founder-story-impact article:nth-child(2){border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}
  .xh-founder-story-impact article:last-child{border-bottom:0}
  .xh-founder-story-close{grid-template-columns:1fr;gap:22px}
  .xh-founder-story-close .xh-founder-closing{grid-column:auto}
}

/* Prevent visually hidden questionnaire radios from inheriting the global
   input width and expanding the document beyond the viewport. */
.xh-home-page .xh-choice-row input[type="radio"]{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  min-width:1px!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
  opacity:0!important;
}








/* =========================================================
   XTribe V59.2.2 — Premium Common Questions section
   Add this near the END of assets/css/xtribe-public.css
   ========================================================= */

.xh-home-page .xh-answer-section {
    position: relative;
    overflow: hidden;
    background: #FAF7F1;
    padding: clamp(78px, 7vw, 118px) 0;
}

.xh-home-page .xh-answer-section::before {
    content: "";
    position: absolute;
    top: -170px;
    right: -150px;
    width: 430px;
    height: 430px;
    border-radius: 50%;
    background: rgba(227, 236, 229, .58);
    pointer-events: none;
}

.xh-home-page .xh-answer-section::after {
    content: "“";
    position: absolute;
    top: 22px;
    right: clamp(26px, 5vw, 86px);
    color: rgba(10, 52, 52, .045);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(170px, 18vw, 290px);
    line-height: 1;
    pointer-events: none;
}

.xh-home-page .xh-answer-section .xh-container {
    position: relative;
    z-index: 1;
}

.xh-home-page .xh-answer-header {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(420px, 1.1fr);
    gap: clamp(48px, 7vw, 110px);
    align-items: end;
    padding-bottom: clamp(34px, 4vw, 52px);
    margin-bottom: clamp(26px, 3vw, 40px);
    border-bottom: 1px solid rgba(10, 52, 52, .14);
}

.xh-home-page .xh-answer-title,
.xh-home-page .xh-answer-summary {
    min-width: 0;
}

.xh-home-page .xh-answer-title h2 {
    max-width: 760px;
    margin: 12px 0 0;
    color: #0A3434;
    font-size: clamp(48px, 5.1vw, 76px);
    line-height: .98;
    letter-spacing: -3.6px;
    text-wrap: balance;
}

.xh-home-page .xh-answer-summary {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 18px;
    align-items: start;
    max-width: 700px;
    padding: clamp(24px, 2.8vw, 34px);
    border: 1px solid rgba(10, 52, 52, .12);
    border-radius: 24px;
    background: rgba(255, 255, 255, .58);
    box-shadow: 0 18px 50px rgba(10, 52, 52, .055);
    backdrop-filter: blur(8px);
}

.xh-home-page .xh-answer-summary-mark {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    color: #E47D6B;
    background: #FFF;
    border: 1px solid rgba(228, 125, 107, .22);
    font-size: 17px;
}

.xh-home-page .xh-answer-summary p {
    margin: 0;
    color: rgba(10, 52, 52, .78);
    font-size: clamp(16px, 1.25vw, 19px);
    line-height: 1.68;
}

.xh-home-page .xh-answer-summary strong {
    color: #0A3434;
    font-weight: 750;
}

.xh-home-page .xh-answer-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.xh-home-page .xh-answer-grid article {
    position: relative;
    min-width: 0;
    min-height: 0;
    padding: clamp(24px, 2.2vw, 32px);
    border: 1px solid rgba(10, 52, 52, .11);
    border-radius: 22px;
    background: rgba(255, 255, 255, .72);
    box-shadow: 0 12px 34px rgba(10, 52, 52, .035);
    transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease, background .25s ease;
}

.xh-home-page .xh-answer-grid article:hover {
    transform: translateY(-4px);
    border-color: rgba(228, 125, 107, .38);
    background: #FFF;
    box-shadow: 0 20px 48px rgba(10, 52, 52, .075);
}

.xh-home-page .xh-answer-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    height: 28px;
    margin-bottom: 24px;
    padding: 0 10px;
    border-radius: 999px;
    color: #C96553;
    background: rgba(228, 125, 107, .11);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.2px;
}

.xh-home-page .xh-answer-grid h3 {
    margin: 0 0 13px;
    color: #0A3434;
    font-size: clamp(21px, 1.75vw, 27px);
    line-height: 1.08;
    letter-spacing: -.8px;
    text-wrap: balance;
}

.xh-home-page .xh-answer-grid p {
    margin: 0;
    color: rgba(10, 52, 52, .67);
    font-size: 14px;
    line-height: 1.68;
}

.xh-home-page .xh-answer-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    margin-top: 18px;
    padding: 22px 28px;
    border: 1px solid rgba(10, 52, 52, .10);
    border-radius: 18px;
    background: #E3ECE5;
}

.xh-home-page .xh-answer-footer p {
    margin: 0;
    color: rgba(10, 52, 52, .74);
    font-size: 15px;
}

.xh-home-page .xh-answer-footer strong {
    color: #0A3434;
}

.xh-home-page .xh-answer-footer .xh-text-link {
    flex: 0 0 auto;
    color: #0A3434;
    white-space: nowrap;
}

@media (max-width: 1100px) {
    .xh-home-page .xh-answer-header {
        grid-template-columns: 1fr;
        gap: 28px;
        align-items: start;
    }

    .xh-home-page .xh-answer-summary {
        max-width: none;
    }

    .xh-home-page .xh-answer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 680px) {
    .xh-home-page .xh-answer-section {
        padding: 68px 0;
    }

    .xh-home-page .xh-answer-section::after {
        display: none;
    }

    .xh-home-page .xh-answer-header {
        gap: 24px;
        padding-bottom: 28px;
        margin-bottom: 22px;
    }

    .xh-home-page .xh-answer-title h2 {
        font-size: clamp(40px, 12vw, 54px);
        line-height: 1;
        letter-spacing: -2.4px;
    }

    .xh-home-page .xh-answer-summary {
        grid-template-columns: 34px minmax(0, 1fr);
        gap: 14px;
        padding: 20px;
        border-radius: 18px;
    }

    .xh-home-page .xh-answer-summary-mark {
        width: 34px;
        height: 34px;
    }

    .xh-home-page .xh-answer-grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .xh-home-page .xh-answer-grid article {
        padding: 24px;
        border-radius: 18px;
    }

    .xh-home-page .xh-answer-grid h3 {
        font-size: 23px;
    }

    .xh-home-page .xh-answer-footer {
        align-items: flex-start;
        flex-direction: column;
        gap: 12px;
        padding: 20px;
    }

    .xh-home-page .xh-answer-footer .xh-text-link {
        white-space: normal;
    }
}











/* =========================================================
   XTribe V59.2.3 — Premium How XTribe Works section
   Add at the END of assets/css/xtribe-public.css
   ========================================================= */

.xh-home-page .xh-how-premium {
    position: relative;
    overflow: hidden;
    background: #FAF7F1;
    padding: clamp(76px, 7.5vw, 124px) 0;
}

.xh-home-page .xh-how-premium::before {
    content: "";
    position: absolute;
    left: -160px;
    bottom: -220px;
    width: 520px;
    height: 520px;
    border-radius: 50%;
    background: rgba(227, 236, 229, .72);
    pointer-events: none;
}

.xh-home-page .xh-how-shell {
    position: relative;
    overflow: hidden;
    padding: clamp(38px, 5vw, 74px);
    border-radius: clamp(26px, 3vw, 42px);
    background:
        radial-gradient(circle at 100% 0%, rgba(255,255,255,.075), transparent 33%),
        linear-gradient(145deg, #0A3434 0%, #0D413C 100%);
    box-shadow: 0 30px 80px rgba(10, 52, 52, .16);
}

.xh-home-page .xh-how-shell::after {
    content: "04";
    position: absolute;
    top: -48px;
    right: 28px;
    color: rgba(255,255,255,.035);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(180px, 23vw, 360px);
    line-height: 1;
    pointer-events: none;
}

.xh-home-page .xh-how-intro {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.04fr) minmax(390px, .96fr);
    gap: clamp(44px, 7vw, 108px);
    align-items: end;
    padding-bottom: clamp(34px, 4vw, 54px);
    margin-bottom: clamp(26px, 3vw, 40px);
    border-bottom: 1px solid rgba(255,255,255,.14);
}

.xh-home-page .xh-how-heading,
.xh-home-page .xh-how-intro-copy {
    min-width: 0;
}

.xh-home-page .xh-how-premium .xh-eyebrow {
    color: #E47D6B;
}

.xh-home-page .xh-how-heading h2 {
    max-width: 790px;
    margin: 13px 0 0;
    color: #FAF7F1;
    font-size: clamp(46px, 5vw, 76px);
    line-height: .98;
    letter-spacing: -3.4px;
    text-wrap: balance;
}

.xh-home-page .xh-how-heading h2 span {
    color: #E47D6B;
}

.xh-home-page .xh-how-intro-copy > p {
    margin: 0;
    color: rgba(250,247,241,.78);
    font-size: clamp(16px, 1.2vw, 19px);
    line-height: 1.72;
}

.xh-home-page .xh-how-principle {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 14px;
    align-items: start;
    margin-top: 25px;
    padding: 20px 22px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 18px;
    background: rgba(255,255,255,.055);
}

.xh-home-page .xh-how-principle > span {
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    color: #FAF7F1;
    background: #E47D6B;
    font-size: 14px;
}

.xh-home-page .xh-how-principle p {
    margin: 0;
    color: rgba(250,247,241,.72);
    font-size: 14px;
    line-height: 1.6;
}

.xh-home-page .xh-how-principle strong {
    color: #FFF;
}

.xh-home-page .xh-how-journey {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.xh-home-page .xh-how-journey::before {
    content: "";
    position: absolute;
    top: 54px;
    left: 9%;
    right: 9%;
    height: 1px;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(228, 125, 107, .45),
        rgba(228, 125, 107, .45),
        transparent
    );
    pointer-events: none;
}

.xh-home-page .xh-how-step {
    position: relative;
    z-index: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    padding: clamp(22px, 2vw, 30px);
    border: 1px solid rgba(10,52,52,.10);
    border-radius: 22px;
    background: #FAF7F1;
    box-shadow: 0 16px 40px rgba(0,0,0,.08);
    transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
}

.xh-home-page .xh-how-step:hover {
    transform: translateY(-6px);
    background: #FFF;
    box-shadow: 0 24px 54px rgba(0,0,0,.13);
}

.xh-home-page .xh-how-step-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 28px;
}

.xh-home-page .xh-how-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 29px;
    min-width: 42px;
    padding: 0 11px;
    border-radius: 999px;
    color: #E47D6B;
    background: rgba(228, 125, 107, .12);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: 1.2px;
}

.xh-home-page .xh-how-icon {
    display: grid;
    place-items: center;
    width: 46px;
    height: 46px;
    border: 1px solid rgba(10,52,52,.14);
    border-radius: 50%;
    color: #0A3434;
    background: #E3ECE5;
    font-size: 19px;
}

.xh-home-page .xh-how-step h3 {
    margin: 0 0 13px;
    color: #0A3434;
    font-size: clamp(21px, 1.7vw, 27px);
    line-height: 1.08;
    letter-spacing: -.8px;
    text-wrap: balance;
}

.xh-home-page .xh-how-step p {
    margin: 0;
    color: rgba(10,52,52,.68);
    font-size: 14px;
    line-height: 1.68;
}

.xh-home-page .xh-how-step small {
    display: block;
    margin-top: auto;
    padding-top: 22px;
    color: #E47D6B;
    font-size: 11px;
    font-weight: 750;
    line-height: 1.45;
    letter-spacing: .35px;
}

.xh-home-page .xh-how-footer {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 38px;
    margin-top: 18px;
    padding: 26px 30px;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 20px;
    background: rgba(255,255,255,.055);
}

.xh-home-page .xh-how-footer > div {
    max-width: 720px;
}

.xh-home-page .xh-how-footer p {
    margin: 7px 0 0;
    color: rgba(250,247,241,.76);
    font-size: 15px;
    line-height: 1.6;
}

.xh-home-page .xh-how-footer .xh-button {
    flex: 0 0 auto;
}

@media (max-width: 1120px) {
    .xh-home-page .xh-how-intro {
        grid-template-columns: 1fr;
        gap: 28px;
        align-items: start;
    }

    .xh-home-page .xh-how-journey {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .xh-home-page .xh-how-journey::before {
        display: none;
    }
}

@media (max-width: 680px) {
    .xh-home-page .xh-how-premium {
        padding: 66px 0;
    }

    .xh-home-page .xh-how-shell {
        padding: 28px 18px;
        border-radius: 24px;
    }

    .xh-home-page .xh-how-shell::after {
        display: none;
    }

    .xh-home-page .xh-how-heading h2 {
        font-size: clamp(40px, 12vw, 54px);
        letter-spacing: -2.3px;
    }

    .xh-home-page .xh-how-principle {
        grid-template-columns: 32px minmax(0, 1fr);
        padding: 18px;
    }

    .xh-home-page .xh-how-principle > span {
        width: 32px;
        height: 32px;
    }

    .xh-home-page .xh-how-journey {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .xh-home-page .xh-how-step {
        padding: 24px;
        border-radius: 18px;
    }

    .xh-home-page .xh-how-step-top {
        margin-bottom: 22px;
    }

    .xh-home-page .xh-how-step h3 {
        font-size: 24px;
    }

    .xh-home-page .xh-how-footer {
        align-items: flex-start;
        flex-direction: column;
        gap: 18px;
        padding: 22px;
    }

    .xh-home-page .xh-how-footer .xh-button {
        width: 100%;
        justify-content: center;
    }
}

.xh-founder-story-impact-wrap {
  margin-top: 42px;
}

.xh-founder-story-impact-heading {
  max-width: 720px;
  margin: 10px 0 24px;
  color: var(--xh-ink);
  font-family: var(--xh-serif);
  font-size: clamp(30px, 3.4vw, 46px);
  font-weight: 500;
  line-height: 1.05;
  letter-spacing: -1.5px;
}

.xh-founder-story-impact {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.xh-founder-story-impact article {
  padding: 24px;
  border: 1px solid var(--xh-line);
  border-radius: 18px;
  background: var(--xh-white);
}

.xh-founder-story-impact article b {
  display: block;
  margin-bottom: 18px;
  color: var(--xh-coral);
  font-size: 11px;
  letter-spacing: 0.12em;
}

.xh-founder-story-impact article span {
  color: var(--xh-ink);
  font-size: 16px;
  font-weight: 750;
  line-height: 1.35;
}

@media (max-width: 900px) {
  .xh-founder-story-impact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .xh-founder-story-impact {
    grid-template-columns: 1fr;
  }
}

/* ==========================================================================
   XTribe V59.2.5 — Refined homepage heading hierarchy
   H1 is reduced. Main H2 headings are only slightly larger than prominent H3.
   Small H2/H3 headings inside cards and the trust strip remain unchanged.
   ========================================================================== */

.xh-home-page {
  --xh-h1-size: clamp(52px, 4.8vw, 72px);
  --xh-h2-size: clamp(38px, 3.5vw, 50px);
  --xh-feature-h3-size: clamp(32px, 3vw, 42px);

  --xh-h1-line-height: .98;
  --xh-h2-line-height: 1.01;
  --xh-feature-h3-line-height: 1.05;

  --xh-h1-letter-spacing: -3.2px;
  --xh-h2-letter-spacing: -2.1px;
  --xh-feature-h3-letter-spacing: -1.5px;
}

/* Homepage H1 */
.xh-home-page .xh-hero h1 {
  font-size: var(--xh-h1-size) !important;
  line-height: var(--xh-h1-line-height) !important;
  letter-spacing: var(--xh-h1-letter-spacing) !important;
  overflow-wrap: anywhere;
  text-wrap: balance;
}

/* Primary homepage section H2 headings */
.xh-home-page .xh-benefit-copy > h2,
.xh-home-page .xh-section-heading h2,
.xh-home-page .xh-pricing-copy > h2,
.xh-home-page .xh-centered-heading > h2,
.xh-home-page .xh-how-heading > h2,
.xh-home-page .xh-verification-copy > h2,
.xh-home-page .xh-promise-copy > h2,
.xh-home-page .xh-founder-story-heading > h2,
.xh-home-page .xh-artwork-copy > h2,
.xh-home-page .xh-answer-intro > h2,
.xh-home-page .xh-answer-title > h2,
.xh-home-page .xh-community-copy > h2 {
  font-size: var(--xh-h2-size) !important;
  line-height: var(--xh-h2-line-height) !important;
  letter-spacing: var(--xh-h2-letter-spacing) !important;
  overflow-wrap: anywhere;
  text-wrap: balance;
}

/* Prominent H3 used above the founder-story impact cards */
.xh-home-page .xh-founder-story-impact-heading,
.xh-home-page .xh-founder-story-impact-heading1 {
  max-width: 720px;
  margin: 10px 0 24px;
/*  color: var(--xh-white) !important;*/
  color: #E47D6B !important;  
  font-family: var(--xh-serif);
  font-size: var(--xh-feature-h3-size) !important;
  font-weight: 500;
  line-height: var(--xh-feature-h3-line-height) !important;
  letter-spacing: var(--xh-feature-h3-letter-spacing) !important;
  overflow-wrap: anywhere;
  text-wrap: balance;
}

/* Preserve the established XTribe coral highlight. */
.xh-home-page .xh-how-heading h2 span {
  color: #E47D6B !important;
}

/* Tablet */
@media (max-width: 1024px) {
  .xh-home-page {
    --xh-h1-size: clamp(48px, 6.2vw, 62px);
    --xh-h2-size: clamp(36px, 4.8vw, 46px);
    --xh-feature-h3-size: clamp(30px, 4vw, 38px);

    --xh-h1-letter-spacing: -2.8px;
    --xh-h2-letter-spacing: -1.9px;
    --xh-feature-h3-letter-spacing: -1.3px;
  }
}

/* Mobile */
@media (max-width: 760px) {
  .xh-home-page {
    --xh-h1-size: clamp(42px, 10.5vw, 50px);
    --xh-h2-size: clamp(34px, 8.8vw, 40px);
    --xh-feature-h3-size: clamp(30px, 7.4vw, 34px);

    --xh-h1-line-height: 1;
    --xh-h2-line-height: 1.03;
    --xh-feature-h3-line-height: 1.06;

    --xh-h1-letter-spacing: -2.3px;
    --xh-h2-letter-spacing: -1.6px;
    --xh-feature-h3-letter-spacing: -1.1px;
  }
}

/* Small mobile */
@media (max-width: 420px) {
  .xh-home-page {
    --xh-h1-size: clamp(40px, 10.5vw, 46px);
    --xh-h2-size: clamp(32px, 8.4vw, 38px);
    --xh-feature-h3-size: clamp(28px, 7.4vw, 32px);

    --xh-h1-letter-spacing: -2px;
    --xh-h2-letter-spacing: -1.4px;
    --xh-feature-h3-letter-spacing: -1px;
  }
}








/* ==========================================================
   XTribe featured experience pricing and availability
   ========================================================== */

.xh-home-page .xh-card-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-top: auto;
  padding-top: 17px;
}

.xh-home-page .xh-event-price {
  color: var(--xh-ink);
  font-size: 12px;
  font-weight: 750;
}

.xh-home-page .xh-event-status {
  flex-shrink: 0;
  font-size: 10px;
  font-weight: 850;
  line-height: 1.3;
  letter-spacing: 0.04em;
  text-align: right;
  text-transform: uppercase;
}

.xh-home-page .xh-event-status.is-open {
  color: var(--xh-green);
}

.xh-home-page .xh-event-status.is-limited {
  color: var(--xh-coral);
}

.xh-home-page .xh-event-status.is-sold-out {
  color: #9A4741;
}

@media (max-width: 420px) {
  .xh-home-page .xh-card-bottom {
    align-items: flex-start;
    flex-direction: column;
    gap: 7px;
  }

  .xh-home-page .xh-event-status {
    text-align: left;
  }
}

/* ========================================================================== 
   XTribe V59.3 — Homepage visual correction and responsive stabilisation
   Append this block at the END of assets/css/xtribe-public.css.
   It corrects the supplied homepage without changing the established palette.
   ========================================================================== */

:root {
  --xh-ink: #0A3434;
  --xh-green: #0A3434;
  --xh-green-soft: #174E48;
  --xh-coral: #E47D6B;
  --xh-coral-dark: #C96553;
  --xh-cream: #FAF7F1;
  --xh-warm: #F5EFE7;
  --xh-sage: #E3ECE5;
  --xh-white: #FFFDF9;
  --xh-copy: #3E4542;
  --xh-muted: #6D746F;
  --xh-line: #E5DED3;
  --xh-shadow: 0 20px 58px rgba(10, 52, 52, .09);
}

html {
  scroll-padding-top: 112px;
}

body.xh-home-page {
  background: var(--xh-cream);
  color: var(--xh-copy);
  overflow-x: hidden;
}

.xh-home-page img {
  max-width: 100%;
}

.xh-home-page .xp-main {
  overflow: clip;
}

.xh-home-page .xh-container {
  width: min(1240px, calc(100% - 56px));
}

.xh-home-page .xh-section {
  padding: clamp(72px, 7vw, 108px) 0;
}

.xh-home-page {
  --xh-h1-size: clamp(52px, 4.9vw, 72px);
  --xh-h2-size: clamp(38px, 3.55vw, 50px);
  --xh-feature-h3-size: clamp(30px, 2.8vw, 40px);
  --xh-h1-line-height: .98;
  --xh-h2-line-height: 1.02;
  --xh-feature-h3-line-height: 1.06;
  --xh-h1-letter-spacing: -3.2px;
  --xh-h2-letter-spacing: -2.1px;
  --xh-feature-h3-letter-spacing: -1.4px;
}

.xh-home-page .xh-hero h1 {
  font-size: var(--xh-h1-size) !important;
  line-height: var(--xh-h1-line-height) !important;
  letter-spacing: var(--xh-h1-letter-spacing) !important;
  text-wrap: balance;
  overflow-wrap: normal;
  word-break: normal;
}

.xh-home-page .xh-section-heading h2,
.xh-home-page .xh-how-heading > h2,
.xh-home-page .xh-verification-copy > h2,
.xh-home-page .xh-founder-story-heading > h2,
.xh-home-page .xh-answer-title > h2,
.xh-home-page .xh-community-copy > h2 {
  font-size: var(--xh-h2-size) !important;
  line-height: var(--xh-h2-line-height) !important;
  letter-spacing: var(--xh-h2-letter-spacing) !important;
  text-wrap: balance;
  overflow-wrap: normal;
  word-break: normal;
}

.xh-home-page .xh-eyebrow {
  color: var(--xh-coral);
  font-size: 10px;
  font-weight: 900;
  line-height: 1.4;
  letter-spacing: .15em;
}

.xh-home-page a:focus-visible,
.xh-home-page button:focus-visible,
.xh-home-page input:focus-visible,
.xh-home-page summary:focus-visible {
  outline: 3px solid rgba(228, 125, 107, .38);
  outline-offset: 4px;
}

/* Announcement and header */
.xh-home-page .xh-announcement-inner {
  min-height: 38px;
  gap: 18px;
}

.xh-home-page .xp-site-header-inner {
  min-height: 78px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 30px;
}

.xh-home-page .xp-primary-navigation {
  min-width: 0;
  gap: clamp(18px, 2.1vw, 32px);
}

.xh-home-page .xp-header-actions {
  flex: 0 0 auto;
}

.xh-home-page .xp-header-cta {
  min-height: 44px;
  padding-inline: 21px;
  white-space: nowrap;
}

/* Hero */
.xh-home-page .xh-hero {
  padding: clamp(46px, 5.2vw, 72px) 0 34px;
}

.xh-home-page .xh-hero-grid {
  grid-template-columns: minmax(0, .88fr) minmax(460px, 1.12fr);
  gap: clamp(44px, 6vw, 82px);
  align-items: center;
}

.xh-home-page .xh-hero-copy {
  max-width: 590px;
  padding: 0;
}

.xh-home-page .xh-hero h1 {
  margin: 16px 0 22px;
}

.xh-home-page .xh-hero h1 span {
  color: var(--xh-coral);
}

.xh-home-page .xh-hero-lead {
  max-width: 570px;
  margin: 0;
  color: rgba(10, 52, 52, .78);
  font-size: clamp(16px, 1.25vw, 18px);
  line-height: 1.7;
}

.xh-home-page .xh-hero-actions {
  margin-top: 28px;
  gap: 11px;
  flex-wrap: wrap;
}

.xh-home-page .xh-solo-note {
  max-width: 540px;
  margin-top: 24px;
  line-height: 1.45;
}

.xh-home-page .xh-hero-visual {
  min-width: 0;
}

.xh-home-page .xh-hero-visual > img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1.32 / 1;
  object-fit: cover;
  border-radius: 26px;
  box-shadow: var(--xh-shadow);
}

/* Trust strip */
.xh-home-page .xh-trust-strip {
  padding: 12px 0 58px;
}

.xh-home-page .xh-trust-grid {
  padding: 18px;
  border-radius: 22px;
  background: rgba(255, 253, 249, .92);
  box-shadow: 0 12px 34px rgba(10, 52, 52, .045);
}

.xh-home-page .xh-trust-grid article {
  min-width: 0;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 12px;
  padding: 9px 18px;
}

.xh-home-page .xh-trust-grid h2 {
  font-size: 13px;
  line-height: 1.25;
}

.xh-home-page .xh-trust-grid p {
  font-size: 11.5px;
  line-height: 1.55;
}

.xh-home-page .xh-line-icon {
  font-size: 25px;
}

/* Shared section heading */
.xh-home-page .xh-section-heading {
  align-items: end;
  gap: 32px;
  margin-bottom: 34px;
}

.xh-home-page .xh-section-heading > div {
  min-width: 0;
  max-width: 880px;
}

.xh-home-page .xh-section-heading h2 {
  margin: 8px 0 0;
}

.xh-home-page .xh-section-heading > div > p {
  max-width: 760px;
  margin: 18px 0 0;
  color: var(--xh-muted);
  font-size: 16px;
  line-height: 1.7;
}

/* Upcoming experiences */
.xh-home-page .xh-featured {
  padding-top: clamp(68px, 6.5vw, 96px);
  background: var(--xh-cream);
}

.xh-home-page .xh-experience-grid {
  align-items: stretch;
  gap: 20px;
}

.xh-home-page .xh-experience-card {
  min-width: 0;
  height: 100%;
  border-color: rgba(10, 52, 52, .11);
  border-radius: 20px;
  background: var(--xh-white);
  box-shadow: 0 12px 34px rgba(10, 52, 52, .055);
}

.xh-home-page .xh-experience-card:last-child {
  display: flex !important;
}

.xh-home-page .xh-experience-image {
  aspect-ratio: 16 / 9;
}

.xh-home-page .xh-experience-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.xh-home-page .xh-experience-content {
  padding: 21px;
}

.xh-home-page .xh-experience-content h3 {
  margin: 8px 0 16px;
  font-size: clamp(23px, 1.8vw, 28px);
  line-height: 1.1;
  letter-spacing: -.75px;
  text-wrap: balance;
}

.xh-home-page .xh-event-facts {
  gap: 8px;
}

.xh-home-page .xh-event-facts div {
  grid-template-columns: 62px minmax(0, 1fr);
  font-size: 12px;
}

.xh-home-page .xh-event-facts dd {
  overflow-wrap: anywhere;
}

.xh-home-page .xh-card-bottom {
  margin-top: auto;
  padding-top: 18px;
}

.xh-home-page .xh-event-price {
  font-size: 12px;
}

.xh-home-page .xh-card-link {
  margin-top: 15px;
  padding-top: 14px;
  font-size: 12px;
}

/* How XTribe works */
.xh-home-page .xh-how-premium {
  padding: clamp(72px, 7vw, 108px) 0;
  background: var(--xh-warm);
}

.xh-home-page .xh-how-shell {
  padding: clamp(34px, 4.8vw, 64px);
  border-radius: clamp(26px, 3vw, 38px);
}

.xh-home-page .xh-how-intro {
  grid-template-columns: minmax(0, 1fr) minmax(360px, .9fr);
  gap: clamp(34px, 5vw, 72px);
}

.xh-home-page .xh-how-heading h2 {
  max-width: 700px;
  margin: 12px 0 0;
  color: var(--xh-cream);
}

.xh-home-page .xh-how-heading h2 span {
  color: var(--xh-coral) !important;
}

.xh-home-page .xh-how-journey {
  gap: 13px;
}

.xh-home-page .xh-how-step {
  padding: clamp(21px, 2vw, 28px);
}

.xh-home-page .xh-how-step h3 {
  font-size: clamp(20px, 1.55vw, 25px);
}

.xh-home-page .xh-how-footer {
  align-items: center;
}

/* After-event community — missing in the supplied stylesheet */
.xh-home-page .xh-community-benefits {
  position: relative;
  overflow: hidden;
  background: var(--xh-cream);
  border-top: 1px solid var(--xh-line);
}

.xh-home-page .xh-community-benefits::before {
  content: "";
  position: absolute;
  right: -160px;
  top: -180px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: rgba(227, 236, 229, .65);
  pointer-events: none;
}

.xh-home-page .xh-community-benefits .xh-container {
  position: relative;
  z-index: 1;
}

.xh-home-page .xh-community-benefits .xh-section-heading {
  display: block;
  max-width: 920px;
  margin-bottom: 38px;
}

.xh-home-page .xh-community-benefits .xh-section-heading h2 {
  max-width: 850px;
}

.xh-home-page .xh-community-benefits .xh-section-heading p {
  max-width: 790px;
  margin-top: 18px;
  color: rgba(10, 52, 52, .72);
}

.xh-home-page .xh-community-benefit-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.xh-home-page .xh-community-benefit-grid article {
  min-width: 0;
  display: flex;
  flex-direction: column;
  min-height: 218px;
  padding: 27px;
  border: 1px solid rgba(10, 52, 52, .11);
  border-radius: 20px;
  background: rgba(255, 253, 249, .94);
  box-shadow: 0 14px 38px rgba(10, 52, 52, .055);
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.xh-home-page .xh-community-benefit-grid article:hover {
  transform: translateY(-3px);
  border-color: rgba(228, 125, 107, .34);
  box-shadow: 0 20px 48px rgba(10, 52, 52, .08);
}

.xh-home-page .xh-community-benefit-grid article > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 28px;
  margin-bottom: 23px;
  border-radius: 999px;
  color: var(--xh-coral-dark);
  background: rgba(228, 125, 107, .11);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .12em;
}

.xh-home-page .xh-community-benefit-grid h3 {
  margin: 0 0 12px;
  color: var(--xh-ink);
  font-family: var(--xh-serif);
  font-size: clamp(23px, 1.8vw, 29px);
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: -.8px;
  text-wrap: balance;
}

.xh-home-page .xh-community-benefit-grid p {
  margin: 0;
  color: rgba(10, 52, 52, .68);
  font-size: 14px;
  line-height: 1.68;
}

.xh-home-page .xh-community-access-note {
  display: grid;
  grid-template-columns: minmax(250px, .85fr) minmax(0, 1.15fr);
  gap: 28px;
  align-items: center;
  margin-top: 18px;
  padding: 26px 30px;
  border-radius: 20px;
  background: var(--xh-green);
  box-shadow: 0 18px 46px rgba(10, 52, 52, .13);
}

.xh-home-page .xh-community-access-note strong {
  color: var(--xh-cream);
  font-family: var(--xh-serif);
  font-size: clamp(22px, 2vw, 29px);
  font-weight: 500;
  line-height: 1.15;
  letter-spacing: -.7px;
}

.xh-home-page .xh-community-access-note p {
  margin: 0;
  color: rgba(250, 247, 241, .76);
  font-size: 14px;
  line-height: 1.7;
}

/* XTribe introduction */
.xh-home-page .xh-verification {
  padding: clamp(72px, 7vw, 104px) 0;
  background: var(--xh-white);
  border-top: 1px solid rgba(10, 52, 52, .07);
  border-bottom: 1px solid rgba(10, 52, 52, .07);
}

.xh-home-page .xh-verification-grid {
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: clamp(48px, 6.5vw, 88px);
  align-items: center;
}

.xh-home-page .xh-verification-copy {
  max-width: 590px;
}

.xh-home-page .xh-verification-copy h2 {
  margin: 13px 0 20px;
  color: var(--xh-ink);
}

.xh-home-page .xh-verification-copy > p:not(.xh-verification-note) {
  color: rgba(10, 52, 52, .72);
  font-size: 16px;
  line-height: 1.75;
}

.xh-home-page .xh-verification-note {
  display: inline-flex;
  margin: 9px 0 0 !important;
  padding: 12px 15px;
  border: 1px solid rgba(10, 52, 52, .10);
  border-radius: 12px;
  color: var(--xh-ink) !important;
  background: var(--xh-sage);
  font-size: 12px !important;
  font-weight: 750;
  line-height: 1.5 !important;
}

.xh-home-page .xh-verification-list {
  border-top-color: rgba(10, 52, 52, .15);
}

.xh-home-page .xh-verification-list article {
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 18px;
  padding: 25px 0;
  border-bottom-color: rgba(10, 52, 52, .15);
}

.xh-home-page .xh-verification-list b {
  font-size: 20px;
}

.xh-home-page .xh-verification-list h3 {
  color: var(--xh-ink);
  font-size: clamp(23px, 1.9vw, 28px);
}

.xh-home-page .xh-verification-list p {
  color: rgba(10, 52, 52, .66);
  font-size: 14px;
  line-height: 1.65;
}

/* Compact founder story */
.xh-home-page .xh-founder-story {
  position: relative;
  overflow: hidden;
  padding: clamp(76px, 7vw, 108px) 0;
  background: linear-gradient(135deg, #0A3434 0%, #0D413C 100%);
  color: var(--xh-cream);
}

.xh-home-page .xh-founder-story::before {
  content: "“";
  position: absolute;
  right: clamp(20px, 6vw, 90px);
  bottom: -92px;
  color: rgba(250, 247, 241, .045);
  font-family: var(--xh-serif);
  font-size: clamp(220px, 26vw, 430px);
  line-height: 1;
  pointer-events: none;
}

.xh-home-page .xh-founder-story-grid {
  position: relative;
  z-index: 1;
  grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr);
  gap: clamp(54px, 8vw, 112px);
  align-items: start;
}

.xh-home-page .xh-founder-story-heading {
  position: sticky;
  top: 116px;
}

.xh-home-page .xh-founder-story .xh-eyebrow {
  color: var(--xh-coral);
}

.xh-home-page .xh-founder-story-heading h2 {
  margin: 13px 0 20px;
  color: var(--xh-cream);
}

.xh-home-page .xh-founder-signature {
  margin: 0;
  color: rgba(250, 247, 241, .62);
  font-size: 13px;
  line-height: 1.6;
}

.xh-home-page .xh-founder-story-copy {
  max-width: 720px;
}

.xh-home-page .xh-founder-story-copy > p {
  margin: 0 0 19px;
  color: rgba(250, 247, 241, .78);
  font-size: clamp(15px, 1.15vw, 17px);
  line-height: 1.78;
}

.xh-home-page .xh-founder-story-copy blockquote {
  margin: 31px 0;
  padding: 25px 28px;
  border: 1px solid rgba(255, 255, 255, .13);
  border-left: 4px solid var(--xh-coral);
  border-radius: 0 18px 18px 0;
  color: var(--xh-cream);
  background: rgba(255, 255, 255, .055);
  font-family: var(--xh-serif);
  font-size: clamp(28px, 2.7vw, 40px);
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: -1.2px;
  text-wrap: balance;
}

.xh-home-page .xh-founder-story-copy .xh-text-link {
  margin-top: 8px;
  color: var(--xh-coral);
}

/* Clear answers */
.xh-home-page .xh-answer-section {
  position: relative;
  overflow: hidden;
  padding: clamp(76px, 7vw, 108px) 0;
  background: var(--xh-warm);
}

.xh-home-page .xh-answer-section::before {
  content: "";
  position: absolute;
  right: -110px;
  top: -130px;
  width: 340px;
  height: 340px;
  border-radius: 50%;
  background: rgba(227, 236, 229, .78);
  pointer-events: none;
}

.xh-home-page .xh-answer-section .xh-container {
  position: relative;
  z-index: 1;
}

.xh-home-page .xh-answer-header {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(390px, 1.15fr);
  gap: clamp(38px, 6vw, 86px);
  align-items: end;
  margin-bottom: 34px;
  padding-bottom: 32px;
  border-bottom: 1px solid rgba(10, 52, 52, .13);
}

.xh-home-page .xh-answer-title h2 {
  max-width: 650px;
  margin: 12px 0 0;
  color: var(--xh-ink);
}

.xh-home-page .xh-answer-summary {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 16px;
  align-items: start;
  max-width: 650px;
  padding: 23px 25px;
  border: 1px solid rgba(10, 52, 52, .10);
  border-radius: 18px;
  background: rgba(255, 253, 249, .9);
  box-shadow: 0 12px 30px rgba(10, 52, 52, .045);
}

.xh-home-page .xh-answer-summary-mark {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  color: var(--xh-cream);
  background: var(--xh-coral);
}

.xh-home-page .xh-answer-summary p {
  margin: 0;
  color: rgba(10, 52, 52, .68);
  font-size: 14px;
  line-height: 1.7;
}

.xh-home-page .xh-answer-summary strong {
  color: var(--xh-ink);
}

.xh-home-page .xh-answer-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 15px;
  padding: 0;
  border: 0;
}

.xh-home-page .xh-answer-grid article,
.xh-home-page .xh-answer-grid article:first-child,
.xh-home-page .xh-answer-grid article:last-child,
.xh-home-page .xh-answer-grid article:nth-child(odd),
.xh-home-page .xh-answer-grid article:nth-child(even),
.xh-home-page .xh-answer-grid article:nth-child(n+4) {
  min-width: 0;
  min-height: 230px;
  padding: 27px !important;
  border: 1px solid rgba(10, 52, 52, .10) !important;
  border-radius: 19px;
  background: rgba(255, 253, 249, .92);
  box-shadow: 0 12px 34px rgba(10, 52, 52, .045);
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.xh-home-page .xh-answer-grid article:hover {
  transform: translateY(-3px);
  border-color: rgba(228, 125, 107, .34) !important;
  box-shadow: 0 18px 42px rgba(10, 52, 52, .075);
}

.xh-home-page .xh-answer-number {
  margin-bottom: 20px;
}

.xh-home-page .xh-answer-grid h3 {
  margin: 0 0 12px;
  color: var(--xh-ink);
  font-family: var(--xh-serif);
  font-size: clamp(22px, 1.65vw, 27px);
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: -.65px;
  text-wrap: balance;
}

.xh-home-page .xh-answer-grid p {
  margin: 0;
  color: rgba(10, 52, 52, .67);
  font-size: 14px;
  line-height: 1.68;
}

.xh-home-page .xh-answer-footer {
  margin-top: 16px;
  padding: 21px 25px;
  background: var(--xh-sage);
}

/* Final call to action */
.xh-home-page .xh-community {
  padding: clamp(64px, 6vw, 88px) 0;
  background: var(--xh-cream);
}

.xh-home-page .xh-community-card {
  min-height: 350px;
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
  border-radius: 25px;
  background: var(--xh-green);
  box-shadow: 0 22px 58px rgba(10, 52, 52, .13);
}

.xh-home-page .xh-community-copy {
  padding: clamp(38px, 4.7vw, 62px);
}

.xh-home-page .xh-community-copy .xh-eyebrow {
  color: var(--xh-coral);
}

.xh-home-page .xh-community-copy h2 {
  max-width: 610px;
  margin: 12px 0 18px;
  color: var(--xh-cream);
}

.xh-home-page .xh-community-copy p {
  max-width: 550px;
  margin: 0;
  color: rgba(250, 247, 241, .76);
  font-size: 16px;
  line-height: 1.7;
}

.xh-home-page .xh-community-actions {
  margin-top: 24px;
}

.xh-home-page .xh-community-image {
  min-height: 350px;
}

.xh-home-page .xh-community-image::after {
  background: linear-gradient(90deg, var(--xh-green) 0%, rgba(10, 52, 52, .35) 35%, transparent 72%);
}

/* Footer */
.xh-home-page .xh-footer {
  padding: 64px 0 25px;
  background: #102421;
}

.xh-home-page .xh-footer-grid {
  grid-template-columns: 1.15fr .75fr .8fr 1.2fr;
  gap: clamp(32px, 4vw, 58px);
}

.xh-home-page .xh-footer-brand p {
  max-width: 310px;
}

.xh-home-page .xh-footer-column a,
.xh-home-page .xh-footer-newsletter > p {
  line-height: 1.55;
}

.xh-home-page .xh-footer-bottom {
  margin-top: 44px;
}

/* Tablet */
@media (max-width: 1100px) {
  .xh-home-page .xh-container {
    width: min(100% - 40px, 1240px);
  }

  .xh-home-page .xp-site-header-inner {
    gap: 20px;
  }

  .xh-home-page .xh-hero-grid {
    grid-template-columns: minmax(0, .95fr) minmax(390px, 1.05fr);
    gap: 38px;
  }

  .xh-home-page .xh-trust-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xh-home-page .xh-trust-grid article:nth-child(2) {
    border-right: 0;
  }

  .xh-home-page .xh-trust-grid article:nth-child(-n + 2) {
    border-bottom: 1px solid var(--xh-line);
  }

  .xh-home-page .xh-community-benefit-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xh-home-page .xh-how-intro,
  .xh-home-page .xh-answer-header {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .xh-home-page .xh-answer-summary {
    max-width: 760px;
  }

  .xh-home-page .xh-footer-grid {
    grid-template-columns: 1.15fr .8fr .9fr;
  }

  .xh-home-page .xh-footer-newsletter {
    grid-column: 1 / -1;
    max-width: 580px;
  }
}

@media (max-width: 900px) {
  .xh-home-page .xp-site-header-inner {
    grid-template-columns: auto auto auto;
  }

  .xh-home-page .xh-hero-grid {
    grid-template-columns: 1fr;
  }

  .xh-home-page .xh-hero-copy,
  .xh-home-page .xh-hero-visual {
    max-width: 760px;
  }

  .xh-home-page .xh-experience-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xh-home-page .xh-experience-card:last-child {
    grid-column: 1 / -1;
    width: min(100%, 590px);
    justify-self: center;
  }

  .xh-home-page .xh-verification-grid,
  .xh-home-page .xh-founder-story-grid {
    grid-template-columns: 1fr;
    gap: 44px;
  }

  .xh-home-page .xh-founder-story-heading {
    position: static;
    max-width: 760px;
  }

  .xh-home-page .xh-community-card {
    grid-template-columns: 1fr;
  }

  .xh-home-page .xh-community-image {
    min-height: 280px;
  }

  .xh-home-page .xh-community-image::after {
    background: linear-gradient(180deg, var(--xh-green) 0%, rgba(10, 52, 52, .22) 32%, transparent 66%);
  }
}

/* Mobile */
@media (max-width: 680px) {
  html {
    scroll-padding-top: 90px;
  }

  .xh-home-page {
    --xh-h1-size: clamp(41px, 11.5vw, 50px);
    --xh-h2-size: clamp(32px, 8.9vw, 39px);
    --xh-feature-h3-size: clamp(28px, 7.7vw, 33px);
    --xh-h1-letter-spacing: -2.25px;
    --xh-h2-letter-spacing: -1.55px;
    --xh-feature-h3-letter-spacing: -1px;
  }

  .xh-home-page .xh-container {
    width: min(100% - 28px, 1240px);
  }

  .xh-home-page .xh-section {
    padding: 64px 0;
  }

  .xh-home-page .xh-announcement-inner {
    min-height: 42px;
    padding: 7px 0;
  }

  .xh-home-page .xh-announcement-inner > span {
    display: none;
  }

  .xh-home-page .xp-site-header-inner {
    min-height: 66px;
    gap: 10px;
  }

  .xh-home-page .xp-header-cta {
    min-height: 38px;
    max-width: 126px;
    padding-inline: 13px;
    font-size: 10px;
    line-height: 1.2;
    text-align: center;
    white-space: normal;
  }

  .xh-home-page .xh-hero {
    padding: 32px 0 26px;
  }

  .xh-home-page .xh-hero h1 {
    margin: 13px 0 19px;
  }

  .xh-home-page .xh-hero-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .xh-home-page .xh-hero-actions .xh-button {
    width: 100%;
  }

  .xh-home-page .xh-hero-visual > img {
    border-radius: 20px;
  }

  .xh-home-page .xh-trust-strip {
    padding-bottom: 44px;
  }

  .xh-home-page .xh-trust-grid {
    grid-template-columns: 1fr;
    padding: 5px 16px;
  }

  .xh-home-page .xh-trust-grid article,
  .xh-home-page .xh-trust-grid article:nth-child(2),
  .xh-home-page .xh-trust-grid article:nth-child(-n + 2) {
    padding: 17px 4px;
    border-right: 0;
    border-bottom: 1px solid var(--xh-line);
  }

  .xh-home-page .xh-trust-grid article:last-child {
    border-bottom: 0;
  }

  .xh-home-page .xh-section-heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 26px;
  }

  .xh-home-page .xh-section-heading > div > p {
    margin-top: 14px;
    font-size: 15px;
  }

  .xh-home-page .xh-experience-grid,
  .xh-home-page .xh-community-benefit-grid,
  .xh-home-page .xh-answer-grid {
    grid-template-columns: 1fr;
  }

  .xh-home-page .xh-experience-card:last-child {
    grid-column: auto;
    width: 100%;
  }

  .xh-home-page .xh-community-benefit-grid article,
  .xh-home-page .xh-answer-grid article,
  .xh-home-page .xh-answer-grid article:first-child,
  .xh-home-page .xh-answer-grid article:last-child,
  .xh-home-page .xh-answer-grid article:nth-child(odd),
  .xh-home-page .xh-answer-grid article:nth-child(even),
  .xh-home-page .xh-answer-grid article:nth-child(n+4) {
    min-height: 0;
    padding: 24px !important;
  }

  .xh-home-page .xh-community-access-note {
    grid-template-columns: 1fr;
    gap: 11px;
    padding: 24px;
  }

  .xh-home-page .xh-verification-grid {
    gap: 32px;
  }

  .xh-home-page .xh-verification-list article {
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 13px;
  }

  .xh-home-page .xh-founder-story-copy blockquote {
    margin: 25px 0;
    padding: 21px 20px;
  }

  .xh-home-page .xh-answer-header {
    gap: 22px;
    margin-bottom: 23px;
    padding-bottom: 25px;
  }

  .xh-home-page .xh-answer-summary {
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 13px;
    padding: 20px;
  }

  .xh-home-page .xh-answer-summary-mark {
    width: 34px;
    height: 34px;
  }

  .xh-home-page .xh-answer-footer {
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
    padding: 20px;
  }

  .xh-home-page .xh-answer-footer .xh-text-link {
    white-space: normal;
  }

  .xh-home-page .xh-community-card {
    min-height: 0;
    border-radius: 21px;
  }

  .xh-home-page .xh-community-copy {
    padding: 34px 24px;
  }

  .xh-home-page .xh-community-actions {
    flex-direction: column;
  }

  .xh-home-page .xh-community-actions .xh-button {
    width: 100%;
  }

  .xh-home-page .xh-community-image {
    min-height: 215px;
  }

  .xh-home-page .xh-footer-grid {
    grid-template-columns: 1fr 1fr;
    gap: 34px 24px;
  }

  .xh-home-page .xh-footer-brand,
  .xh-home-page .xh-footer-newsletter {
    grid-column: 1 / -1;
  }
}

@media (max-width: 420px) {
  .xh-home-page {
    --xh-h1-size: clamp(39px, 11vw, 46px);
    --xh-h2-size: clamp(31px, 8.6vw, 37px);
  }

  .xh-home-page .xh-card-bottom {
    align-items: flex-start;
    flex-direction: column;
    gap: 7px;
  }

  .xh-home-page .xh-event-status {
    text-align: left;
  }

  .xh-home-page .xh-footer-grid {
    grid-template-columns: 1fr;
  }

  .xh-home-page .xh-footer-column,
  .xh-home-page .xh-footer-brand,
  .xh-home-page .xh-footer-newsletter {
    grid-column: auto;
  }
}

@media (hover: none) {
  .xh-home-page .xh-community-benefit-grid article:hover,
  .xh-home-page .xh-answer-grid article:hover,
  .xh-home-page .xh-experience-card:hover,
  .xh-home-page .xh-how-step:hover {
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .xh-home-page *,
  .xh-home-page *::before,
  .xh-home-page *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}










/* =========================================================
   XTribe image wordmark
   ========================================================= */

.xp-site-brand {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  min-width: max-content;
}

.xp-site-logo {
  display: block;
  width: auto;
  max-width: 100%;
  object-fit: contain;
}

/* Desktop navigation */

.xp-site-logo-nav {
  width: 166px;
  height: 52px;
}

/* Footer */

.xp-site-logo-footer {
  width: 156px;
  height: 49px;
}

/* Tablet */

@media (max-width: 900px) {
  .xp-site-logo-nav {
    width: 150px;
    height: 47px;
  }

  .xp-site-logo-footer {
    width: 150px;
    height: 47px;
  }
}

/* Mobile */

@media (max-width: 640px) {
  .xp-site-logo-nav {
    width: 128px;
    height: 40px;
  }

  .xp-site-logo-footer {
    width: 142px;
    height: 45px;
  }
}







/* =========================================================
   XTribe — Correct header and logo placement
   ========================================================= */

.xp-site-header {
  position: sticky;
  top: 0;
  z-index: 80;
  width: 100%;
  background: rgba(250, 247, 241, 0.96);
  border-bottom: 1px solid rgba(10, 52, 52, 0.09);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

/* Main desktop header layout */

.xp-site-header .xp-site-header-inner {
  display: grid !important;
  grid-template-columns: 166px minmax(0, 1fr) auto !important;
  grid-template-rows: 84px !important;
  align-items: center !important;
  gap: clamp(30px, 3vw, 54px) !important;

  min-height: 84px !important;
  padding: 0 !important;
}

/* Logo column */

.xp-site-header .xp-site-brand {
  grid-column: 1 !important;
  grid-row: 1 !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  justify-self: start !important;

  width: 166px !important;
  min-width: 166px !important;
  margin: 0 !important;
  padding: 0 !important;

  line-height: 0;
}

/* Remove restrictions from older logo rules */

.xp-site-header .xp-site-brand img,
.xp-site-header .xp-site-logo-nav {
  display: block !important;

  width: 166px !important;
  height: 52px !important;
  max-width: none !important;
  max-height: none !important;

  margin: 0 !important;
  padding: 0 !important;

  object-fit: contain !important;
  object-position: left center !important;
}

/* Navigation column */

.xp-site-header .xp-primary-navigation {
  grid-column: 2 !important;
  grid-row: 1 !important;

  display: flex;
  align-items: center;
  justify-content: center;

  min-width: 0;
  gap: clamp(20px, 2vw, 34px);

  margin: 0 !important;
  padding: 0 !important;
}

.xp-site-header .xp-primary-navigation a {
  color: #0A3434;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
}

/* Action column */

.xp-site-header .xp-header-actions {
  grid-column: 3 !important;
  grid-row: 1 !important;

  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  justify-self: end !important;

  gap: 20px !important;
  margin: 0 !important;
  padding: 0 !important;

  white-space: nowrap;
}

.xp-site-header .xp-header-login {
  color: #0A3434;
  font-size: 14px;
  font-weight: 700;
  white-space: nowrap;
}

.xp-site-header .xp-header-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 46px;
  padding: 0 25px;

  border: 1px solid #E47D6B;
  border-radius: 999px;

  background: #E47D6B;
  color: #ffffff;

  font-size: 13px;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
}

/* Desktop menu button remains hidden */

.xp-site-header .xp-menu-toggle {
  display: none !important;
}

/* Slightly narrower desktop screens */

@media (max-width: 1180px) {

  .xp-site-header .xp-site-header-inner {
    grid-template-columns: 150px minmax(0, 1fr) auto !important;
    gap: 24px !important;
  }

  .xp-site-header .xp-site-brand {
    width: 150px !important;
    min-width: 150px !important;
  }

  .xp-site-header .xp-site-brand img,
  .xp-site-header .xp-site-logo-nav {
    width: 150px !important;
    height: 47px !important;
  }

  .xp-site-header .xp-primary-navigation {
    gap: 20px;
  }

  .xp-site-header .xp-primary-navigation a,
  .xp-site-header .xp-header-login {
    font-size: 13px;
  }

  .xp-site-header .xp-header-cta {
    padding-inline: 20px;
  }
}

/* Tablet and mobile navigation */

@media (max-width: 900px) {

  .xp-site-header .xp-site-header-inner {
    position: relative;

    grid-template-columns: auto minmax(0, 1fr) auto !important;
    grid-template-rows: 72px auto !important;

    gap: 0 12px !important;
    min-height: 72px !important;
  }

  .xp-site-header .xp-site-brand {
    grid-column: 1 !important;
    grid-row: 1 !important;

    width: 140px !important;
    min-width: 140px !important;
  }

  .xp-site-header .xp-site-brand img,
  .xp-site-header .xp-site-logo-nav {
    width: 140px !important;
    height: 44px !important;
  }

  .xp-site-header .xp-header-actions {
    grid-column: 2 !important;
    grid-row: 1 !important;

    justify-self: end !important;
    gap: 10px !important;
  }

  .xp-site-header .xp-header-login {
    display: none !important;
  }

  .xp-site-header .xp-header-cta {
    min-height: 40px;
    padding: 0 16px;
    font-size: 11px;
  }

  .xp-site-header .xp-menu-toggle {
    grid-column: 3 !important;
    grid-row: 1 !important;

    display: inline-flex !important;
    align-items: center;
    justify-content: center;

    justify-self: end;

    margin: 0;
    padding: 9px;

    border: 0;
    background: transparent;
    color: #0A3434;
    cursor: pointer;
  }

  .xp-site-header .xp-primary-navigation {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    right: 0;

    grid-column: 1 / -1 !important;
    grid-row: 2 !important;

    display: none;
    flex-direction: column;
    align-items: stretch;
    gap: 0;

    padding: 12px !important;

    border: 1px solid #E8E0D6;
    border-radius: 18px;

    background: #FFFDF8;
    box-shadow: 0 22px 70px rgba(20, 45, 41, 0.12);
  }

  .xp-site-header .xp-primary-navigation.is-open {
    display: flex !important;
  }

  .xp-site-header .xp-primary-navigation a {
    padding: 13px 12px;
    border-bottom: 1px solid #E8E0D6;
  }

  .xp-site-header .xp-primary-navigation a:last-child {
    border-bottom: 0;
  }
}

/* Small phones */

@media (max-width: 560px) {

  .xp-site-header .xp-site-header-inner {
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    grid-template-rows: 66px auto !important;
    min-height: 66px !important;
  }

  .xp-site-header .xp-site-brand {
    width: 122px !important;
    min-width: 122px !important;
  }

  .xp-site-header .xp-site-brand img,
  .xp-site-header .xp-site-logo-nav {
    width: 122px !important;
    height: 38px !important;
  }

  .xp-site-header .xp-header-cta {
    min-height: 37px;
    padding: 0 13px;
    font-size: 10px;
  }
}

/* XTribe V60.4 — Legal, Trust and Sitemap */
.xh-page-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;max-width:1080px;margin:24px auto 14px;color:rgba(10,52,52,.58);font-size:11px;font-weight:800}
.xh-page-breadcrumb a{color:#0A3434}
.xh-policy-layout{display:grid;grid-template-columns:minmax(210px,270px) minmax(0,1fr);gap:clamp(34px,6vw,78px);align-items:start;max-width:1080px;margin:42px auto 0}
.xh-policy-sidebar{position:sticky;top:105px;display:grid;gap:16px}
.xh-policy-toc,.xh-policy-related{display:grid;gap:2px;padding:16px;border:1px solid rgba(10,52,52,.12);border-radius:17px;background:#FFFDF8}
.xh-policy-toc>span,.xh-policy-related>span{margin:0 0 9px;color:#E47D6B;font-size:9px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
.xh-policy-toc a,.xh-policy-related a{padding:8px 9px;border-radius:9px;color:rgba(10,52,52,.72);font-size:11px;font-weight:700;line-height:1.35}
.xh-policy-toc a:hover,.xh-policy-related a:hover,.xh-policy-related a[aria-current="page"]{background:#E3ECE5;color:#0A3434}
.xh-policy-main{min-width:0}.xh-policy-layout .xp-content-body{max-width:none;margin:0}.xh-policy-layout .xp-content-body h2{scroll-margin-top:120px}
.xh-policy-layout .xp-content-body table{display:block;overflow-x:auto;border-radius:14px;background:#FFFDF8}.xh-policy-layout .xp-content-body th{background:#E3ECE5;color:#0A3434}
.xh-policy-help{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;margin:42px 0 0;padding:24px;border-radius:20px;background:#0A3434;color:#FAF7F1}
.xh-policy-help span{color:#E47D6B;font-size:9px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.xh-policy-help h2{margin:8px 0;color:#FAF7F1;font-family:var(--xh-serif);font-size:27px;font-weight:500}.xh-policy-help p{margin:0;color:rgba(250,247,241,.68);font-size:12px;line-height:1.65}
.xh-policy-help-link{display:inline-flex;min-height:46px;align-items:center;gap:9px;padding:0 17px;border-radius:999px;background:#E47D6B;color:#FAF7F1;font-size:10px;font-weight:900;white-space:nowrap}
.xh-trust-hero,.xh-sitemap-hero{padding:clamp(76px,8vw,120px) 0;background:#0A3434;color:#FAF7F1}.xh-trust-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:clamp(40px,7vw,90px);align-items:end}
.xh-trust-eyebrow,.xh-trust-heading span,.xh-trust-controls article>span,.xh-sitemap-hero>div>span,.xh-sitemap-section-head span{color:#E47D6B;font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.xh-trust-hero h1,.xh-sitemap-hero h1{max-width:830px;margin:17px 0 20px;color:#FAF7F1;font-family:var(--xh-serif);font-size:clamp(49px,5vw,72px);font-weight:500;line-height:.98;letter-spacing:-3px}.xh-trust-hero h1 em{color:#E47D6B;font-style:normal}
.xh-trust-hero p,.xh-sitemap-hero p{max-width:720px;margin:0;color:rgba(250,247,241,.72);font-size:16px;line-height:1.75}.xh-trust-summary{padding:24px;border:1px solid rgba(250,247,241,.15);border-radius:20px;background:rgba(250,247,241,.06)}.xh-trust-summary span{font-family:var(--xh-serif);font-size:27px}.xh-trust-summary p{margin:13px 0 0;font-size:13px}
.xh-trust-documents,.xh-sitemap-content{padding:clamp(72px,7vw,110px) 0;background:#FAF7F1}.xh-trust-heading,.xh-sitemap-section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);gap:clamp(30px,6vw,78px);align-items:end;margin-bottom:34px}
.xh-trust-heading h2,.xh-sitemap-section-head h2{margin:11px 0 0;color:#0A3434;font-family:var(--xh-serif);font-size:clamp(36px,3.5vw,50px);font-weight:500;line-height:1.03;letter-spacing:-1.9px}.xh-trust-heading>p,.xh-sitemap-section-head>p{margin:0;color:rgba(10,52,52,.68);font-size:14px;line-height:1.7}
.xh-trust-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.xh-trust-card{display:flex;min-height:270px;flex-direction:column;padding:24px;border:1px solid rgba(10,52,52,.12);border-radius:20px;background:#FFFDF8}.xh-trust-card-number{color:#E47D6B;font-family:var(--xh-serif);font-size:20px}.xh-trust-card h2{margin:23px 0 10px;color:#0A3434;font-family:var(--xh-serif);font-size:27px;font-weight:500;line-height:1.08}.xh-trust-card p{margin:0 0 22px;color:rgba(10,52,52,.68);font-size:12px;line-height:1.68}.xh-trust-card a{display:inline-flex;gap:8px;align-items:center;margin-top:auto;color:#0A3434;font-size:10px;font-weight:900}.xh-trust-card a span{color:#E47D6B}
.xh-trust-controls{padding:clamp(66px,6vw,92px) 0;background:#E3ECE5}.xh-trust-controls-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.xh-trust-controls article{padding:25px;border:1px solid rgba(10,52,52,.12);border-radius:19px;background:rgba(250,247,241,.78)}.xh-trust-controls h2{margin:17px 0 10px;color:#0A3434;font-family:var(--xh-serif);font-size:28px;font-weight:500}.xh-trust-controls p{margin:0 0 18px;color:rgba(10,52,52,.68);font-size:12px;line-height:1.68}.xh-trust-controls a{color:#0A3434;font-size:10px;font-weight:900}
.xh-sitemap-hero a{display:inline-flex;min-height:47px;align-items:center;gap:9px;margin-top:26px;padding:0 18px;border-radius:999px;background:#E47D6B;color:#FAF7F1;font-size:10px;font-weight:900}.xh-sitemap-section{padding:0 0 52px;margin:0 0 52px;border-bottom:1px solid rgba(10,52,52,.13)}.xh-sitemap-section:last-child{border-bottom:0}.xh-sitemap-links-core{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.xh-sitemap-links-core a{display:block;min-height:125px;padding:20px;border:1px solid rgba(10,52,52,.12);border-radius:17px;background:#FFFDF8}.xh-sitemap-links-core strong,.xh-sitemap-links-core span{display:block}.xh-sitemap-links-core strong{color:#0A3434;font-family:var(--xh-serif);font-size:22px;font-weight:500}.xh-sitemap-links-core span{margin-top:8px;color:rgba(10,52,52,.65);font-size:11px;line-height:1.55}
.xh-sitemap-simple-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px}.xh-sitemap-simple-list a{display:flex;min-height:48px;align-items:center;justify-content:space-between;gap:15px;padding:10px 13px;border-bottom:1px solid rgba(10,52,52,.12);color:#0A3434;font-size:12px;font-weight:750}.xh-sitemap-simple-list a span{color:#E47D6B}
@media(max-width:980px){.xh-policy-layout,.xh-trust-hero-grid{grid-template-columns:1fr}.xh-policy-sidebar{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.xh-trust-grid,.xh-trust-controls-grid,.xh-sitemap-links-core{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.xh-policy-sidebar,.xh-trust-heading,.xh-sitemap-section-head,.xh-policy-help{grid-template-columns:1fr}.xh-trust-grid,.xh-trust-controls-grid,.xh-sitemap-links-core,.xh-sitemap-simple-list{grid-template-columns:1fr}}


/* XTribe V60.7 — provisional legal identity notice */
.xh-identity-placeholder {
  background: #fff4e3;
  border-top: 1px solid rgba(184, 132, 56, .35);
  border-bottom: 1px solid rgba(184, 132, 56, .35);
}
.xh-identity-placeholder .xh-container {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  padding-top: 18px;
  padding-bottom: 18px;
}
.xh-identity-placeholder strong {
  color: #7a5318;
  font-size: 12px;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.xh-identity-placeholder p {
  margin: 0;
  color: #654d2b;
  font-size: 13px;
  line-height: 1.55;
}
.xh-identity-placeholder a {
  color: #0a3434;
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
}
@media (max-width: 760px) {
  .xh-identity-placeholder .xh-container {
    grid-template-columns: 1fr;
    gap: 8px;
  }
}

/* XTribe V60.8.5.5 — public event detail conversion upgrade */
.xp-event-detail-page .xp-main{overflow:visible}.xp-event-showcase{max-width:1240px;margin:0 auto;padding:42px 22px 0}.xp-event-showcase__visual{min-height:430px;border-radius:24px;background-color:var(--xp-green-dark);background-size:cover;background-position:center;display:flex;align-items:flex-end;overflow:hidden;box-shadow:var(--xp-shadow)}.xp-event-showcase__visual.no-image{background-image:radial-gradient(circle at 82% 20%,rgba(199,168,107,.2),transparent 34%),linear-gradient(135deg,var(--xp-green-dark),#285b56)}.xp-event-showcase__copy{width:100%;padding:clamp(30px,6vw,64px);color:#fff;background:linear-gradient(0deg,rgba(7,35,33,.24),transparent)}.xp-event-showcase__copy .xp-back{color:#fff}.xp-event-showcase__copy h1{max-width:900px;margin:12px 0 14px;font-size:clamp(42px,6.4vw,78px);line-height:.98;letter-spacing:-3px}.xp-event-subtitle{max-width:760px;margin:0 0 22px;color:#d9e6e4;font-size:18px}.xp-event-showcase__facts{margin:18px 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#fff;border:1px solid var(--xp-line);border-radius:18px;box-shadow:var(--xp-shadow);overflow:hidden}.xp-event-showcase__facts>div{padding:17px 19px;border-right:1px solid var(--xp-line)}.xp-event-showcase__facts>div:last-child{border-right:0}.xp-event-showcase__facts strong{display:block;color:var(--xp-green);font-size:14px;line-height:1.35;margin-top:4px}.xp-event-tabs{max-width:1240px;margin:18px auto 0;padding:0 22px;display:flex;gap:8px;overflow-x:auto;scrollbar-width:none}.xp-event-tabs::-webkit-scrollbar{display:none}.xp-event-tabs a{white-space:nowrap;border:1px solid var(--xp-line);background:#fff;border-radius:999px;padding:9px 14px;font-size:12px;font-weight:800}.xp-detail-layout--experience{padding-top:18px;grid-template-columns:minmax(0,1fr) 390px}.xp-detail-layout--experience .xp-card{scroll-margin-top:110px}.xp-experience-overview h2{font-size:clamp(28px,4vw,44px);line-height:1.08;letter-spacing:-1.2px}.xp-experience-overview .xp-prose{font-size:16px;line-height:1.75}.xp-value-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:24px}.xp-value-grid section{border:1px solid var(--xp-line);background:#fbf9f5;border-radius:14px;padding:15px;display:grid;grid-template-columns:38px 1fr;gap:12px}.xp-value-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#eee4cf;color:var(--xp-green);font-size:11px;font-weight:900}.xp-value-grid strong{color:var(--xp-green)}.xp-value-grid p{margin:5px 0 0;color:var(--xp-muted);font-size:13px}.xp-flow-placeholder{padding:18px;border-radius:14px;background:#faf8f4;border:1px dashed var(--xp-line)}.xp-flow-placeholder p{margin:0;color:var(--xp-text)}.xp-flow-placeholder small{display:block;margin-top:8px;color:var(--xp-muted)}.xp-agenda--enhanced>div:last-child{border-bottom:0}.xp-venue-address{font-size:15px}.xp-policy-grid--experience{grid-template-columns:repeat(3,minmax(0,1fr))}.xp-action-row{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.xp-action-row .xp-button{font-size:12px}.xp-card details{border-top:1px solid var(--xp-line);padding:12px 0}.xp-card details:last-child{padding-bottom:0}.xp-card summary{cursor:pointer;color:var(--xp-green);font-weight:800}.xp-card details p{color:var(--xp-muted)}.xp-booking-card--experience{top:94px;padding:22px;scroll-margin-top:110px}.xp-booking-price{display:flex;align-items:baseline;gap:7px;padding-bottom:16px;border-bottom:1px solid var(--xp-line);margin-bottom:16px}.xp-booking-price span,.xp-booking-price small{color:var(--xp-muted);font-size:12px}.xp-booking-price strong{color:var(--xp-green);font-size:34px;line-height:1}.xp-booking-meta{display:grid;gap:10px;margin-bottom:18px}.xp-booking-meta>div{display:grid;grid-template-columns:86px 1fr;gap:10px}.xp-booking-meta span{font-size:11px;color:var(--xp-muted)}.xp-booking-meta strong{font-size:12px;color:var(--xp-text)}.xp-ticket-option--experience{position:relative;padding:14px}.xp-ticket-option--experience:has(input:checked){border-color:var(--xp-green);box-shadow:0 0 0 2px rgba(33,78,75,.08)}.xp-ticket-option--experience em{display:block;margin-top:6px;color:var(--xp-ok);font-size:10px;font-style:normal;font-weight:800}.xp-quantity-label{margin-top:14px}.xp-booking-live-summary{margin:14px 0;background:#faf8f4;border-radius:12px;padding:13px}.xp-booking-live-summary>div{display:flex;justify-content:space-between;gap:10px;padding:4px 0}.xp-booking-live-summary span{color:var(--xp-muted);font-size:11px}.xp-booking-live-summary strong{font-size:12px;color:var(--xp-green);text-align:right}.xp-booking-live-summary small{display:block;margin-top:7px;color:var(--xp-muted);font-size:10px}.xp-booking-primary{margin-top:4px}.xp-booking-trust{line-height:1.55}.xp-booking-actions{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--xp-line);margin-top:16px;padding-top:14px}.xp-booking-actions a,.xp-booking-actions button{border:0;background:transparent;padding:0;color:var(--xp-green);font-weight:800;font-size:12px;cursor:pointer}.xp-share-note{font-size:11px;color:var(--xp-ok);margin-top:8px}@media(max-width:980px){.xp-event-showcase__facts{grid-template-columns:repeat(2,minmax(0,1fr))}.xp-event-showcase__facts>div:nth-child(2){border-right:0}.xp-event-showcase__facts>div:nth-child(-n+2){border-bottom:1px solid var(--xp-line)}.xp-detail-layout--experience{grid-template-columns:1fr}.xp-booking-card--experience{position:static}.xp-policy-grid--experience{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.xp-event-showcase{padding:18px 14px 0}.xp-event-showcase__visual{min-height:390px;border-radius:18px}.xp-event-showcase__copy{padding:28px 20px}.xp-event-showcase__copy h1{font-size:clamp(38px,13vw,58px);letter-spacing:-2px}.xp-event-subtitle{font-size:15px}.xp-event-showcase__facts{grid-template-columns:1fr}.xp-event-showcase__facts>div{border-right:0;border-bottom:1px solid var(--xp-line)!important}.xp-event-showcase__facts>div:last-child{border-bottom:0!important}.xp-event-tabs{padding:0 14px}.xp-value-grid{grid-template-columns:1fr}.xp-policy-grid--experience{grid-template-columns:1fr}.xp-booking-meta>div{grid-template-columns:72px 1fr}}


/* ==========================================================================\n   XTribe V60.8.5.6 — Booking & Checkout Experience Upgrade\n   ========================================================================== */
.xp-checkout-stage{max-width:1284px;margin:0 auto;padding:30px 0 74px}.xp-checkout-steps{max-width:1240px;margin:0 auto 10px;padding:0 22px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.xp-checkout-steps>div{position:relative;border:1px solid var(--xp-line);background:#fff;border-radius:14px;padding:13px 14px 13px 52px;min-height:62px}.xp-checkout-steps>div>span{position:absolute;left:14px;top:14px;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--xp-line);font-weight:900;font-size:12px;color:var(--xp-muted)}.xp-checkout-steps strong,.xp-checkout-steps small{display:block}.xp-checkout-steps strong{color:var(--xp-text);font-size:13px}.xp-checkout-steps small{color:var(--xp-muted);font-size:10px;margin-top:2px}.xp-checkout-steps .is-complete{background:#f1f7f4;border-color:#d5e4dd}.xp-checkout-steps .is-complete>span{background:var(--xp-green);border-color:var(--xp-green);color:#fff}.xp-checkout-steps .is-active{border-color:var(--xp-gold);box-shadow:0 0 0 2px rgba(199,168,107,.12)}.xp-checkout-steps .is-active>span{background:var(--xp-gold);border-color:var(--xp-gold);color:#fff}.xp-checkout-head--enhanced{padding-top:26px;align-items:center}.xp-checkout-head--enhanced h1{max-width:760px;font-size:clamp(34px,5vw,58px);line-height:1.02}.xp-reservation-clock{min-width:220px;border:1px solid var(--xp-line);border-radius:16px;background:#fff;padding:14px 16px;text-align:right;box-shadow:0 10px 35px rgba(31,56,52,.07)}.xp-reservation-clock span,.xp-reservation-clock small{display:block;color:var(--xp-muted);font-size:10px}.xp-reservation-clock strong{display:block;color:var(--xp-green);font-size:28px;line-height:1.1;margin:2px 0}.xp-reservation-clock.is-urgent strong,.xp-payment-timer.is-urgent strong{color:#b1493f}.xp-checkout-layout--enhanced{grid-template-columns:minmax(0,1fr) 382px}.xp-card-heading-row{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:10px}.xp-card-heading-row h2{margin:4px 0 0}.xp-card-intro{color:var(--xp-muted);margin-top:0}.xp-trust-pill,.xp-attendee-badge{display:inline-flex;align-items:center;border-radius:999px;padding:7px 10px;background:#f2eee5;color:var(--xp-green);font-size:10px;font-weight:850;white-space:nowrap}.xp-contact-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.xp-contact-summary>div{background:#faf8f4;border:1px solid var(--xp-line);border-radius:12px;padding:13px}.xp-contact-summary span,.xp-contact-summary strong{display:block}.xp-contact-summary span{color:var(--xp-muted);font-size:10px}.xp-contact-summary strong{color:var(--xp-green);font-size:13px;margin-top:4px;overflow-wrap:anywhere}.xp-form-section-label{margin:22px 0 10px;padding-top:16px;border-top:1px solid var(--xp-line);color:var(--xp-gold);font-size:10px;font-weight:900;letter-spacing:1.2px;text-transform:uppercase}.xp-label-optional{color:var(--xp-muted);font-size:10px;font-weight:500}.xp-form-grid label small{display:block;margin-top:6px;color:var(--xp-muted);font-size:10px;line-height:1.4}.xp-optional-details{margin-top:20px;background:#faf8f4;border:1px solid var(--xp-line)!important;border-radius:13px;padding:0!important}.xp-optional-details summary{padding:13px 15px}.xp-optional-fields{padding:0 15px 8px}.xp-optional-details .xp-check-row{padding:0 15px 14px}.xp-toggle-row{display:flex!important;gap:12px!important;align-items:flex-start;background:#faf8f4;border:1px solid var(--xp-line);border-radius:13px;padding:14px;margin:14px 0 16px}.xp-toggle-row input{width:auto!important;margin-top:3px}.xp-toggle-row strong,.xp-toggle-row small{display:block}.xp-toggle-row small{color:var(--xp-muted);font-weight:400;margin-top:3px}.xp-gst-fields{border-left:3px solid var(--xp-gold);padding:2px 0 2px 14px;margin-bottom:18px}.xp-consent-box{display:grid;gap:8px;background:#f4f1ea;border-radius:13px;padding:14px;margin-top:18px}.xp-consent-box label{display:flex;gap:9px;align-items:flex-start;color:var(--xp-text);font-size:12px;font-weight:650}.xp-consent-box input{width:auto!important;margin-top:2px}.xp-checkout-summary-card{top:94px;padding:22px}.xp-checkout-summary-card h2{font-size:24px;line-height:1.1;margin:5px 0 8px;color:var(--xp-green)}.xp-summary-event-meta{font-size:11px;line-height:1.55;color:var(--xp-muted);padding-bottom:14px;border-bottom:1px solid var(--xp-line)}.xp-summary-ticket-name{display:flex;justify-content:space-between;gap:10px;margin:14px 0}.xp-summary-ticket-name strong{font-size:12px;color:var(--xp-text)}.xp-summary-ticket-name span{font-size:10px;color:var(--xp-muted)}.xp-money-list--checkout .no-fee-row strong,.xp-no-fee-row strong{color:var(--xp-ok)}.xp-price-trust{background:#f3f7f4;border-radius:10px;padding:10px 11px;color:#4f625e;font-size:10px;line-height:1.45}.xp-coupon-field{display:block;margin:14px 0}.xp-checkout-continue{margin-top:4px}.xp-summary-secure{margin-top:13px;border-top:1px solid var(--xp-line);padding-top:12px;color:var(--xp-muted);font-size:10px;line-height:1.45}.xp-reservation-expired{max-width:720px;margin:20px auto;background:#fff0ed;border:1px solid #efc6bf;border-radius:16px;padding:20px;text-align:center}.xp-reservation-expired strong,.xp-reservation-expired span{display:block}.xp-reservation-expired strong{color:#9d3e35;font-size:18px}.xp-reservation-expired span{color:#744d48;font-size:12px;margin:7px 0 14px}.xp-payment-stage{padding-top:30px}.xp-payment-review-grid{max-width:1000px;margin:20px auto 0;padding:0 22px;display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;align-items:start}.xp-payment-review-card h1{color:var(--xp-green);font-size:clamp(36px,5vw,58px);line-height:1.02;margin:8px 0}.xp-payment-review-card>p{color:var(--xp-muted)}.xp-payment-event-summary{display:grid;gap:0;border:1px solid var(--xp-line);border-radius:14px;overflow:hidden;margin:22px 0}.xp-payment-event-summary>div{display:grid;grid-template-columns:92px 1fr;gap:12px;padding:12px 14px;border-bottom:1px solid var(--xp-line)}.xp-payment-event-summary>div:last-child{border-bottom:0}.xp-payment-event-summary span{color:var(--xp-muted);font-size:10px}.xp-payment-event-summary strong{color:var(--xp-text);font-size:12px}.xp-test-mode-note{display:grid;gap:3px;background:#fff0ed;border:1px solid #efc6bf;border-radius:12px;padding:12px 14px;margin:14px 0}.xp-test-mode-note strong{color:#a8463d}.xp-test-mode-note span{color:#744d48;font-size:11px}.xp-payment-timer{display:flex;align-items:center;gap:12px;background:#f3f7f4;border-radius:12px;padding:12px 14px;margin:14px 0}.xp-payment-timer span{color:var(--xp-muted);font-size:10px}.xp-payment-timer strong{margin-left:auto;color:var(--xp-green);font-size:22px}.xp-payment-timer small{display:none}.xp-razorpay-button{font-size:14px;padding-top:14px;padding-bottom:14px}.xp-payment-summary-card{position:sticky;top:94px}.xp-gst-billing-note{border-top:1px solid var(--xp-line);margin-top:14px;padding-top:12px}.xp-gst-billing-note span,.xp-gst-billing-note strong,.xp-gst-billing-note small{display:block}.xp-gst-billing-note span{font-size:9px;color:var(--xp-muted);text-transform:uppercase;font-weight:900}.xp-gst-billing-note strong{font-size:12px;color:var(--xp-green);margin-top:4px}.xp-gst-billing-note small{font-size:10px;color:var(--xp-muted)}.xp-order-head--enhanced{padding-top:54px}.xp-order-layout--enhanced{padding-top:8px}.xp-success-strip{background:#eaf5ef;border:1px solid #c9e3d4;border-radius:14px;padding:15px 17px}.xp-success-strip strong,.xp-success-strip span{display:block}.xp-success-strip strong{color:#256246}.xp-success-strip span{color:#527063;font-size:11px;margin-top:3px}
@media(max-width:980px){.xp-checkout-layout--enhanced,.xp-payment-review-grid{grid-template-columns:1fr}.xp-checkout-summary-card,.xp-payment-summary-card{position:static}.xp-reservation-clock{text-align:left}.xp-checkout-head--enhanced{align-items:flex-start}}
@media(max-width:680px){.xp-checkout-stage{padding-top:18px}.xp-checkout-steps{grid-template-columns:1fr;padding:0 14px}.xp-checkout-steps>div{min-height:56px}.xp-checkout-head--enhanced{padding:24px 14px 18px}.xp-checkout-head--enhanced h1{font-size:38px}.xp-reservation-clock{width:100%;box-sizing:border-box}.xp-checkout-layout--enhanced,.xp-payment-review-grid{padding-left:14px;padding-right:14px}.xp-contact-summary{grid-template-columns:1fr}.xp-card-heading-row{display:block}.xp-card-heading-row .xp-trust-pill,.xp-card-heading-row .xp-attendee-badge{margin-top:8px}.xp-payment-event-summary>div{grid-template-columns:72px 1fr}.xp-payment-timer{display:grid;grid-template-columns:1fr auto}.xp-payment-timer small{display:block;grid-column:1/-1}.xp-order-head--enhanced{padding-top:36px}}

/* XTribe V60.8.5.7 — automatic ticket email delivery */
.xp-ticket-email-note{margin:18px 0 12px;padding:14px 16px;border:1px solid rgba(31,70,55,.14);border-radius:14px;background:rgba(31,70,55,.055);display:grid;gap:4px}.xp-ticket-email-note strong{color:var(--xp-forest,#1f4637);font-size:.92rem}.xp-ticket-email-note span{color:var(--xp-muted,#66736d);font-size:.9rem;line-height:1.45}


/* ==========================================================================
   XTribe V59.9 — How XTribe Works / Curated Relevance Mechanism
   Final authoritative homepage override
   ========================================================================== */

.xh-home-page .xh-how-premium {
  position: relative;
  overflow: hidden;
  padding: clamp(76px, 7vw, 108px) 0;
  background: var(--xh-warm);
}

.xh-home-page .xh-how-shell {
  position: relative;
  overflow: hidden;
  padding: clamp(38px, 4.5vw, 62px) clamp(34px, 4.8vw, 66px);
  border-radius: clamp(28px, 3vw, 38px);
  background:
    radial-gradient(circle at 100% 0%, rgba(255,255,255,.07), transparent 35%),
    linear-gradient(145deg, #0A3434 0%, #0C413C 100%);
  box-shadow: 0 28px 70px rgba(10,52,52,.14);
}

.xh-home-page .xh-how-shell::after {
  content: "";
  position: absolute;
  width: 340px;
  height: 340px;
  right: -170px;
  top: -170px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.07);
  pointer-events: none;
}

.xh-home-page .xh-how-intro {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, .92fr);
  gap: clamp(38px, 5.5vw, 78px);
  align-items: end;
  padding-bottom: clamp(32px, 4vw, 48px);
  margin-bottom: clamp(28px, 3vw, 38px);
  border-bottom: 1px solid rgba(255,255,255,.13);
}

.xh-home-page .xh-how-premium .xh-eyebrow {
  color: var(--xh-coral);
}

.xh-home-page .xh-how-heading h2 {
  max-width: 730px;
  margin: 12px 0 0;
  color: var(--xh-cream);
  font-family: var(--xh-serif);
  font-weight: 500;
  font-size: clamp(43px, 4.6vw, 67px);
  line-height: 1;
  letter-spacing: -2.8px;
  text-wrap: balance;
}

.xh-home-page .xh-how-heading h2 span {
  display: block;
  color: var(--xh-coral) !important;
}

.xh-home-page .xh-how-intro-copy > p {
  max-width: 590px;
  margin: 0;
  color: rgba(250,247,241,.78);
  font-size: clamp(15px, 1.15vw, 18px);
  line-height: 1.75;
}

.xh-home-page .xh-how-principle {
  display: grid;
  grid-template-columns: 36px minmax(0,1fr);
  gap: 14px;
  align-items: start;
  margin-top: 23px;
  padding: 17px 18px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 16px;
  background: rgba(255,255,255,.055);
}

.xh-home-page .xh-how-principle > span {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--xh-coral);
  color: #fff;
  font-size: 13px;
}

.xh-home-page .xh-how-principle p {
  margin: 0;
  color: rgba(250,247,241,.70);
  font-size: 12.5px;
  line-height: 1.6;
}

.xh-home-page .xh-how-principle strong {
  color: #fff;
}

.xh-home-page .xh-how-journey {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 14px;
}

.xh-home-page .xh-how-journey::before {
  display: none;
}

.xh-home-page .xh-how-step {
  position: relative;
  min-width: 0;
  display: flex;
  flex-direction: column;
  padding: clamp(22px, 2vw, 27px);
  border-radius: 20px;
  border: 1px solid rgba(10,52,52,.08);
  background: #FAF7F1;
  box-shadow: 0 13px 32px rgba(0,0,0,.07);
  transition: transform .22s ease, box-shadow .22s ease;
}

.xh-home-page .xh-how-step:hover {
  transform: translateY(-4px);
  background: #FAF7F1;
  box-shadow: 0 20px 44px rgba(0,0,0,.11);
}

.xh-home-page .xh-how-step-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 18px;
}

.xh-home-page .xh-how-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  height: 27px;
  padding: 0 10px;
  border-radius: 999px;
  background: rgba(228,125,107,.12);
  color: var(--xh-coral);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .1em;
}

.xh-home-page .xh-how-stage {
  color: rgba(10,52,52,.48);
  font-size: 8.5px;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
  text-align: right;
}

.xh-home-page .xh-how-icon {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  margin-bottom: 18px;
  border: 1px solid rgba(10,52,52,.08);
  border-radius: 50%;
  background: var(--xh-sage, #E3ECE5);
  color: var(--xh-green);
  font-family: var(--xh-serif);
  font-size: 20px;
}

.xh-home-page .xh-how-step h3 {
  margin: 0 0 11px;
  color: var(--xh-ink);
  font-family: var(--xh-serif);
  font-weight: 500;
  font-size: clamp(21px, 1.7vw, 26px);
  line-height: 1.08;
  letter-spacing: -.7px;
  text-wrap: balance;
}

.xh-home-page .xh-how-step p {
  margin: 0;
  color: rgba(10,52,52,.68);
  font-size: 12.5px;
  line-height: 1.68;
}

.xh-home-page .xh-how-step small {
  display: block;
  margin-top: auto;
  padding-top: 20px;
  color: var(--xh-coral);
  font-size: 10.5px;
  font-weight: 800;
  line-height: 1.45;
}

.xh-home-page .xh-how-footer {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  align-items: center;
  gap: 40px;
  margin-top: 16px;
  padding: 22px 25px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 18px;
  background: rgba(255,255,255,.05);
}

.xh-home-page .xh-how-footer > div,
.xh-home-page .xh-how-footer-copy {
  max-width: none;
}

.xh-home-page .xh-how-footer-copy p,
.xh-home-page .xh-how-footer p {
  max-width: 570px;
  margin: 6px 0 0;
  color: rgba(250,247,241,.74);
  font-size: 13px;
  line-height: 1.6;
}

.xh-home-page .xh-how-equation {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  flex-wrap: wrap;
}

.xh-home-page .xh-how-equation span {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 13px;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 999px;
  background: rgba(255,255,255,.06);
  color: rgba(255,255,255,.90);
  font-size: 10px;
  font-weight: 800;
  white-space: nowrap;
}

.xh-home-page .xh-how-equation b {
  color: var(--xh-coral);
  font-size: 14px;
  font-weight: 700;
}

@media (max-width: 1100px) {
  .xh-home-page .xh-how-intro {
    grid-template-columns: 1fr;
    gap: 26px;
    align-items: start;
  }

  .xh-home-page .xh-how-intro-copy > p {
    max-width: 720px;
  }

  .xh-home-page .xh-how-journey {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .xh-home-page .xh-how-footer {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .xh-home-page .xh-how-equation {
    justify-content: flex-start;
  }
}

@media (max-width: 640px) {
  .xh-home-page .xh-how-premium {
    padding: 62px 0;
  }

  .xh-home-page .xh-how-shell {
    padding: 29px 19px;
    border-radius: 24px;
  }

  .xh-home-page .xh-how-shell::after {
    display: none;
  }

  .xh-home-page .xh-how-heading h2 {
    font-size: clamp(39px, 11vw, 50px);
    letter-spacing: -2px;
  }

  .xh-home-page .xh-how-principle {
    grid-template-columns: 32px minmax(0,1fr);
    padding: 16px;
  }

  .xh-home-page .xh-how-principle > span {
    width: 32px;
    height: 32px;
  }

  .xh-home-page .xh-how-journey {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .xh-home-page .xh-how-step {
    padding: 22px;
  }

  .xh-home-page .xh-how-footer {
    padding: 20px;
  }

  .xh-home-page .xh-how-equation {
    display: flex;
    align-items: flex-start;
    gap: 8px;
  }

  .xh-home-page .xh-how-equation span {
    white-space: normal;
  }
}

@media (prefers-reduced-motion: reduce) {
  .xh-home-page .xh-how-step {
    transition: none;
  }
}

/* ========================================================================== 
   XTribe V59.9 — Beyond the Room / Community Continuation
   Authoritative homepage override for the after-event community section.
   ========================================================================== */

.xh-home-page .xh-continuity {
  position: relative;
  overflow: hidden;
  padding: clamp(78px, 7vw, 108px) 0;
  background: var(--xh-cream);
  border-top: 1px solid var(--xh-line);
}

.xh-home-page .xh-continuity::before {
  content: "";
  position: absolute;
  right: -190px;
  top: -220px;
  width: 470px;
  height: 470px;
  border-radius: 50%;
  background: rgba(227, 236, 229, .62);
  pointer-events: none;
}

.xh-home-page .xh-continuity .xh-container {
  position: relative;
  z-index: 1;
}

/* Intro */
.xh-home-page .xh-continuity-intro {
  display: grid;
  grid-template-columns: minmax(0, 1.04fr) minmax(360px, .96fr);
  gap: clamp(42px, 6vw, 88px);
  align-items: end;
  padding-bottom: clamp(34px, 4vw, 50px);
  margin-bottom: clamp(30px, 3.5vw, 46px);
  border-bottom: 1px solid var(--xh-line);
}

.xh-home-page .xh-continuity-heading,
.xh-home-page .xh-continuity-opening {
  min-width: 0;
}

.xh-home-page .xh-continuity-heading h2 {
  max-width: 760px;
  margin: 11px 0 0;
  color: var(--xh-ink);
  font-family: var(--xh-serif);
  font-size: var(--xh-h2-size, clamp(38px, 4.6vw, 54px));
  font-weight: 500;
  line-height: var(--xh-h2-line-height, 1.03);
  letter-spacing: var(--xh-h2-letter-spacing, -1.6px);
  text-wrap: balance;
}

.xh-home-page .xh-continuity-heading h2 span {
  display: block;
  color: var(--xh-coral);
}

.xh-home-page .xh-continuity-opening > p {
  max-width: 610px;
  margin: 0;
  color: rgba(10, 52, 52, .72);
  font-size: clamp(15px, 1.15vw, 18px);
  line-height: 1.76;
}

.xh-home-page .xh-continuity-flow {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 22px;
}

.xh-home-page .xh-continuity-flow span {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 13px;
  border: 1px solid var(--xh-line);
  border-radius: 999px;
  background: rgba(255, 253, 250, .82);
  color: var(--xh-ink);
  font-size: 10px;
  font-weight: 850;
}

.xh-home-page .xh-continuity-flow b {
  color: var(--xh-coral);
  font-size: 13px;
}

/* Three continuation cards */
.xh-home-page .xh-continuity-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.xh-home-page .xh-continuity-card {
  min-width: 0;
  display: flex;
  flex-direction: column;
  padding: clamp(25px, 2.6vw, 34px);
  border: 1px solid var(--xh-line);
  border-radius: 22px;
  background: var(--xh-white);
  box-shadow: 0 14px 36px rgba(10, 52, 52, .055);
}

.xh-home-page .xh-continuity-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 25px;
}

.xh-home-page .xh-continuity-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 39px;
  height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  background: rgba(228, 125, 107, .12);
  color: var(--xh-coral);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .1em;
}

.xh-home-page .xh-continuity-label {
  color: rgba(10, 52, 52, .48);
  font-size: 8.5px;
  font-weight: 900;
  letter-spacing: .1em;
  text-align: right;
}

.xh-home-page .xh-continuity-card h3 {
  margin: 0 0 14px;
  color: var(--xh-ink);
  font-family: var(--xh-serif);
  font-size: clamp(25px, 2.05vw, 31px);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -.9px;
  text-wrap: balance;
}

.xh-home-page .xh-continuity-card > p {
  margin: 0;
  color: rgba(10, 52, 52, .68);
  font-size: 13px;
  line-height: 1.72;
}

.xh-home-page .xh-continuity-points {
  display: grid;
  gap: 9px;
  margin: auto 0 0;
  padding: 23px 0 0;
  list-style: none;
}

.xh-home-page .xh-continuity-points li {
  position: relative;
  padding-left: 17px;
  color: var(--xh-ink);
  font-size: 10.5px;
  font-weight: 750;
  line-height: 1.5;
}

.xh-home-page .xh-continuity-points li::before {
  content: "✦";
  position: absolute;
  left: 0;
  top: .05em;
  color: var(--xh-coral);
  font-size: 8px;
}

/* Access strip */
.xh-home-page .xh-continuity-access {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(28px, 4vw, 60px);
  margin-top: 20px;
  padding: clamp(24px, 3vw, 34px);
  border-radius: 22px;
  background: var(--xh-green);
  color: #fff;
}

.xh-home-page .xh-continuity-access-copy {
  max-width: 780px;
}

.xh-home-page .xh-continuity-access .xh-eyebrow {
  color: #efb197;
}

.xh-home-page .xh-continuity-access h3 {
  margin: 8px 0 9px;
  color: #fff;
  font-family: var(--xh-serif);
  font-size: clamp(24px, 2.4vw, 34px);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -.9px;
}

.xh-home-page .xh-continuity-access p {
  max-width: 690px;
  margin: 0;
  color: rgba(255,255,255,.72);
  font-size: 12.5px;
  line-height: 1.65;
}

.xh-home-page .xh-continuity-access .xh-button {
  flex: 0 0 auto;
  white-space: nowrap;
}

@media (max-width: 1000px) {
  .xh-home-page .xh-continuity-intro {
    grid-template-columns: 1fr;
    gap: 25px;
    align-items: start;
  }

  .xh-home-page .xh-continuity-opening > p {
    max-width: 760px;
  }

  .xh-home-page .xh-continuity-grid {
    grid-template-columns: 1fr;
  }

  .xh-home-page .xh-continuity-access {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width: 640px) {
  .xh-home-page .xh-continuity {
    padding: 64px 0;
  }

  .xh-home-page .xh-continuity-intro {
    padding-bottom: 28px;
    margin-bottom: 26px;
  }

  .xh-home-page .xh-continuity-heading h2 span {
    display: inline;
  }

  .xh-home-page .xh-continuity-flow {
    gap: 8px;
  }

  .xh-home-page .xh-continuity-flow span {
    min-height: 32px;
    padding: 0 11px;
  }

  .xh-home-page .xh-continuity-card {
    padding: 24px 21px;
    border-radius: 19px;
  }

  .xh-home-page .xh-continuity-card-top {
    margin-bottom: 20px;
  }

  .xh-home-page .xh-continuity-card h3 {
    font-size: 26px;
  }

  .xh-home-page .xh-continuity-access {
    padding: 24px 21px;
    border-radius: 20px;
  }

  .xh-home-page .xh-continuity-access .xh-button {
    width: 100%;
    white-space: normal;
    text-align: center;
  }
}

/* ========================================================================== 
   XTribe V59.10 — Context Before Conversation
   Homepage introduction / visible-context section
   ========================================================================== */

.xh-home-page .xh-context-section {
  position: relative;
  overflow: hidden;
  padding: clamp(82px, 7.5vw, 116px) 0;
  background: var(--xh-white);
  border-top: 1px solid var(--xh-line);
  border-bottom: 1px solid var(--xh-line);
}

.xh-home-page .xh-context-section::before {
  content: "";
  position: absolute;
  left: -210px;
  top: -230px;
  width: 460px;
  height: 460px;
  border-radius: 50%;
  background: rgba(227, 236, 229, .62);
  pointer-events: none;
}

.xh-home-page .xh-context-section .xh-container {
  position: relative;
  z-index: 1;
}

/* Header */
.xh-home-page .xh-context-header {
  display: grid;
  grid-template-columns: minmax(0, 1.06fr) minmax(360px, .94fr);
  gap: clamp(42px, 6vw, 86px);
  align-items: end;
  padding-bottom: clamp(34px, 4vw, 48px);
  margin-bottom: clamp(34px, 4vw, 52px);
  border-bottom: 1px solid var(--xh-line);
}

.xh-home-page .xh-context-title h2 {
  max-width: 720px;
  margin: 12px 0 0;
  color: var(--xh-ink);
  font-family: var(--xh-serif);
  font-size: var(--xh-h2-size, clamp(40px, 4.2vw, 54px));
  font-weight: 500;
  line-height: var(--xh-h2-line-height, 1.03);
  letter-spacing: var(--xh-h2-letter-spacing, -1.8px);
  text-wrap: balance;
}

.xh-home-page .xh-context-title h2 span {
  display: block;
  color: var(--xh-coral);
}

.xh-home-page .xh-context-header-copy > p {
  max-width: 600px;
  margin: 0;
  color: rgba(10, 52, 52, .72);
  font-size: clamp(15px, 1.15vw, 18px);
  line-height: 1.76;
}

.xh-home-page .xh-context-header-note {
  margin-top: 18px !important;
  padding-left: 17px;
  border-left: 2px solid var(--xh-coral);
  color: var(--xh-muted) !important;
  font-size: 12.5px !important;
  line-height: 1.6 !important;
}

.xh-home-page .xh-context-header-note strong {
  color: var(--xh-ink);
}

/* Main two-column area */
.xh-home-page .xh-context-layout {
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(420px, 1.08fr);
  gap: clamp(46px, 6.5vw, 92px);
  align-items: center;
}

/* Context points */
.xh-home-page .xh-context-points {
  border-top: 1px solid var(--xh-line);
}

.xh-home-page .xh-context-points article {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 17px;
  padding: 22px 0;
  border-bottom: 1px solid var(--xh-line);
}

.xh-home-page .xh-context-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 39px;
  height: 27px;
  margin-top: 2px;
  border-radius: 999px;
  background: rgba(228, 125, 107, .11);
  color: var(--xh-coral);
  font-size: 9.5px;
  font-weight: 900;
  letter-spacing: .08em;
}

.xh-home-page .xh-context-points h3 {
  margin: 0 0 6px;
  color: var(--xh-ink);
  font-family: var(--xh-serif);
  font-size: clamp(21px, 1.7vw, 26px);
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: -.6px;
}

.xh-home-page .xh-context-points p {
  max-width: 540px;
  margin: 0;
  color: var(--xh-muted);
  font-size: 12.5px;
  line-height: 1.67;
}

/* Example context card */
.xh-home-page .xh-context-card {
  position: relative;
  overflow: hidden;
  padding: clamp(28px, 3.1vw, 42px);
  border: 1px solid rgba(10, 52, 52, .12);
  border-radius: clamp(24px, 2.8vw, 34px);
  background:
    radial-gradient(circle at 100% 0%, rgba(228,125,107,.13), transparent 30%),
    #F8F3EC;
  box-shadow: 0 24px 64px rgba(10, 52, 52, .09);
}

.xh-home-page .xh-context-card::after {
  content: "CONTEXT";
  position: absolute;
  right: -15px;
  bottom: -18px;
  color: rgba(10, 52, 52, .035);
  font-family: var(--xh-serif);
  font-size: clamp(72px, 8vw, 126px);
  line-height: 1;
  pointer-events: none;
}

.xh-home-page .xh-context-card-top {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(10, 52, 52, .12);
}

.xh-home-page .xh-context-card-mark {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--xh-coral);
  color: #fff;
  font-size: 13px;
}

.xh-home-page .xh-context-person {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: 15px;
  padding: 24px 0 21px;
}

.xh-home-page .xh-context-avatar {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  background: var(--xh-green);
  color: var(--xh-cream);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .08em;
}

.xh-home-page .xh-context-person strong,
.xh-home-page .xh-context-person small {
  display: block;
}

.xh-home-page .xh-context-person strong {
  color: var(--xh-ink);
  font-family: var(--xh-serif);
  font-size: 24px;
  font-weight: 500;
  line-height: 1.1;
}

.xh-home-page .xh-context-person small {
  margin-top: 5px;
  color: var(--xh-muted);
  font-size: 11px;
}

.xh-home-page .xh-context-profile {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 0;
  margin: 0;
}

.xh-home-page .xh-context-profile > div {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr);
  gap: 18px;
  padding: 17px 0;
  border-top: 1px solid rgba(10, 52, 52, .10);
}

.xh-home-page .xh-context-profile dt {
  color: var(--xh-coral);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.xh-home-page .xh-context-profile dd {
  margin: 0;
  color: rgba(10, 52, 52, .72);
  font-size: 12.5px;
  line-height: 1.6;
}

.xh-home-page .xh-context-card-footer {
  position: relative;
  z-index: 1;
  margin-top: 8px;
  padding: 17px 18px;
  border-radius: 15px;
  background: var(--xh-green);
}

.xh-home-page .xh-context-card-footer strong,
.xh-home-page .xh-context-card-footer span {
  display: block;
}

.xh-home-page .xh-context-card-footer strong {
  color: #fff;
  font-size: 12px;
}

.xh-home-page .xh-context-card-footer span {
  margin-top: 4px;
  color: rgba(250, 247, 241, .72);
  font-size: 10.5px;
  line-height: 1.55;
}

/* Outcome strip */
.xh-home-page .xh-context-outcome {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  max-width: 980px;
  margin: clamp(36px, 4vw, 52px) auto 0;
  padding: 22px 26px;
  border: 1px solid var(--xh-line);
  border-radius: 18px;
  background: rgba(227, 236, 229, .42);
}

.xh-home-page .xh-context-outcome-mark {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: var(--xh-green);
  color: #fff;
  font-size: 16px;
}

.xh-home-page .xh-context-outcome p {
  margin: 6px 0 0;
  color: rgba(10, 52, 52, .74);
  font-size: 13px;
  line-height: 1.65;
}

/* Tablet */
@media (max-width: 1024px) {
  .xh-home-page .xh-context-header,
  .xh-home-page .xh-context-layout {
    grid-template-columns: 1fr;
  }

  .xh-home-page .xh-context-header {
    gap: 26px;
    align-items: start;
  }

  .xh-home-page .xh-context-layout {
    gap: 42px;
  }

  .xh-home-page .xh-context-header-copy > p,
  .xh-home-page .xh-context-points p {
    max-width: 720px;
  }

  .xh-home-page .xh-context-card {
    max-width: 760px;
  }
}

/* Mobile */
@media (max-width: 640px) {
  .xh-home-page .xh-context-section {
    padding: 64px 0;
  }

  .xh-home-page .xh-context-header {
    margin-bottom: 28px;
    padding-bottom: 28px;
  }

  .xh-home-page .xh-context-points article {
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 13px;
    padding: 19px 0;
  }

  .xh-home-page .xh-context-card {
    padding: 24px 19px;
    border-radius: 22px;
  }

  .xh-home-page .xh-context-profile > div {
    grid-template-columns: 1fr;
    gap: 6px;
    padding: 15px 0;
  }

  .xh-home-page .xh-context-outcome {
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 14px;
    padding: 19px;
  }

  .xh-home-page .xh-context-outcome-mark {
    width: 38px;
    height: 38px;
  }
}

/* ========================================================================== 
   XTribe V59.11 — Founder Story / Why XTribe Exists
   Editorial founder narrative with real founder photograph and belief-led flow.
   Scoped to homepage and appended as the final authoritative override.
   ========================================================================== */

.xh-home-page .xh-founder-story-v2 {
  position: relative;
  overflow: hidden;
  padding: clamp(84px, 8vw, 128px) 0;
  background:
    radial-gradient(circle at 100% 0%, rgba(255,255,255,.055), transparent 34%),
    linear-gradient(145deg, #082f2d 0%, #0A3434 56%, #0C403B 100%);
  color: var(--xh-cream);
}

.xh-home-page .xh-founder-story-v2::before {
  content: "";
  position: absolute;
  left: -180px;
  bottom: -220px;
  width: 480px;
  height: 480px;
  border: 1px solid rgba(255,255,255,.055);
  border-radius: 50%;
  pointer-events: none;
}

.xh-home-page .xh-founder-story-v2::after {
  content: "“";
  position: absolute;
  right: clamp(18px, 4vw, 60px);
  top: -84px;
  color: rgba(255,255,255,.025);
  font-family: var(--xh-serif);
  font-size: clamp(250px, 28vw, 470px);
  line-height: 1;
  pointer-events: none;
}

.xh-home-page .xh-founder-story-v2 > .xh-container {
  position: relative;
  z-index: 1;
}

/* Main layout */
.xh-home-page .xh-founder-story-v2-grid {
  display: grid;
  grid-template-columns: minmax(280px, .72fr) minmax(0, 1.28fr);
  gap: clamp(58px, 8vw, 118px);
  align-items: start;
}

/* Founder profile */
.xh-home-page .xh-founder-profile {
  position: sticky;
  top: 116px;
  min-width: 0;
}

.xh-home-page .xh-founder-photo-v2 {
  position: relative;
  width: min(100%, 390px);
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 28px;
  background: #123F3A;
  box-shadow: 0 28px 70px rgba(0,0,0,.22);
}

.xh-home-page .xh-founder-photo-v2 img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  object-position: center top;
}

.xh-home-page .xh-founder-photo-placeholder {
  display: grid;
  place-items: center;
  aspect-ratio: 4 / 5;
  background:
    radial-gradient(circle at 32% 24%, rgba(228,125,107,.28), transparent 28%),
    linear-gradient(145deg, #174E48, #092D2A);
}

.xh-home-page .xh-founder-photo-placeholder span {
  color: rgba(255,255,255,.86);
  font-family: var(--xh-serif);
  font-size: clamp(72px, 8vw, 116px);
  letter-spacing: -5px;
}

.xh-home-page .xh-founder-photo-label {
  position: absolute;
  left: 17px;
  bottom: 17px;
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 13px;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 999px;
  background: rgba(7, 44, 41, .82);
  color: #fff;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.xh-home-page .xh-founder-identity {
  display: grid;
  gap: 4px;
  width: min(100%, 390px);
  padding: 19px 4px 0;
}

.xh-home-page .xh-founder-identity strong {
  color: #fff;
  font-family: var(--xh-serif);
  font-size: 24px;
  font-weight: 500;
  line-height: 1.15;
}

.xh-home-page .xh-founder-identity span {
  color: rgba(250,247,241,.7);
  font-size: 12px;
  font-weight: 700;
}

.xh-home-page .xh-founder-identity small {
  color: rgba(250,247,241,.48);
  font-size: 10px;
}

/* Story copy */
.xh-home-page .xh-founder-story-v2-copy {
  min-width: 0;
  max-width: 820px;
}

.xh-home-page .xh-founder-story-v2 .xh-eyebrow {
  color: var(--xh-coral);
}

.xh-home-page .xh-founder-story-v2-copy > h2 {
  max-width: 790px;
  margin: 12px 0 22px;
  color: var(--xh-cream);
  font-family: var(--xh-serif);
  font-size: clamp(45px, 4.8vw, 70px) !important;
  font-weight: 500;
  line-height: 1 !important;
  letter-spacing: -2.8px !important;
  text-wrap: balance;
}

.xh-home-page .xh-founder-story-v2-copy > h2 span {
  display: block;
  color: var(--xh-coral);
}

.xh-home-page .xh-founder-story-lead {
  max-width: 690px;
  margin: 0 0 clamp(38px, 5vw, 58px);
  color: rgba(250,247,241,.86);
  font-family: var(--xh-serif);
  font-size: clamp(22px, 2.2vw, 31px);
  line-height: 1.42;
  letter-spacing: -.55px;
}

/* Narrative moments */
.xh-home-page .xh-founder-moment {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 22px;
  padding: 0 0 clamp(36px, 4vw, 48px);
  margin-bottom: clamp(36px, 4vw, 48px);
  border-bottom: 1px solid rgba(255,255,255,.12);
}

.xh-home-page .xh-founder-moment-number {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(228,125,107,.42);
  border-radius: 50%;
  color: var(--xh-coral);
  background: rgba(228,125,107,.075);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .08em;
}

.xh-home-page .xh-founder-moment-kicker {
  display: block;
  margin-bottom: 9px;
  color: var(--xh-coral);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.xh-home-page .xh-founder-moment h3,
.xh-home-page .xh-founder-realisation h3,
.xh-home-page .xh-founder-xtribe-copy h3 {
  margin: 0 0 16px;
  color: #fff;
  font-family: var(--xh-serif);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -1.1px;
  text-wrap: balance;
}

.xh-home-page .xh-founder-moment h3 {
  max-width: 690px;
  font-size: clamp(28px, 3vw, 40px);
}

.xh-home-page .xh-founder-moment p,
.xh-home-page .xh-founder-realisation p {
  max-width: 710px;
  margin: 0 0 16px;
  color: rgba(250,247,241,.73);
  font-size: 15px;
  line-height: 1.82;
}

.xh-home-page .xh-founder-moment p:last-child,
.xh-home-page .xh-founder-realisation p:last-child {
  margin-bottom: 0;
}

.xh-home-page .xh-founder-story-caveat {
  margin-top: 22px !important;
  padding: 16px 18px;
  border-left: 3px solid rgba(228,125,107,.65);
  border-radius: 0 12px 12px 0;
  background: rgba(255,255,255,.045);
  color: rgba(250,247,241,.62) !important;
  font-size: 12px !important;
  line-height: 1.65 !important;
}

/* Context contrast */
.xh-home-page .xh-founder-contrast {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  margin: -20px 0 clamp(42px, 5vw, 60px) 66px;
}

.xh-home-page .xh-founder-contrast span {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 12px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 999px;
  color: rgba(250,247,241,.72);
  background: rgba(255,255,255,.045);
  font-size: 10px;
  font-weight: 750;
}

.xh-home-page .xh-founder-contrast i {
  color: var(--xh-coral);
  font-style: normal;
}

/* Belief block */
.xh-home-page .xh-founder-belief {
  position: relative;
  margin: clamp(42px, 5vw, 62px) 0;
  padding: clamp(28px, 3.5vw, 40px);
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 24px;
  background:
    linear-gradient(145deg, rgba(255,255,255,.075), rgba(255,255,255,.035));
}

.xh-home-page .xh-founder-belief::after {
  content: "?";
  position: absolute;
  right: 18px;
  bottom: -56px;
  color: rgba(255,255,255,.035);
  font-family: var(--xh-serif);
  font-size: 170px;
  line-height: 1;
}

.xh-home-page .xh-founder-belief > span {
  position: relative;
  z-index: 1;
  display: block;
  margin-bottom: 13px;
  color: var(--xh-coral);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .15em;
  text-transform: uppercase;
}

.xh-home-page .xh-founder-belief p {
  position: relative;
  z-index: 1;
  max-width: 690px;
  margin: 0;
  color: #fff;
  font-family: var(--xh-serif);
  font-size: clamp(31px, 3.5vw, 49px);
  line-height: 1.06;
  letter-spacing: -1.6px;
}

/* Bigger realisation */
.xh-home-page .xh-founder-realisation {
  padding: clamp(30px, 3.8vw, 44px) 0;
}

.xh-home-page .xh-founder-realisation h3 {
  max-width: 760px;
  font-size: clamp(31px, 3.6vw, 48px);
}

/* XTribe connection */
.xh-home-page .xh-founder-xtribe {
  display: grid;
  grid-template-columns: minmax(0, .86fr) minmax(0, 1.14fr);
  gap: clamp(32px, 5vw, 64px);
  margin-top: clamp(42px, 5vw, 64px);
  padding: clamp(30px, 4vw, 46px);
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 26px;
  background: rgba(255,255,255,.05);
}

.xh-home-page .xh-founder-xtribe-copy h3 {
  margin-top: 12px;
  font-size: clamp(28px, 3vw, 40px);
}

.xh-home-page .xh-founder-xtribe-flow {
  display: grid;
  gap: 12px;
}

.xh-home-page .xh-founder-xtribe-flow > div {
  display: grid;
  grid-template-columns: 37px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  min-height: 68px;
  padding: 14px 16px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 15px;
  background: rgba(7,44,41,.42);
}

.xh-home-page .xh-founder-xtribe-flow b {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: rgba(228,125,107,.13);
  color: var(--xh-coral);
  font-size: 9px;
  letter-spacing: .08em;
}

.xh-home-page .xh-founder-xtribe-flow span {
  color: rgba(250,247,241,.78);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.55;
}

/* Closing */
.xh-home-page .xh-founder-story-v2-footer {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 36px;
  margin-top: clamp(36px, 4vw, 50px);
  padding-top: clamp(28px, 3vw, 38px);
  border-top: 1px solid rgba(255,255,255,.14);
}

.xh-home-page .xh-founder-story-v2-footer p {
  max-width: 650px;
  margin: 0;
  color: rgba(250,247,241,.68);
  font-size: 14px;
  line-height: 1.7;
}

.xh-home-page .xh-founder-story-v2-footer strong {
  display: block;
  margin-bottom: 7px;
  color: #fff;
  font-family: var(--xh-serif);
  font-size: 20px;
  font-weight: 500;
  line-height: 1.35;
}

.xh-home-page .xh-founder-story-v2-footer .xh-text-link {
  flex: 0 0 auto;
  color: #F0A18F;
}

.xh-home-page .xh-founder-story-v2-footer .xh-text-link:hover,
.xh-home-page .xh-founder-story-v2-footer .xh-text-link:focus-visible {
  color: #fff;
}

/* Tablet */
@media (max-width: 1020px) {
  .xh-home-page .xh-founder-story-v2-grid {
    grid-template-columns: 1fr;
    gap: 46px;
  }

  .xh-home-page .xh-founder-profile {
    position: static;
    display: grid;
    grid-template-columns: minmax(230px, 340px) minmax(0, 1fr);
    gap: 28px;
    align-items: end;
    max-width: 780px;
  }

  .xh-home-page .xh-founder-photo-v2,
  .xh-home-page .xh-founder-identity {
    width: 100%;
  }

  .xh-home-page .xh-founder-identity {
    padding: 0 0 12px;
  }

  .xh-home-page .xh-founder-story-v2-copy {
    max-width: 820px;
  }

  .xh-home-page .xh-founder-xtribe {
    grid-template-columns: 1fr;
  }
}

/* Mobile */
@media (max-width: 680px) {
  .xh-home-page .xh-founder-story-v2 {
    padding: 68px 0 72px;
  }

  .xh-home-page .xh-founder-story-v2::after {
    display: none;
  }

  .xh-home-page .xh-founder-profile {
    display: block;
  }

  .xh-home-page .xh-founder-photo-v2 {
    width: min(100%, 330px);
  }

  .xh-home-page .xh-founder-identity {
    width: min(100%, 330px);
    padding-top: 17px;
  }

  .xh-home-page .xh-founder-story-v2-copy > h2 {
    font-size: clamp(39px, 11vw, 51px) !important;
    letter-spacing: -2px !important;
  }

  .xh-home-page .xh-founder-story-lead {
    font-size: 22px;
  }

  .xh-home-page .xh-founder-moment {
    grid-template-columns: 36px minmax(0, 1fr);
    gap: 14px;
  }

  .xh-home-page .xh-founder-moment-number {
    width: 34px;
    height: 34px;
  }

  .xh-home-page .xh-founder-moment h3 {
    font-size: 27px;
  }

  .xh-home-page .xh-founder-moment p,
  .xh-home-page .xh-founder-realisation p {
    font-size: 14px;
    line-height: 1.75;
  }

  .xh-home-page .xh-founder-contrast {
    margin-left: 0;
  }

  .xh-home-page .xh-founder-belief {
    padding: 26px 22px;
    border-radius: 20px;
  }

  .xh-home-page .xh-founder-belief p {
    font-size: 31px;
  }

  .xh-home-page .xh-founder-realisation h3 {
    font-size: 32px;
  }

  .xh-home-page .xh-founder-xtribe {
    padding: 24px 20px;
    border-radius: 20px;
  }

  .xh-home-page .xh-founder-xtribe-copy h3 {
    font-size: 29px;
  }

  .xh-home-page .xh-founder-story-v2-footer {
    align-items: flex-start;
    flex-direction: column;
    gap: 18px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .xh-home-page .xh-founder-story-v2 * {
    scroll-behavior: auto;
  }
}

/* ==========================================================================
   XTribe V59.12 — Compact homepage founder story
   Purpose: reduce the homepage founder story to a premium 40/60 editorial
   preview. The full chronology belongs on /our-story.
   ========================================================================== */

.xh-home-page .xh-founder-preview {
  position: relative;
  overflow: hidden;
  padding: clamp(78px, 7vw, 104px) 0;
  background:
    radial-gradient(circle at 6% 12%, rgba(255,255,255,.035), transparent 25%),
    linear-gradient(145deg, #0A3434 0%, #0B3D39 100%);
}

/* Remove the oversized decorative quotation mark used by older founder styles. */
.xh-home-page .xh-founder-preview::after {
  display: none !important;
  content: none !important;
}

.xh-home-page .xh-founder-preview .xh-container {
  position: relative;
  z-index: 1;
}

.xh-home-page .xh-founder-preview-grid {
  display: grid;
  grid-template-columns: minmax(320px, .78fr) minmax(0, 1.22fr);
  gap: clamp(52px, 6vw, 88px);
  align-items: center;
}

/* --------------------------------------------------------------------------
   Founder portrait
   -------------------------------------------------------------------------- */

.xh-home-page .xh-founder-preview-person {
  min-width: 0;
}

.xh-home-page .xh-founder-preview-photo {
  position: relative;
  width: min(100%, 455px);
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 28px;
  background: #163f3a;
  box-shadow: 0 28px 70px rgba(0,0,0,.22);
}

.xh-home-page .xh-founder-preview-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  box-shadow: inset 0 -70px 100px rgba(7, 40, 37, .12);
}

.xh-home-page .xh-founder-preview-photo img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  object-position: center top;
}

.xh-home-page .xh-founder-preview-identity {
  display: grid;
  gap: 3px;
  margin-top: 20px;
  padding-left: 3px;
}

.xh-home-page .xh-founder-preview-identity strong {
  color: var(--xh-cream);
  font-family: var(--xh-serif);
  font-size: 22px;
  font-weight: 500;
  line-height: 1.15;
}

.xh-home-page .xh-founder-preview-identity span {
  color: rgba(250,247,241,.6);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .02em;
}

/* --------------------------------------------------------------------------
   Story copy
   -------------------------------------------------------------------------- */

.xh-home-page .xh-founder-preview-copy {
  min-width: 0;
  max-width: 790px;
}

.xh-home-page .xh-founder-preview .xh-eyebrow {
  color: var(--xh-coral);
}

.xh-home-page .xh-founder-preview-copy h2 {
  max-width: 760px;
  margin: 13px 0 20px;
  color: var(--xh-cream);
  font-family: var(--xh-serif);
  font-size: clamp(43px, 4.25vw, 62px) !important;
  font-weight: 500;
  line-height: 1.01 !important;
  letter-spacing: -2.4px !important;
  text-wrap: balance;
}

.xh-home-page .xh-founder-preview-copy h2 span {
  display: block;
  color: var(--xh-coral);
}

.xh-home-page .xh-founder-preview-lead {
  max-width: 690px;
  margin: 0 0 27px;
  color: #fff9f0;
  font-family: var(--xh-serif);
  font-size: clamp(20px, 1.65vw, 26px);
  line-height: 1.42;
  letter-spacing: -.4px;
}

.xh-home-page .xh-founder-preview-story {
  display: grid;
  gap: 15px;
  max-width: 720px;
}

.xh-home-page .xh-founder-preview-story p {
  margin: 0;
  color: rgba(250,247,241,.75);
  font-size: clamp(14px, 1.05vw, 16px);
  line-height: 1.76;
}

/* --------------------------------------------------------------------------
   Central question
   -------------------------------------------------------------------------- */

.xh-home-page .xh-founder-preview-question {
  max-width: 720px;
  margin: 30px 0 27px;
  padding: 23px 26px 24px;
  border: 1px solid rgba(255,255,255,.14);
  border-left: 4px solid var(--xh-coral);
  border-radius: 0 18px 18px 0;
  background: rgba(255,255,255,.055);
}

.xh-home-page .xh-founder-preview-question > span {
  display: block;
  margin-bottom: 9px;
  color: var(--xh-coral);
  font-size: 9px;
  font-weight: 900;
  line-height: 1.3;
  letter-spacing: .14em;
}

.xh-home-page .xh-founder-preview-question p {
  margin: 0;
  color: var(--xh-cream);
  font-family: var(--xh-serif);
  font-size: clamp(25px, 2.35vw, 35px);
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: -1px;
}

/* --------------------------------------------------------------------------
   Closing belief + CTA
   -------------------------------------------------------------------------- */

.xh-home-page .xh-founder-preview-close {
  max-width: 720px;
  padding-top: 24px;
  border-top: 1px solid rgba(255,255,255,.13);
}

.xh-home-page .xh-founder-preview-close p {
  margin: 0 0 19px;
  color: rgba(250,247,241,.7);
  font-size: 14px;
  line-height: 1.72;
}

.xh-home-page .xh-founder-preview-close strong {
  display: block;
  margin-bottom: 7px;
  color: var(--xh-cream);
  font-family: var(--xh-serif);
  font-size: 20px;
  font-weight: 500;
  line-height: 1.35;
}

.xh-home-page .xh-founder-preview .xh-text-link {
  color: #F0A08C;
}

.xh-home-page .xh-founder-preview .xh-text-link:hover,
.xh-home-page .xh-founder-preview .xh-text-link:focus-visible {
  color: #fff;
}

/* --------------------------------------------------------------------------
   Tablet
   -------------------------------------------------------------------------- */

@media (max-width: 980px) {
  .xh-home-page .xh-founder-preview-grid {
    grid-template-columns: minmax(250px, .72fr) minmax(0, 1.28fr);
    gap: 42px;
    align-items: start;
  }

  .xh-home-page .xh-founder-preview-photo {
    width: 100%;
    max-width: 360px;
  }

  .xh-home-page .xh-founder-preview-copy h2 {
    font-size: clamp(39px, 5.5vw, 52px) !important;
  }
}

/* --------------------------------------------------------------------------
   Mobile / narrow tablet
   -------------------------------------------------------------------------- */

@media (max-width: 760px) {
  .xh-home-page .xh-founder-preview {
    padding: 66px 0 70px;
  }

  .xh-home-page .xh-founder-preview-grid {
    grid-template-columns: 1fr;
    gap: 38px;
  }

  .xh-home-page .xh-founder-preview-person {
    display: grid;
    grid-template-columns: minmax(0, 230px) minmax(0, 1fr);
    align-items: end;
    gap: 18px;
  }

  .xh-home-page .xh-founder-preview-photo {
    max-width: 230px;
    border-radius: 22px;
  }

  .xh-home-page .xh-founder-preview-identity {
    margin: 0 0 4px;
    padding: 0;
  }

  .xh-home-page .xh-founder-preview-copy {
    max-width: none;
  }
}

@media (max-width: 520px) {
  .xh-home-page .xh-founder-preview-person {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .xh-home-page .xh-founder-preview-photo {
    width: min(100%, 320px);
    max-width: none;
  }

  .xh-home-page .xh-founder-preview-copy h2 {
    font-size: clamp(38px, 10.8vw, 48px) !important;
    letter-spacing: -1.9px !important;
  }

  .xh-home-page .xh-founder-preview-lead {
    font-size: 21px;
  }

  .xh-home-page .xh-founder-preview-question {
    margin: 27px 0 24px;
    padding: 21px 20px 22px;
  }

  .xh-home-page .xh-founder-preview-question p {
    font-size: 27px;
  }
}

/* ========================================================================== 
   XTribe V59.13 — Editorial Journal / authority section
   Final authoritative homepage Journal layer.
   ========================================================================== */

.xh-home-page .xh-journal-editorial {
  position: relative;
  overflow: hidden;
  padding: clamp(76px, 7vw, 104px) 0;
  background: #E3ECE5;
  border-top: 1px solid rgba(10,52,52,.07);
  border-bottom: 1px solid rgba(10,52,52,.07);
}

.xh-home-page .xh-journal-editorial::before {
  content: "";
  position: absolute;
  width: 380px;
  height: 380px;
  right: -175px;
  top: -205px;
  border-radius: 50%;
  background: rgba(228,125,107,.11);
  pointer-events: none;
}

.xh-home-page .xh-journal-editorial .xh-container {
  position: relative;
  z-index: 1;
}

/* Heading --------------------------------------------------------------- */

.xh-home-page .xh-journal-editorial-head {
  display: grid;
  grid-template-columns: minmax(0,1.08fr) minmax(320px,.92fr);
  gap: clamp(38px, 6vw, 84px);
  align-items: end;
  padding-bottom: 30px;
  border-bottom: 1px solid rgba(10,52,52,.13);
}

.xh-home-page .xh-journal-editorial-title h2 {
  max-width: 720px;
  margin: 10px 0 0;
  color: var(--xh-ink);
  font-family: var(--xh-serif);
  font-size: var(--xh-h2-size, clamp(38px,4vw,52px));
  font-weight: 500;
  line-height: 1.01;
  letter-spacing: -2px;
  text-wrap: balance;
}

.xh-home-page .xh-journal-editorial-title h2 span {
  color: var(--xh-coral);
}

.xh-home-page .xh-journal-editorial-intro {
  max-width: 580px;
}

.xh-home-page .xh-journal-editorial-intro p {
  margin: 0 0 18px;
  color: rgba(10,52,52,.72);
  font-size: 15px;
  line-height: 1.75;
}

/* Topic tags ------------------------------------------------------------ */

.xh-home-page .xh-journal-editorial .xh-journal-topics {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 20px 0 28px;
  padding: 0;
  list-style: none;
}

.xh-home-page .xh-journal-editorial .xh-journal-topics li {
  padding: 7px 11px;
  border: 1px solid rgba(10,52,52,.13);
  border-radius: 999px;
  background: rgba(255,253,249,.58);
  color: rgba(10,52,52,.76);
  font-size: 9.5px;
  font-weight: 800;
  line-height: 1.35;
}

/* Editorial layout ------------------------------------------------------ */

.xh-home-page .xh-journal-editorial-grid {
  display: grid;
  grid-template-columns: minmax(0,1.12fr) minmax(360px,.88fr);
  gap: 20px;
  align-items: stretch;
}

/* Featured article ------------------------------------------------------ */

.xh-home-page .xh-journal-featured {
  min-width: 0;
  display: grid;
  grid-template-rows: auto 1fr;
  overflow: hidden;
  border: 1px solid rgba(10,52,52,.11);
  border-radius: 24px;
  background: #FFFDF9;
  box-shadow: 0 20px 52px rgba(10,52,52,.07);
}

.xh-home-page .xh-journal-featured-image {
  position: relative;
  display: block;
  overflow: hidden;
  aspect-ratio: 16 / 9;
  background:
    radial-gradient(circle at 75% 22%, rgba(228,125,107,.72) 0 12%, transparent 13%),
    linear-gradient(145deg,#0A3434,#174E48);
}

.xh-home-page .xh-journal-featured-image img,
.xh-home-page .xh-journal-secondary-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .35s ease;
}

.xh-home-page .xh-journal-featured:hover .xh-journal-featured-image img,
.xh-home-page .xh-journal-secondary:hover .xh-journal-secondary-image img {
  transform: scale(1.025);
}

.xh-home-page .xh-journal-editorial .xh-journal-category {
  position: absolute;
  z-index: 2;
  left: 16px;
  top: 16px;
  display: inline-flex;
  padding: 7px 10px;
  border-radius: 999px;
  background: rgba(255,253,249,.94);
  color: var(--xh-ink);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.xh-home-page .xh-journal-editorial .xh-journal-placeholder {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 20px;
  color: #FFFDF9;
  font-family: var(--xh-serif);
  font-size: 28px;
  text-align: center;
}

.xh-home-page .xh-journal-featured-content {
  display: flex;
  flex-direction: column;
  padding: clamp(24px,2.5vw,34px);
}

.xh-home-page .xh-journal-editorial .xh-journal-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 7px 14px;
  margin-bottom: 12px;
  color: var(--xh-muted);
  font-size: 9.5px;
  font-weight: 750;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.xh-home-page .xh-journal-featured-content h3 {
  max-width: 690px;
  margin: 0 0 13px;
  font-family: var(--xh-serif);
  font-size: clamp(28px,2.65vw,38px);
  font-weight: 500;
  line-height: 1.05;
  letter-spacing: -1.35px;
}

.xh-home-page .xh-journal-featured-content h3 a,
.xh-home-page .xh-journal-secondary-content h3 a {
  color: var(--xh-ink);
}

.xh-home-page .xh-journal-featured-content h3 a:hover,
.xh-home-page .xh-journal-featured-content h3 a:focus-visible,
.xh-home-page .xh-journal-secondary-content h3 a:hover,
.xh-home-page .xh-journal-secondary-content h3 a:focus-visible {
  color: var(--xh-coral);
}

.xh-home-page .xh-journal-featured-content > p {
  max-width: 690px;
  margin: 0 0 22px;
  color: rgba(10,52,52,.7);
  font-size: 13.5px;
  line-height: 1.7;
}

.xh-home-page .xh-journal-featured-content > .xh-text-link {
  margin-top: auto;
}

/* Secondary articles --------------------------------------------------- */

.xh-home-page .xh-journal-secondary-list {
  display: grid;
  grid-template-rows: repeat(2,minmax(0,1fr));
  gap: 20px;
}

.xh-home-page .xh-journal-secondary {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(145px,.42fr) minmax(0,.58fr);
  overflow: hidden;
  border: 1px solid rgba(10,52,52,.11);
  border-radius: 22px;
  background: rgba(255,253,249,.92);
  box-shadow: 0 15px 38px rgba(10,52,52,.055);
}

.xh-home-page .xh-journal-secondary-image {
  position: relative;
  display: block;
  min-height: 100%;
  overflow: hidden;
  background: linear-gradient(145deg,#0A3434,#174E48);
}

.xh-home-page .xh-journal-secondary-content {
  min-width: 0;
  display: flex;
  flex-direction: column;
  padding: 22px;
}

.xh-home-page .xh-journal-secondary-category {
  margin-bottom: 9px;
  color: var(--xh-coral);
  font-size: 8.5px;
  font-weight: 900;
  line-height: 1.35;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.xh-home-page .xh-journal-secondary-content h3 {
  margin: 0 0 11px;
  font-family: var(--xh-serif);
  font-size: clamp(21px,1.7vw,27px);
  font-weight: 500;
  line-height: 1.07;
  letter-spacing: -.8px;
}

.xh-home-page .xh-journal-secondary-link {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  width: max-content;
  margin-top: auto;
  color: var(--xh-coral);
  font-size: 10.5px;
  font-weight: 850;
}

.xh-home-page .xh-journal-editorial-note {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 28px;
  border: 1px solid rgba(10,52,52,.11);
  border-radius: 22px;
  background: rgba(255,253,249,.64);
}

.xh-home-page .xh-journal-editorial-note > span {
  color: var(--xh-coral);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .1em;
}

.xh-home-page .xh-journal-editorial-note h3 {
  margin: 10px 0 10px;
  color: var(--xh-ink);
  font-family: var(--xh-serif);
  font-size: 26px;
  font-weight: 500;
  line-height: 1.07;
}

.xh-home-page .xh-journal-editorial-note p {
  margin: 0;
  color: rgba(10,52,52,.68);
  font-size: 12.5px;
  line-height: 1.65;
}

/* Footer --------------------------------------------------------------- */

.xh-home-page .xh-journal-editorial-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  margin-top: 20px;
  padding: 21px 24px;
  border: 1px solid rgba(10,52,52,.11);
  border-radius: 18px;
  background: rgba(255,253,249,.58);
}

.xh-home-page .xh-journal-editorial-footer p {
  max-width: 760px;
  margin: 0;
  color: rgba(10,52,52,.68);
  font-size: 11.5px;
  line-height: 1.6;
}

.xh-home-page .xh-journal-editorial-footer strong {
  color: var(--xh-ink);
}

.xh-home-page .xh-journal-editorial-footer .xh-button {
  flex: 0 0 auto;
}

/* Empty state ---------------------------------------------------------- */

.xh-home-page .xh-journal-editorial .xh-journal-empty {
  margin-top: 28px;
  padding: clamp(34px,5vw,56px);
  border: 1px solid rgba(10,52,52,.12);
  border-radius: 24px;
  background: rgba(255,253,249,.82);
  text-align: center;
}

.xh-home-page .xh-journal-editorial .xh-journal-empty > span {
  color: var(--xh-coral);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .1em;
}

.xh-home-page .xh-journal-editorial .xh-journal-empty h3 {
  max-width: 680px;
  margin: 10px auto 12px;
  color: var(--xh-ink);
  font-family: var(--xh-serif);
  font-size: clamp(30px,3vw,42px);
  font-weight: 500;
  line-height: 1.07;
}

.xh-home-page .xh-journal-editorial .xh-journal-empty p {
  max-width: 680px;
  margin: 0 auto;
  color: rgba(10,52,52,.68);
  font-size: 13px;
  line-height: 1.7;
}

/* Tablet --------------------------------------------------------------- */

@media (max-width: 980px) {
  .xh-home-page .xh-journal-editorial-head {
    grid-template-columns: 1fr;
    gap: 19px;
    align-items: start;
  }

  .xh-home-page .xh-journal-editorial-intro {
    max-width: 720px;
  }

  .xh-home-page .xh-journal-editorial-grid {
    grid-template-columns: 1fr;
  }

  .xh-home-page .xh-journal-secondary-list {
    grid-template-columns: repeat(2,minmax(0,1fr));
    grid-template-rows: auto;
  }

  .xh-home-page .xh-journal-secondary {
    grid-template-columns: 1fr;
  }

  .xh-home-page .xh-journal-secondary-image {
    min-height: 190px;
    aspect-ratio: 16 / 9;
  }
}

/* Mobile --------------------------------------------------------------- */

@media (max-width: 640px) {
  .xh-home-page .xh-journal-editorial {
    padding: 62px 0 66px;
  }

  .xh-home-page .xh-journal-editorial-title h2 {
    font-size: clamp(34px,9vw,42px);
    letter-spacing: -1.5px;
  }

  .xh-home-page .xh-journal-editorial .xh-journal-topics {
    margin-bottom: 22px;
  }

  .xh-home-page .xh-journal-featured {
    border-radius: 20px;
  }

  .xh-home-page .xh-journal-featured-content {
    padding: 22px;
  }

  .xh-home-page .xh-journal-featured-content h3 {
    font-size: 28px;
  }

  .xh-home-page .xh-journal-secondary-list {
    grid-template-columns: 1fr;
  }

  .xh-home-page .xh-journal-secondary {
    grid-template-columns: 130px minmax(0,1fr);
  }

  .xh-home-page .xh-journal-secondary-image {
    min-height: 100%;
    aspect-ratio: auto;
  }

  .xh-home-page .xh-journal-secondary-content {
    padding: 18px;
  }

  .xh-home-page .xh-journal-secondary-content h3 {
    font-size: 21px;
  }

  .xh-home-page .xh-journal-editorial-footer {
    align-items: flex-start;
    flex-direction: column;
    padding: 20px;
  }

  .xh-home-page .xh-journal-editorial-footer .xh-button {
    width: 100%;
  }
}

@media (max-width: 430px) {
  .xh-home-page .xh-journal-secondary {
    grid-template-columns: 1fr;
  }

  .xh-home-page .xh-journal-secondary-image {
    min-height: 180px;
    aspect-ratio: 16 / 9;
  }
}

/* ==========================================================================
   XTribe V59.14 — Compact FAQ / Before You Join
   Final authoritative homepage FAQ layer.
   ========================================================================== */

.xh-home-page .xh-faq-compact {
  position: relative;
  overflow: hidden;
  padding: clamp(76px, 7vw, 108px) 0;
  background: var(--xh-warm);
  border-top: 1px solid var(--xh-line);
}

.xh-home-page .xh-faq-compact::before {
  content: "";
  position: absolute;
  right: -170px;
  top: -190px;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: rgba(227, 236, 229, .72);
  pointer-events: none;
}

.xh-home-page .xh-faq-compact .xh-container {
  position: relative;
  z-index: 1;
}

.xh-home-page .xh-faq-compact-grid {
  display: grid;
  grid-template-columns: minmax(280px, .72fr) minmax(0, 1.28fr);
  gap: clamp(52px, 7vw, 100px);
  align-items: start;
}

/* Intro ------------------------------------------------------------------ */

.xh-home-page .xh-faq-compact-intro {
  position: sticky;
  top: 118px;
  min-width: 0;
}

.xh-home-page .xh-faq-compact-intro .xh-eyebrow {
  color: var(--xh-coral);
}

.xh-home-page .xh-faq-compact-intro h2 {
  max-width: 540px;
  margin: 12px 0 20px;
  color: var(--xh-ink);
  font-family: var(--xh-serif);
  font-size: clamp(40px, 4.2vw, 58px);
  font-weight: 500;
  line-height: 1.01;
  letter-spacing: -2px;
  text-wrap: balance;
}

.xh-home-page .xh-faq-compact-intro h2 span {
  display: block;
  color: var(--xh-coral);
}

.xh-home-page .xh-faq-compact-intro > p {
  max-width: 500px;
  margin: 0;
  color: rgba(10, 52, 52, .70);
  font-size: 15px;
  line-height: 1.75;
}

.xh-home-page .xh-faq-assurance {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 26px 0 25px;
}

.xh-home-page .xh-faq-assurance span {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 11px;
  border: 1px solid rgba(10, 52, 52, .12);
  border-radius: 999px;
  background: rgba(255, 253, 249, .72);
  color: rgba(10, 52, 52, .72);
  font-size: 10px;
  font-weight: 800;
  line-height: 1.3;
}

/* Accordion -------------------------------------------------------------- */

.xh-home-page .xh-faq-compact-list {
  min-width: 0;
  border-top: 1px solid rgba(10, 52, 52, .15);
}

.xh-home-page .xh-faq-item {
  margin: 0;
  border-bottom: 1px solid rgba(10, 52, 52, .15);
}

.xh-home-page .xh-faq-item summary {
  list-style: none;
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) 34px;
  gap: 14px;
  align-items: center;
  min-height: 78px;
  padding: 15px 0;
  cursor: pointer;
  color: var(--xh-ink);
}

.xh-home-page .xh-faq-item summary::-webkit-details-marker {
  display: none;
}

.xh-home-page .xh-faq-item summary::marker {
  content: "";
}

.xh-home-page .xh-faq-number {
  color: var(--xh-coral);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .08em;
}

.xh-home-page .xh-faq-item summary strong {
  color: var(--xh-ink);
  font-family: var(--xh-serif);
  font-size: clamp(20px, 1.7vw, 25px);
  font-weight: 500;
  line-height: 1.16;
  letter-spacing: -.45px;
}

.xh-home-page .xh-faq-toggle {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border: 1px solid rgba(10, 52, 52, .14);
  border-radius: 50%;
  color: var(--xh-ink);
  background: rgba(255, 253, 249, .65);
  font-size: 18px;
  font-weight: 400;
  transition: transform .2s ease, background .2s ease, color .2s ease;
}

.xh-home-page .xh-faq-item[open] .xh-faq-toggle {
  transform: rotate(45deg);
  background: var(--xh-coral);
  border-color: var(--xh-coral);
  color: #fff;
}

.xh-home-page .xh-faq-item summary:hover strong,
.xh-home-page .xh-faq-item summary:focus-visible strong {
  color: var(--xh-coral);
}

.xh-home-page .xh-faq-item summary:focus-visible {
  outline: 2px solid rgba(228, 125, 107, .5);
  outline-offset: 5px;
  border-radius: 4px;
}

.xh-home-page .xh-faq-answer {
  max-width: 740px;
  padding: 0 48px 23px 54px;
}

.xh-home-page .xh-faq-answer p {
  margin: 0;
  color: rgba(10, 52, 52, .68);
  font-size: 14px;
  line-height: 1.72;
}

.xh-home-page .xh-faq-empty {
  padding: 28px 0;
  color: var(--xh-muted);
  line-height: 1.7;
}

/* Bottom reassurance ----------------------------------------------------- */

.xh-home-page .xh-faq-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 34px;
  margin-top: clamp(34px, 4vw, 52px);
  padding: 24px 27px;
  border: 1px solid rgba(10, 52, 52, .12);
  border-radius: 20px;
  background: rgba(255, 253, 249, .76);
}

.xh-home-page .xh-faq-bottom p {
  max-width: 760px;
  margin: 0;
  color: rgba(10, 52, 52, .68);
  font-size: 13px;
  line-height: 1.65;
}

.xh-home-page .xh-faq-bottom strong {
  color: var(--xh-ink);
}

.xh-home-page .xh-faq-bottom .xh-button {
  flex: 0 0 auto;
}

/* Tablet ---------------------------------------------------------------- */

@media (max-width: 960px) {
  .xh-home-page .xh-faq-compact-grid {
    grid-template-columns: 1fr;
    gap: 36px;
  }

  .xh-home-page .xh-faq-compact-intro {
    position: static;
    max-width: 760px;
  }

  .xh-home-page .xh-faq-compact-intro h2 {
    max-width: 680px;
  }

  .xh-home-page .xh-faq-compact-intro > p {
    max-width: 650px;
  }
}

/* Mobile ---------------------------------------------------------------- */

@media (max-width: 640px) {
  .xh-home-page .xh-faq-compact {
    padding: 62px 0 66px;
  }

  .xh-home-page .xh-faq-compact::before {
    width: 280px;
    height: 280px;
    right: -150px;
    top: -120px;
  }

  .xh-home-page .xh-faq-compact-intro h2 {
    font-size: clamp(36px, 10vw, 45px);
    letter-spacing: -1.6px;
  }

  .xh-home-page .xh-faq-assurance {
    margin-bottom: 19px;
  }

  .xh-home-page .xh-faq-item summary {
    grid-template-columns: 30px minmax(0, 1fr) 30px;
    gap: 10px;
    min-height: 70px;
    padding: 13px 0;
  }

  .xh-home-page .xh-faq-item summary strong {
    font-size: 20px;
  }

  .xh-home-page .xh-faq-toggle {
    width: 29px;
    height: 29px;
  }

  .xh-home-page .xh-faq-answer {
    padding: 0 0 21px 40px;
  }

  .xh-home-page .xh-faq-answer p {
    font-size: 13px;
  }

  .xh-home-page .xh-faq-bottom {
    align-items: flex-start;
    flex-direction: column;
    padding: 20px;
  }

  .xh-home-page .xh-faq-bottom .xh-button {
    width: 100%;
  }
}


/* ========================================================================== 
   XTribe V59.15 — Final homepage CTA
   One decision. One primary action. Minimal repetition.
   ========================================================================== */

.xh-home-page .xh-final-room-cta {
  position: relative;
  padding: clamp(68px, 7vw, 104px) 0 clamp(72px, 7.5vw, 112px);
  background: var(--xh-cream);
}

.xh-home-page .xh-final-room-shell {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, .92fr);
  min-height: 500px;
  border-radius: clamp(26px, 3vw, 38px);
  background: var(--xh-green);
  box-shadow: 0 28px 72px rgba(10, 52, 52, .15);
}

.xh-home-page .xh-final-room-shell::before {
  content: "";
  position: absolute;
  left: -120px;
  bottom: -180px;
  width: 360px;
  height: 360px;
  border: 1px solid rgba(255, 255, 255, .07);
  border-radius: 50%;
  pointer-events: none;
}

.xh-home-page .xh-final-room-copy {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  padding: clamp(42px, 5vw, 72px);
}

.xh-home-page .xh-final-room-copy .xh-eyebrow {
  color: var(--xh-coral);
}

.xh-home-page .xh-final-room-copy h2 {
  max-width: 720px;
  margin: 13px 0 20px;
  color: var(--xh-cream);
  font-family: var(--xh-serif);
  font-size: clamp(42px, 4.7vw, 64px) !important;
  font-weight: 500;
  line-height: 1 !important;
  letter-spacing: -2.5px !important;
  text-wrap: balance;
}

.xh-home-page .xh-final-room-copy h2 span {
  display: block;
  color: var(--xh-coral);
}

.xh-home-page .xh-final-room-lead {
  max-width: 660px;
  margin: 0;
  color: rgba(250, 247, 241, .78);
  font-size: clamp(15px, 1.2vw, 17px);
  line-height: 1.75;
}

.xh-home-page .xh-final-room-actions {
  margin-top: 27px;
}

.xh-home-page .xh-final-room-actions .xh-button {
  width: max-content;
  min-width: 230px;
}

.xh-home-page .xh-final-room-assurances {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 11px 20px;
  margin-top: 29px;
  padding-top: 23px;
  border-top: 1px solid rgba(255, 255, 255, .13);
}

.xh-home-page .xh-final-room-assurances span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: rgba(250, 247, 241, .67);
  font-size: 10.5px;
  font-weight: 700;
  line-height: 1.45;
}

.xh-home-page .xh-final-room-assurances i {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
  border: 1px solid rgba(228, 125, 107, .44);
  border-radius: 50%;
  color: var(--xh-coral);
  font-style: normal;
  font-size: 10px;
}

.xh-home-page .xh-final-room-visual {
  position: relative;
  min-width: 0;
  min-height: 500px;
  overflow: hidden;
}

.xh-home-page .xh-final-room-visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    90deg,
    var(--xh-green) 0%,
    rgba(10, 52, 52, .48) 16%,
    rgba(10, 52, 52, .04) 52%,
    rgba(10, 52, 52, .12) 100%
  );
  pointer-events: none;
}

.xh-home-page .xh-final-room-visual img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 500px;
  object-fit: cover;
  object-position: center;
}

.xh-home-page .xh-final-room-image-note {
  position: absolute;
  z-index: 2;
  right: 26px;
  bottom: 26px;
  width: min(300px, calc(100% - 52px));
  padding: 18px 20px;
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 17px;
  background: rgba(10, 52, 52, .80);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}

.xh-home-page .xh-final-room-image-note span,
.xh-home-page .xh-final-room-image-note strong {
  display: block;
}

.xh-home-page .xh-final-room-image-note span {
  margin-bottom: 7px;
  color: var(--xh-coral);
  font-size: 8.5px;
  font-weight: 900;
  letter-spacing: .13em;
}

.xh-home-page .xh-final-room-image-note strong {
  color: var(--xh-cream);
  font-family: var(--xh-serif);
  font-size: 18px;
  font-weight: 500;
  line-height: 1.22;
}

@media (max-width: 980px) {
  .xh-home-page .xh-final-room-shell {
    grid-template-columns: 1fr;
  }

  .xh-home-page .xh-final-room-copy {
    padding-bottom: 46px;
  }

  .xh-home-page .xh-final-room-visual,
  .xh-home-page .xh-final-room-visual img {
    min-height: 350px;
  }

  .xh-home-page .xh-final-room-visual::after {
    background: linear-gradient(
      180deg,
      var(--xh-green) 0%,
      rgba(10, 52, 52, .16) 22%,
      rgba(10, 52, 52, .06) 100%
    );
  }
}

@media (max-width: 640px) {
  .xh-home-page .xh-final-room-cta {
    padding: 58px 0 68px;
  }

  .xh-home-page .xh-final-room-shell {
    min-height: 0;
    border-radius: 24px;
  }

  .xh-home-page .xh-final-room-copy {
    padding: 32px 22px 34px;
  }

  .xh-home-page .xh-final-room-copy h2 {
    margin-top: 11px;
    font-size: clamp(38px, 11vw, 48px) !important;
    letter-spacing: -1.9px !important;
  }

  .xh-home-page .xh-final-room-actions .xh-button {
    width: 100%;
    min-width: 0;
  }

  .xh-home-page .xh-final-room-assurances {
    display: grid;
    gap: 10px;
  }

  .xh-home-page .xh-final-room-visual,
  .xh-home-page .xh-final-room-visual img {
    min-height: 270px;
  }

  .xh-home-page .xh-final-room-image-note {
    right: 16px;
    bottom: 16px;
    width: calc(100% - 32px);
    padding: 15px 17px;
  }

  .xh-home-page .xh-final-room-image-note strong {
    font-size: 17px;
  }
}

/* ========================================================================== 
   XTribe V59.16 — Authoritative homepage hero 65/35 rebalance
   Restores the approved desktop hierarchy after later stylesheet layers
   reintroduced the older image-heavy hero proportions.
   ========================================================================== */

@media (min-width: 901px) {
  .xh-home-page .xh-hero-grid {
    width: min(1360px, calc(100% - 64px));
    grid-template-columns: minmax(0, 65fr) minmax(0, 35fr) !important;
    gap: clamp(44px, 4.25vw, 64px) !important;
    align-items: center;
  }

  .xh-home-page .xh-hero-copy {
    width: 100%;
    max-width: none !important;
    min-width: 0;
    padding: 0;
  }

  .xh-home-page .xh-hero h1 {
    max-width: 790px;
  }

  .xh-home-page .xh-hero-lead {
    max-width: 740px !important;
  }

  .xh-home-page .xh-solo-note {
    max-width: 650px !important;
  }

  .xh-home-page .xh-hero-visual {
    width: 100%;
    max-width: none !important;
    min-width: 0;
    justify-self: stretch;
  }

  .xh-home-page .xh-hero-visual > img {
    width: 100%;
    height: auto;
    aspect-ratio: 1.32 / 1;
    object-fit: cover;
  }
}

@media (min-width: 901px) and (max-width: 1100px) {
  .xh-home-page .xh-hero-grid {
    width: min(100% - 40px, 1360px);
    grid-template-columns: minmax(0, 65fr) minmax(0, 35fr) !important;
    gap: 34px !important;
  }

  .xh-home-page .xh-hero h1 {
    max-width: 650px;
  }

  .xh-home-page .xh-hero-lead {
    max-width: 620px !important;
  }
}

@media (max-width: 900px) {
  .xh-home-page .xh-hero-grid {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }

  .xh-home-page .xh-hero-copy,
  .xh-home-page .xh-hero-visual {
    width: 100%;
    max-width: 760px !important;
  }

  .xh-home-page .xh-hero-lead {
    max-width: 680px !important;
  }
}



/* ============================================================
   XTRIBE OUR STORY — FOUNDATION
   V59.17 CSS CONSOLIDATION

   Canonical shared page rules live here. Section-specific rules
   follow below. Do not duplicate these rules inline in the view.
   ============================================================ */

.xh-our-story-page {
  background: #FAF7F1;
  color: #0A3434;
}

.xh-our-story-page .xs-shell {
  width: min(1180px, calc(100% - 44px));
  margin-inline: auto;
}

.xh-our-story-page .xs-section {
  padding: clamp(72px, 7vw, 112px) 0;
}

.xh-our-story-page .xs-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: #E47D6B;
  font-size: 10px;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.xh-our-story-page .xs-eyebrow::before {
  content: "";
  width: 25px;
  height: 1px;
  flex: 0 0 25px;
  background: currentColor;
}

.xh-our-story-page .xs-sage {
  background: #E3ECE5;
}

.xh-our-story-page .xs-dark {
  background: #0A3434;
  color: #FAF7F1;
}

.xh-our-story-page img {
  max-width: 100%;
}

@media (max-width: 790px) {
  .xh-our-story-page .xs-shell {
    width: min(100% - 28px, 1180px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .xh-our-story-page *,
  .xh-our-story-page *::before,
  .xh-our-story-page *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}


/* ==============================================================
   XTRIBE OUR STORY — HERO FINAL
   Matches homepage H1 hierarchy
   ============================================================== */

.xh-our-story-page .xs-hero {
  position: relative;
  overflow: hidden;
  padding: clamp(76px, 7vw, 106px) 0;
  background: #0A3434;
}


/* Wider hero only */
.xh-our-story-page .xs-hero .xs-shell {
  width: min(1360px, calc(100% - 64px));
}


/* 58 / 42 composition */
.xh-our-story-page .xs-hero-grid {
  position: relative;
  z-index: 1;

  display: grid;
  grid-template-columns:
    minmax(0, 58fr)
    minmax(0, 42fr);

  gap: clamp(54px, 6vw, 88px);
  align-items: center;
}


/* Copy */
.xh-our-story-page .xs-hero-copy {
  min-width: 0;
  max-width: 790px;
}


/* Eyebrow */
.xh-our-story-page .xs-hero .xs-eyebrow {
  margin-bottom: 0;
}


/* ==============================================================
   H1 — EXACT HOMEPAGE DESKTOP SCALE
   Do NOT reference .xh-home-page variables here.
   ============================================================== */

.xh-our-story-page
.xs-hero
#xs-story-title {
  max-width: 790px;

  margin: 18px 0 24px;

  color: #FAF7F1;

  font-family: var(--xh-serif);

  font-size: clamp(52px, 4.9vw, 72px) !important;
  font-weight: 500;

  line-height: .98 !important;

  letter-spacing: -3.2px !important;

  text-wrap: balance;
  overflow-wrap: normal;
  word-break: normal;
}


.xh-our-story-page
.xs-hero
#xs-story-title span {
  display: block;
  color: #E47D6B;
}


/* Lead */
.xh-our-story-page .xs-hero-lead {
  max-width: 700px;

  margin: 0;

  color: rgba(250,247,241,.76);

  font-size: clamp(16px, 1.15vw, 18px);
  line-height: 1.72;
}


/* Supporting belief */
.xh-our-story-page .xs-hero-belief {
  max-width: 680px;

  margin: 20px 0 0;

  color: rgba(250,247,241,.68);

  font-size: 14px;
  line-height: 1.7;
}


.xh-our-story-page .xs-hero-belief strong {
  color: #FAF7F1;
  font-weight: 700;
}


/* ==============================================================
   FOUNDER
   ============================================================== */

.xh-our-story-page .xs-signature {
  display: flex;
  align-items: center;

  gap: 14px;

  max-width: 680px;

  margin-top: 32px;
  padding-top: 24px;

  border-top:
    1px solid rgba(250,247,241,.15);
}


.xh-our-story-page .xs-mark {
  display: grid;
  place-items: center;

  width: 46px;
  height: 46px;

  flex: 0 0 46px;

  border-radius: 50%;

  background: #E47D6B;
  color: #FAF7F1;

  font-family: var(--xh-serif);
  font-size: 20px;
}


.xh-our-story-page .xs-signature strong {
  display: block;

  margin-bottom: 3px;

  color: #FAF7F1;

  font-size: 13px;
}


.xh-our-story-page .xs-signature small {
  color: rgba(250,247,241,.58);

  font-size: 11px;
}


/* ==============================================================
   VISUAL
   ============================================================== */

.xh-our-story-page .xs-visual {
  position: relative;

  width: 100%;
  min-width: 0;

  min-height: 520px;
}


/* Photo */
.xh-our-story-page .xs-image {
  position: absolute;

  top: 0;
  right: 0;
  bottom: 52px;
  left: 38px;

  overflow: hidden;

  border:
    1px solid rgba(250,247,241,.16);

  border-radius: 26px;

  background: #071D1B;

  box-shadow:
    0 28px 75px rgba(0,0,0,.22);
}


.xh-our-story-page .xs-image img {
  display: block;

  width: 100%;
  height: 100%;

  object-fit: cover;

  object-position: center top;
}


/* ==============================================================
   STORY TEASER
   ============================================================== */

.xh-our-story-page .xs-quote {
  position: absolute;

  left: 0;
  right: 50px;
  bottom: 0;

  padding: 21px 24px 23px;

  border-radius: 18px;

  background: #FAF7F1;
  color: #0A3434;

  box-shadow:
    0 22px 55px rgba(0,0,0,.18);
}


.xh-our-story-page .xs-quote > span {
  display: block;

  color: #E47D6B;

  font-size: 9px;
  font-weight: 900;

  line-height: 1;

  letter-spacing: .12em;

  text-transform: uppercase;
}


.xh-our-story-page
.xs-quote blockquote {
  margin: 10px 0 0;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size: clamp(24px, 2vw, 30px);

  font-weight: 500;

  line-height: 1.08;

  letter-spacing: -1px;
}


/* ==============================================================
   DECORATION
   ============================================================== */

.xh-our-story-page .xs-hero::before {
  content: "";

  position: absolute;

  width: 500px;
  height: 500px;

  top: -315px;
  right: -140px;

  border:
    1px solid rgba(250,247,241,.13);

  border-radius: 50%;

  pointer-events: none;
}


.xh-our-story-page .xs-hero::after {
  content: "";

  position: absolute;

  width: 320px;
  height: 320px;

  left: -190px;
  bottom: -230px;

  border-radius: 50%;

  background:
    rgba(228,125,107,.13);

  pointer-events: none;
}


/* ==============================================================
   TABLET
   ============================================================== */

@media (max-width: 1040px) {

  .xh-our-story-page
  .xs-hero .xs-shell {
    width: min(
      100% - 44px,
      1180px
    );
  }


  .xh-our-story-page
  .xs-hero-grid {
    grid-template-columns: 1fr;

    gap: 46px;
  }


  .xh-our-story-page
  .xs-hero-copy {
    max-width: 820px;
  }


  .xh-our-story-page
  .xs-visual {
    width: min(100%, 720px);

    min-height: 520px;
  }

}


/* ==============================================================
   MOBILE — SAME H1 HIERARCHY AS HOMEPAGE MOBILE
   ============================================================== */

@media (max-width: 680px) {

  .xh-our-story-page .xs-hero {
    padding: 58px 0 62px;
  }


  .xh-our-story-page
  .xs-hero .xs-shell {
    width: min(
      100% - 28px,
      1180px
    );
  }


  .xh-our-story-page
  .xs-hero
  #xs-story-title {
    font-size:
      clamp(41px, 11.5vw, 50px)
      !important;

    line-height: 1 !important;

    letter-spacing:
      -2.25px !important;
  }


  .xh-our-story-page
  .xs-hero-lead {
    font-size: 15px;
  }


  .xh-our-story-page
  .xs-hero-belief {
    font-size: 13px;
  }


  .xh-our-story-page
  .xs-signature {
    margin-top: 27px;
  }


  .xh-our-story-page
  .xs-visual {
    min-height: 440px;
  }


  .xh-our-story-page
  .xs-image {
    left: 18px;
    bottom: 72px;

    border-radius: 21px;
  }


  .xh-our-story-page
  .xs-quote {
    right: 12px;

    padding: 18px 19px;
  }


  .xh-our-story-page
  .xs-quote blockquote {
    font-size:
      clamp(22px, 7vw, 28px);
  }

}


/* Small mobile */
@media (max-width: 420px) {

  .xh-our-story-page
  .xs-hero
  #xs-story-title {
    font-size:
      clamp(39px, 11vw, 46px)
      !important;

    letter-spacing:
      -2px !important;
  }

}




/* ==============================================================
   OUR STORY — CORAL H2 EMPHASIS
   ============================================================== */

/* The Realisation */
.xh-our-story-page
.xs-origin
#xs-origin-heading span {
  display: block;
  color: #E47D6B !important;
}


/* The Problem */
.xh-our-story-page
.xs-sage
#xs-problem-title span {
  display: block;
  color: #E47D6B !important;
}










/* ============================================================
   OUR STORY
   WHAT XTRIBE BELIEVES
   FINAL LAYOUT
   ============================================================ */

.xh-our-story-page .xs-beliefs-section {
  position: relative;
  overflow: hidden;
  background: #FAF7F1;
}


/* ============================================================
   HEADING
   ============================================================ */

.xh-our-story-page .xs-beliefs-heading {
  margin-bottom: clamp(48px, 5vw, 68px);
}

.xh-our-story-page .xs-beliefs-heading-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr);
  gap: clamp(50px, 7vw, 100px);
  align-items: end;
  margin-top: 16px;
}


/* H2 */

.xh-our-story-page
.xs-beliefs-heading
#xs-beliefs-title {
  max-width: 620px;
  margin: 0;
  color: #0A3434;

  font-family: var(--xh-serif);
  font-size: clamp(46px, 4.25vw, 64px);
  font-weight: 500;
  line-height: 1;
  letter-spacing: -2.8px;

  text-wrap: balance;
}

.xh-our-story-page
.xs-beliefs-heading
#xs-beliefs-title span {
  display: block;
  color: #E47D6B !important;
}


/* Intro copy */

.xh-our-story-page .xs-beliefs-intro-copy {
  max-width: 540px;
  padding-bottom: 3px;
}

.xh-our-story-page .xs-beliefs-intro-copy p {
  margin: 0;
  color: rgba(10, 52, 52, .70);
  font-size: 15px;
  line-height: 1.75;
}

.xh-our-story-page
.xs-beliefs-intro-copy p + p {
  margin-top: 10px;
}

.xh-our-story-page
.xs-beliefs-intro-copy strong {
  color: #0A3434;
  font-weight: 800;
}


/* ============================================================
   MAIN LAYOUT
   40% VISUAL / 60% BELIEFS
   ============================================================ */

.xh-our-story-page .xs-beliefs-layout {
  display: grid !important;
  grid-template-columns:
    minmax(320px, 40fr)
    minmax(0, 60fr) !important;

  gap: clamp(46px, 6vw, 82px);
  align-items: center;
}


/* ============================================================
   VISUAL
   ============================================================ */

.xh-our-story-page .xs-beliefs-visual {
  position: relative;
  min-width: 0;
  width: 100%;
}


/*
 * Keep the illustration contained.
 * It must NEVER behave like a hero image.
 */

.xh-our-story-page .xs-beliefs-art {
  position: relative;

  display: flex;
  align-items: flex-end;
  justify-content: center;

  width: 100%;
  max-width: 470px;

  min-height: 390px;

  margin: 0 auto;

  overflow: hidden;

  border-radius: 180px 180px 28px 28px;
}


/* Sage backdrop */

.xh-our-story-page .xs-beliefs-art-bg {
  position: absolute;
  z-index: 0;

  width: 92%;
  height: 84%;

  left: 4%;
  bottom: 0;

  border-radius: 180px 180px 24px 24px;

  background: #E3ECE5;
}


/* Coral detail */

.xh-our-story-page
.xs-beliefs-art::before {
  content: "";

  position: absolute;
  z-index: 1;

  width: 210px;
  height: 210px;

  top: 11px;
  right: -75px;

  border: 1px solid rgba(228, 125, 107, .42);
  border-radius: 50%;
}


/* Small cream circle */

.xh-our-story-page
.xs-beliefs-art::after {
  content: "";

  position: absolute;
  z-index: 1;

  width: 96px;
  height: 96px;

  left: -18px;
  bottom: 74px;

  border-radius: 50%;

  background: rgba(250, 247, 241, .78);
}


/* IMPORTANT — contain the image */

.xh-our-story-page
.xs-beliefs-art img {
  position: relative !important;
  z-index: 2 !important;

  display: block !important;

  width: 112% !important;
  max-width: 520px !important;

  height: auto !important;

  margin: 0 -6% -2px !important;

  object-fit: contain !important;

  transform: none !important;
}


/* Caption */

.xh-our-story-page .xs-beliefs-caption {
  max-width: 390px;

  margin: 20px auto 0;

  color: rgba(10, 52, 52, .65);

  font-size: 13px;
  line-height: 1.65;

  text-align: center;
}

.xh-our-story-page
.xs-beliefs-caption strong {
  display: block;

  margin-top: 2px;

  color: #0A3434;

  font-family: var(--xh-serif);
  font-size: 20px;
  font-weight: 500;
  line-height: 1.15;

  letter-spacing: -.5px;
}


/* ============================================================
   BELIEF GRID
   ============================================================ */

.xh-our-story-page .xs-beliefs-grid {
  display: grid !important;

  grid-template-columns:
    repeat(2, minmax(0, 1fr)) !important;

  gap: 16px !important;

  min-width: 0;
}


/* ============================================================
   BELIEF CARD
   ============================================================ */

.xh-our-story-page
.xs-beliefs-grid
.xs-belief {
  position: relative;

  min-width: 0;
  min-height: 230px;

  padding: 27px 27px 29px;

  border: 1px solid rgba(10, 52, 52, .10);
  border-radius: 18px;

  background: rgba(255, 255, 255, .52);

  box-shadow: none;

  transition:
    transform .25s ease,
    border-color .25s ease,
    box-shadow .25s ease;
}


/* very subtle hover */

.xh-our-story-page
.xs-beliefs-grid
.xs-belief:hover {
  transform: translateY(-3px);

  border-color: rgba(228, 125, 107, .30);

  box-shadow:
    0 16px 36px rgba(10, 52, 52, .055);
}


/* Number */

.xh-our-story-page
.xs-belief-number {
  display: grid;

  width: 38px;
  height: 38px;

  place-items: center;

  margin-bottom: 23px;

  border-radius: 50%;

  background: #E3ECE5;
  color: #E47D6B;

  font-size: 11px;
  font-weight: 900;
  line-height: 1;
}


/* Card heading */

.xh-our-story-page
.xs-beliefs-grid
.xs-belief h3 {
  max-width: 280px;

  margin: 0 0 12px;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size: clamp(22px, 1.65vw, 27px);

  font-weight: 500;

  line-height: 1.06;

  letter-spacing: -.8px;
}


/* Card paragraph */

.xh-our-story-page
.xs-beliefs-grid
.xs-belief p {
  max-width: 310px;

  margin: 0;

  color: rgba(10, 52, 52, .64);

  font-size: 13px;

  line-height: 1.68;
}


/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 1050px) {

  .xh-our-story-page
  .xs-beliefs-heading-grid {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .xh-our-story-page
  .xs-beliefs-intro-copy {
    max-width: 680px;
  }


  .xh-our-story-page
  .xs-beliefs-layout {
    grid-template-columns:
      minmax(280px, .78fr)
      minmax(0, 1.22fr) !important;

    gap: 38px;
  }


  .xh-our-story-page
  .xs-beliefs-art {
    min-height: 350px;
  }


  .xh-our-story-page
  .xs-beliefs-grid
  .xs-belief {
    min-height: 220px;
    padding: 24px;
  }

}


/* ============================================================
   SMALL TABLET
   ============================================================ */

@media (max-width: 820px) {

  .xh-our-story-page
  .xs-beliefs-layout {
    grid-template-columns: 1fr !important;
    gap: 44px;
  }


  .xh-our-story-page
  .xs-beliefs-visual {
    max-width: 520px;
    margin: 0 auto;
  }


  .xh-our-story-page
  .xs-beliefs-art {
    max-width: 440px;
  }


  .xh-our-story-page
  .xs-beliefs-grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr)) !important;
  }

}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 600px) {

  .xh-our-story-page
  .xs-beliefs-heading
  #xs-beliefs-title {
    font-size: clamp(39px, 10.5vw, 48px);
    line-height: 1;
    letter-spacing: -2px;
  }


  .xh-our-story-page
  .xs-beliefs-intro-copy p {
    font-size: 14px;
  }


  .xh-our-story-page
  .xs-beliefs-art {
    min-height: 310px;
    max-width: 390px;
  }


  .xh-our-story-page
  .xs-beliefs-art img {
    width: 108% !important;
  }


  .xh-our-story-page
  .xs-beliefs-grid {
    grid-template-columns: 1fr !important;
  }


  .xh-our-story-page
  .xs-beliefs-grid
  .xs-belief {
    min-height: 0;
  }

}









/* ============================================================
   OUR STORY — THE REALISATION / ORIGIN
   ============================================================ */

.xh-our-story-page .xs-origin {
  position: relative;
  overflow: hidden;
  background: #FAF7F1;
}


/* ============================================================
   TOP STORY LAYOUT
   ============================================================ */

.xh-our-story-page .xs-origin-intro {
  display: grid;
  grid-template-columns: minmax(0, 54fr) minmax(0, 46fr);
  gap: clamp(54px, 7vw, 94px);
  align-items: center;
}


/* ============================================================
   COPY
   ============================================================ */

.xh-our-story-page .xs-origin-copy {
  max-width: 650px;
}


.xh-our-story-page
.xs-origin-copy
#xs-origin-heading {
  max-width: 640px;

  margin: 17px 0 25px;

  color: #0A3434;

  font-family: var(--xh-serif);
  font-size: clamp(46px, 4.25vw, 64px);
  font-weight: 500;

  line-height: 1;
  letter-spacing: -2.8px;

  text-wrap: balance;
}


.xh-our-story-page
.xs-origin-copy
#xs-origin-heading span {
  display: block;

  color: #E47D6B !important;
}


.xh-our-story-page .xs-origin-lead {
  max-width: 610px;

  margin: 0;

  color: rgba(10, 52, 52, .70);

  font-size: 16px;
  line-height: 1.78;
}


.xh-our-story-page .xs-origin-question {
  max-width: 600px;

  margin: 20px 0 0;

  color: rgba(10, 52, 52, .69);

  font-size: 15px;
  line-height: 1.72;
}


.xh-our-story-page
.xs-origin-question strong {
  color: #0A3434;
  font-weight: 800;
}


/* ============================================================
   IMAGE
   ============================================================ */

.xh-our-story-page .xs-origin-visual {
  position: relative;

  width: 100%;
  min-width: 0;

  padding: 22px 18px 48px 0;
}


.xh-our-story-page .xs-origin-art {
  position: relative;

  display: flex;
  align-items: flex-end;
  justify-content: center;

  width: 100%;
  min-height: 430px;

  overflow: hidden;

  border-radius: 26px;

  background:
    linear-gradient(
      145deg,
      #E3ECE5 0%,
      #FAF7F1 72%
    );
}


/* subtle frame */

.xh-our-story-page
.xs-origin-art::before {
  content: "";

  position: absolute;

  width: 250px;
  height: 250px;

  top: -90px;
  right: -70px;

  border: 1px solid rgba(228, 125, 107, .34);
  border-radius: 50%;

  pointer-events: none;
}


.xh-our-story-page
.xs-origin-art::after {
  content: "";

  position: absolute;

  width: 170px;
  height: 170px;

  bottom: -85px;
  left: -60px;

  border-radius: 50%;

  background: rgba(228, 125, 107, .10);

  pointer-events: none;
}


/* Keep image restrained */

.xh-our-story-page
.xs-origin-art img {
  position: relative;
  z-index: 2;

  display: block;

  width: 108%;
  max-width: 650px;

  height: auto;

  margin: auto -4% 0;

  object-fit: contain;
}


/* ============================================================
   IMAGE NOTE
   ============================================================ */

.xh-our-story-page .xs-origin-image-note {
  position: absolute;
  z-index: 5;

  left: 0;
  bottom: 0;

  max-width: 325px;

  padding: 18px 22px 20px;

  border: 1px solid rgba(10, 52, 52, .08);
  border-radius: 17px;

  background: #FAF7F1;

  box-shadow:
    0 18px 48px rgba(10, 52, 52, .11);
}


.xh-our-story-page
.xs-origin-image-note > span {
  display: block;

  margin-bottom: 8px;

  color: #E47D6B;

  font-size: 9px;
  font-weight: 900;

  line-height: 1;

  letter-spacing: .12em;
}


.xh-our-story-page
.xs-origin-image-note p {
  margin: 0;

  color: rgba(10, 52, 52, .72);

  font-size: 13px;
  line-height: 1.55;
}


.xh-our-story-page
.xs-origin-image-note strong {
  display: block;

  margin-top: 2px;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size: 20px;
  font-weight: 500;

  line-height: 1.12;
  letter-spacing: -.5px;
}


/* ============================================================
   JOURNEY
   ============================================================ */

.xh-our-story-page .xs-origin-journey {
  margin-top: clamp(72px, 8vw, 108px);
  padding-top: clamp(46px, 5vw, 64px);

  border-top: 1px solid rgba(10, 52, 52, .11);
}


.xh-our-story-page
.xs-origin-journey-heading {
  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    minmax(360px, .8fr);

  gap: 50px;

  align-items: end;

  margin-bottom: 30px;
}


.xh-our-story-page
.xs-origin-journey-heading p {
  max-width: 520px;

  margin: 0;

  color: rgba(10, 52, 52, .65);

  font-size: 14px;
  line-height: 1.7;
}


/* ============================================================
   2 × 2 TIMELINE
   ============================================================ */

.xh-our-story-page .xs-origin .xs-timeline {
  display: grid !important;

  grid-template-columns:
    repeat(2, minmax(0, 1fr)) !important;

  gap: 16px;
}


/* ============================================================
   TIMELINE CARD
   ============================================================ */

.xh-our-story-page
.xs-origin
.xs-step {
  display: grid;

  grid-template-columns: 46px minmax(0, 1fr);

  gap: 18px;

  min-width: 0;

  padding: 28px 28px 30px;

  border: 1px solid rgba(10, 52, 52, .10);
  border-radius: 20px;

  background: rgba(255, 255, 255, .52);
}


/* Number */

.xh-our-story-page
.xs-origin
.xs-step-number {
  display: grid;

  width: 40px;
  height: 40px;

  place-items: center;

  border-radius: 50%;

  background: #E3ECE5;

  color: #E47D6B;

  font-size: 11px;
  font-weight: 900;
}


/* Eyebrow inside card */

.xh-our-story-page
.xs-origin
.xs-step small {
  display: block;

  margin: 3px 0 8px;

  color: rgba(10, 52, 52, .72);

  font-size: 9px;
  font-weight: 800;

  line-height: 1.2;
  letter-spacing: .08em;
}


/* Heading */

.xh-our-story-page
.xs-origin
.xs-step h3 {
  max-width: 440px;

  margin: 0 0 12px;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size: clamp(22px, 1.8vw, 28px);
  font-weight: 500;

  line-height: 1.07;
  letter-spacing: -.85px;
}


/* Paragraph */

.xh-our-story-page
.xs-origin
.xs-step p {
  max-width: 460px;

  margin: 0;

  color: rgba(10, 52, 52, .63);

  font-size: 13px;
  line-height: 1.7;
}


/* ============================================================
   FEATURED FINAL CARD
   ============================================================ */

.xh-our-story-page
.xs-origin
.xs-step-featured {
  border-color: #0A3434;

  background: #0A3434;
}


.xh-our-story-page
.xs-origin
.xs-step-featured
.xs-step-number {
  background: rgba(250, 247, 241, .12);

  color: #E47D6B;
}


.xh-our-story-page
.xs-origin
.xs-step-featured small {
  color: #E47D6B;
}


.xh-our-story-page
.xs-origin
.xs-step-featured h3 {
  color: #FAF7F1;
}


.xh-our-story-page
.xs-origin
.xs-step-featured p {
  color: rgba(250, 247, 241, .66);
}


/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 1000px) {

  .xh-our-story-page
  .xs-origin-intro {
    grid-template-columns: 1fr;
    gap: 44px;
  }


  .xh-our-story-page
  .xs-origin-copy {
    max-width: 760px;
  }


  .xh-our-story-page
  .xs-origin-visual {
    width: min(100%, 680px);
  }


  .xh-our-story-page
  .xs-origin-journey-heading {
    grid-template-columns: 1fr;

    gap: 16px;
  }

}


/* ============================================================
   MOBILE / SMALL TABLET
   ============================================================ */

@media (max-width: 720px) {

  .xh-our-story-page
  .xs-origin-copy
  #xs-origin-heading {
    font-size: clamp(39px, 10.5vw, 48px);
    line-height: 1;
    letter-spacing: -2px;
  }


  .xh-our-story-page
  .xs-origin-art {
    min-height: 330px;

    border-radius: 22px;
  }


  .xh-our-story-page
  .xs-origin-art img {
    width: 112%;
  }


  .xh-our-story-page
  .xs-origin-image-note {
    position: relative;

    left: auto;
    bottom: auto;

    width: calc(100% - 24px);
    max-width: 380px;

    margin: -22px 0 0 24px;
  }


  .xh-our-story-page
  .xs-origin
  .xs-timeline {
    grid-template-columns: 1fr !important;
  }

}


/* ============================================================
   SMALL MOBILE
   ============================================================ */

@media (max-width: 480px) {

  .xh-our-story-page
  .xs-origin-art {
    min-height: 285px;
  }


  .xh-our-story-page
  .xs-origin
  .xs-step {
    grid-template-columns: 1fr;

    gap: 15px;

    padding: 24px 22px 26px;
  }


  .xh-our-story-page
  .xs-origin
  .xs-step-number {
    width: 36px;
    height: 36px;
  }

}



/* ============================================================
   OUR STORY — THE PROBLEM
   ============================================================ */

.xh-our-story-page .xs-problem-section {
  position: relative;
  overflow: hidden;

  background: #E3ECE5;
}


/* ============================================================
   SECTION HEADING
   ============================================================ */

.xh-our-story-page .xs-problem-heading {
  display: grid;

  grid-template-columns:
    minmax(0, 1.08fr)
    minmax(360px, .92fr);

  gap: clamp(54px, 7vw, 100px);

  align-items: end;

  margin-bottom: clamp(52px, 6vw, 76px);
}


.xh-our-story-page
.xs-problem-heading-title {
  min-width: 0;
}


/* H2 */

.xh-our-story-page
.xs-problem-heading
#xs-problem-title {
  max-width: 690px;

  margin: 17px 0 0;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size: clamp(46px, 4.25vw, 64px);

  font-weight: 500;

  line-height: 1;

  letter-spacing: -2.8px;

  text-wrap: balance;
}


.xh-our-story-page
.xs-problem-heading
#xs-problem-title span {
  display: block;

  color: #E47D6B !important;
}


/* Right copy */

.xh-our-story-page
.xs-problem-heading-copy {
  max-width: 540px;
}


.xh-our-story-page
.xs-problem-heading-copy p {
  margin: 0;

  color: rgba(10, 52, 52, .69);

  font-size: 15px;

  line-height: 1.75;
}


.xh-our-story-page
.xs-problem-heading-copy p + p {
  margin-top: 12px;
}


/* ============================================================
   MAIN AREA
   40% IMAGE / 60% PROBLEMS
   ============================================================ */

.xh-our-story-page
.xs-problem-layout {
  display: grid;

  grid-template-columns:
    minmax(320px, 40fr)
    minmax(0, 60fr);

  gap: clamp(42px, 5.5vw, 76px);

  align-items: center;
}


/* ============================================================
   IMAGE
   ============================================================ */

.xh-our-story-page
.xs-problem-visual {
  position: relative;

  min-width: 0;

  padding-bottom: 38px;
}


.xh-our-story-page
.xs-problem-image {
  position: relative;

  display: flex;

  align-items: center;
  justify-content: center;

  width: 100%;

  min-height: 455px;

  overflow: hidden;

  border: 1px solid rgba(10, 52, 52, .08);

  border-radius: 26px;

  background: #FAF7F1;

  box-shadow:
    0 24px 65px rgba(10, 52, 52, .08);
}


/* decorative coral circle */

.xh-our-story-page
.xs-problem-image::before {
  content: "";

  position: absolute;

  z-index: 0;

  width: 235px;
  height: 235px;

  top: -105px;
  right: -85px;

  border: 1px solid rgba(228, 125, 107, .38);

  border-radius: 50%;
}


/* second decorative shape */

.xh-our-story-page
.xs-problem-image::after {
  content: "";

  position: absolute;

  z-index: 0;

  width: 150px;
  height: 150px;

  left: -70px;
  bottom: -62px;

  border-radius: 50%;

  background: rgba(228, 125, 107, .10);
}


/* IMPORTANT:
   Do not allow this image to become full-width/hero-sized.
*/

.xh-our-story-page
.xs-problem-image img {
  position: relative !important;

  z-index: 2;

  display: block !important;

  width: 100% !important;

  max-width: 560px !important;

  height: auto !important;

  object-fit: contain !important;

  transform: none !important;
}


/* ============================================================
   IMAGE CAPTION
   ============================================================ */

.xh-our-story-page
.xs-problem-visual-caption {
  position: absolute;

  z-index: 4;

  left: 22px;
  right: 22px;
  bottom: 0;

  max-width: 355px;

  padding: 17px 20px 19px;

  border: 1px solid rgba(10, 52, 52, .08);

  border-radius: 16px;

  background: #FAF7F1;

  box-shadow:
    0 16px 42px rgba(10, 52, 52, .10);
}


.xh-our-story-page
.xs-problem-visual-caption > span {
  display: block;

  margin-bottom: 7px;

  color: #E47D6B;

  font-size: 9px;

  font-weight: 900;

  line-height: 1;

  letter-spacing: .12em;
}


.xh-our-story-page
.xs-problem-visual-caption p {
  margin: 0;

  color: rgba(10, 52, 52, .66);

  font-size: 13px;

  line-height: 1.55;
}


.xh-our-story-page
.xs-problem-visual-caption strong {
  color: #0A3434;

  font-weight: 800;
}


/* ============================================================
   PROBLEM CARDS
   ============================================================ */

.xh-our-story-page
.xs-problem-cards {
  display: grid;

  grid-template-columns: 1fr;

  gap: 14px;

  min-width: 0;
}


.xh-our-story-page
.xs-problem-card {
  display: grid;

  grid-template-columns: 48px minmax(0, 1fr);

  gap: 20px;

  align-items: start;

  min-width: 0;

  padding: 27px 29px;

  border: 1px solid rgba(10, 52, 52, .10);

  border-radius: 19px;

  background: rgba(250, 247, 241, .82);

  transition:
    transform .25s ease,
    border-color .25s ease,
    box-shadow .25s ease;
}


.xh-our-story-page
.xs-problem-card:hover {
  transform: translateX(4px);

  border-color: rgba(228, 125, 107, .32);

  box-shadow:
    0 15px 36px rgba(10, 52, 52, .055);
}


/* Number */

.xh-our-story-page
.xs-problem-number {
  display: grid;

  width: 42px;
  height: 42px;

  place-items: center;

  border-radius: 50%;

  background: #E3ECE5;

  color: #E47D6B;

  font-size: 11px;

  font-weight: 900;
}


/* Heading */

.xh-our-story-page
.xs-problem-card h3 {
  max-width: 580px;

  margin: 0 0 10px;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size: clamp(22px, 1.75vw, 28px);

  font-weight: 500;

  line-height: 1.08;

  letter-spacing: -.8px;
}


/* Paragraph */

.xh-our-story-page
.xs-problem-card p {
  max-width: 610px;

  margin: 0;

  color: rgba(10, 52, 52, .63);

  font-size: 13px;

  line-height: 1.7;
}


/* ============================================================
   THE REAL GAP
   ============================================================ */

.xh-our-story-page
.xs-problem-section
.xs-problem-note {
  display: grid;

  grid-template-columns:
    minmax(180px, .35fr)
    minmax(0, 1.65fr);

  gap: clamp(30px, 5vw, 74px);

  align-items: center;

  margin-top: clamp(48px, 5vw, 68px);

  padding-top: 30px;

  border-top:
    1px solid rgba(10, 52, 52, .13);
}


.xh-our-story-page
.xs-problem-section
.xs-problem-note p {
  max-width: 760px;

  margin: 0;

  color: rgba(10, 52, 52, .72);

  font-family: var(--xh-serif);

  font-size: clamp(23px, 2vw, 29px);

  font-weight: 500;

  line-height: 1.18;

  letter-spacing: -.6px;
}


.xh-our-story-page
.xs-problem-section
.xs-problem-note strong {
  display: block;

  margin-top: 3px;

  color: #0A3434;

  font-weight: 600;
}


/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 1000px) {

  .xh-our-story-page
  .xs-problem-heading {
    grid-template-columns: 1fr;

    gap: 24px;
  }


  .xh-our-story-page
  .xs-problem-heading-copy {
    max-width: 680px;
  }


  .xh-our-story-page
  .xs-problem-layout {
    grid-template-columns:
      minmax(280px, .78fr)
      minmax(0, 1.22fr);

    gap: 34px;
  }


  .xh-our-story-page
  .xs-problem-image {
    min-height: 410px;
  }

}


/* ============================================================
   SMALL TABLET
   ============================================================ */

@media (max-width: 820px) {

  .xh-our-story-page
  .xs-problem-layout {
    grid-template-columns: 1fr;
  }


  .xh-our-story-page
  .xs-problem-visual {
    width: min(100%, 620px);

    margin: 0 auto;
  }


  .xh-our-story-page
  .xs-problem-image {
    min-height: 390px;
  }


  .xh-our-story-page
  .xs-problem-section
  .xs-problem-note {
    grid-template-columns: 1fr;

    gap: 13px;
  }

}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 600px) {

  .xh-our-story-page
  .xs-problem-heading
  #xs-problem-title {
    font-size: clamp(39px, 10.5vw, 48px);

    line-height: 1;

    letter-spacing: -2px;
  }


  .xh-our-story-page
  .xs-problem-heading-copy p {
    font-size: 14px;
  }


  .xh-our-story-page
  .xs-problem-image {
    min-height: 310px;

    border-radius: 21px;
  }


  .xh-our-story-page
  .xs-problem-visual-caption {
    position: relative;

    left: auto;
    right: auto;
    bottom: auto;

    width: calc(100% - 24px);

    max-width: 380px;

    margin: -20px 0 0 24px;
  }


  .xh-our-story-page
  .xs-problem-card {
    grid-template-columns: 1fr;

    gap: 15px;

    padding: 24px 22px 26px;
  }


  .xh-our-story-page
  .xs-problem-number {
    width: 38px;
    height: 38px;
  }


  .xh-our-story-page
  .xs-problem-section
  .xs-problem-note p {
    font-size: 23px;
  }

}






/* ============================================================
   OUR STORY — HOW THE IDEA BECAME XTRIBE
   ============================================================ */

.xh-our-story-page .xs-model-section {
  position: relative;
  overflow: hidden;

  background: #0A3434;
  color: #FAF7F1;
}


/* subtle background detail */

.xh-our-story-page
.xs-model-section::before {
  content: "";

  position: absolute;

  width: 520px;
  height: 520px;

  top: -310px;
  right: -160px;

  border: 1px solid rgba(250,247,241,.09);
  border-radius: 50%;

  pointer-events: none;
}


.xh-our-story-page
.xs-model-section::after {
  content: "";

  position: absolute;

  width: 300px;
  height: 300px;

  left: -180px;
  bottom: -190px;

  border-radius: 50%;

  background: rgba(228,125,107,.09);

  pointer-events: none;
}


/* ============================================================
   INTRO
   ============================================================ */

.xh-our-story-page .xs-model-intro {
  position: relative;
  z-index: 2;

  display: grid;

  grid-template-columns:
    minmax(0, 54fr)
    minmax(0, 46fr);

  gap: clamp(52px, 7vw, 92px);

  align-items: center;

  margin-bottom: clamp(68px, 7vw, 96px);
}


/* ============================================================
   INTRO COPY
   ============================================================ */

.xh-our-story-page .xs-model-copy {
  max-width: 680px;
}


.xh-our-story-page
.xs-model-copy
#xs-model-title {
  max-width: 650px;

  margin: 17px 0 26px;

  color: #FAF7F1;

  font-family: var(--xh-serif);

  font-size: clamp(46px, 4.25vw, 64px);
  font-weight: 500;

  line-height: 1;
  letter-spacing: -2.8px;

  text-wrap: balance;
}


.xh-our-story-page
.xs-model-copy
#xs-model-title span {
  display: block;

  color: #E47D6B !important;
}


.xh-our-story-page
.xs-model-lead {
  max-width: 610px;
}


.xh-our-story-page
.xs-model-lead p {
  margin: 0;

  color: rgba(250,247,241,.70);

  font-size: 16px;

  line-height: 1.75;
}


.xh-our-story-page
.xs-model-lead p + p {
  margin-top: 13px;
}


/* ============================================================
   IMAGE
   ============================================================ */

.xh-our-story-page .xs-model-visual {
  position: relative;

  width: 100%;
  min-width: 0;

  padding: 12px 10px 48px 0;
}


.xh-our-story-page .xs-model-art {
  position: relative;

  display: flex;

  align-items: center;
  justify-content: center;

  min-height: 430px;

  overflow: hidden;
}


/* sage glow behind transparent artwork */

.xh-our-story-page
.xs-model-art::before {
  content: "";

  position: absolute;

  z-index: 0;

  width: 78%;
  aspect-ratio: 1;

  border-radius: 50%;

  background:
    radial-gradient(
      circle,
      rgba(227,236,229,.17) 0%,
      rgba(227,236,229,.08) 53%,
      rgba(227,236,229,0) 72%
    );
}


/* coral orbit */

.xh-our-story-page
.xs-model-art::after {
  content: "";

  position: absolute;

  z-index: 0;

  width: 72%;
  aspect-ratio: 1;

  top: 7%;
  right: -6%;

  border: 1px solid rgba(228,125,107,.25);
  border-radius: 50%;
}


.xh-our-story-page
.xs-model-art img {
  position: relative !important;

  z-index: 2;

  display: block !important;

  width: 112% !important;

  max-width: 650px !important;

  height: auto !important;

  margin: 0 -6% !important;

  object-fit: contain !important;

  transform: none !important;
}


/* ============================================================
   IMAGE NOTE
   ============================================================ */

.xh-our-story-page
.xs-model-visual-note {
  position: absolute;

  z-index: 4;

  left: 0;
  bottom: 0;

  max-width: 330px;

  padding: 18px 21px 20px;

  border: 1px solid rgba(250,247,241,.12);

  border-radius: 16px;

  background: #FAF7F1;

  box-shadow:
    0 22px 54px rgba(0,0,0,.20);
}


.xh-our-story-page
.xs-model-visual-note > span {
  display: block;

  margin-bottom: 7px;

  color: #E47D6B;

  font-size: 9px;

  font-weight: 900;

  line-height: 1;

  letter-spacing: .12em;
}


.xh-our-story-page
.xs-model-visual-note p {
  margin: 0;

  color: rgba(10,52,52,.67);

  font-size: 13px;

  line-height: 1.55;
}


.xh-our-story-page
.xs-model-visual-note strong {
  display: block;

  margin-top: 2px;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size: 21px;
  font-weight: 500;

  line-height: 1.12;

  letter-spacing: -.5px;
}


/* ============================================================
   FLOW INTRO
   ============================================================ */

.xh-our-story-page .xs-model-flow-heading {
  position: relative;
  z-index: 2;

  display: grid;

  grid-template-columns:
    minmax(250px, .45fr)
    minmax(0, 1fr);

  gap: 48px;

  align-items: end;

  margin-bottom: 28px;

  padding-top: 38px;

  border-top: 1px solid rgba(250,247,241,.12);
}


.xh-our-story-page
.xs-model-flow-heading p {
  max-width: 650px;

  margin: 0;

  color: rgba(250,247,241,.62);

  font-size: 14px;

  line-height: 1.7;
}


/* ============================================================
   FIVE STEP FLOW
   ============================================================ */

.xh-our-story-page .xs-model-flow {
  position: relative;
  z-index: 2;

  display: grid;

  grid-template-columns:
    repeat(6, minmax(0, 1fr));

  gap: 15px;
}


/*
 * First three cards:
 * each takes two columns.
 */

.xh-our-story-page
.xs-model-step:nth-child(1),
.xh-our-story-page
.xs-model-step:nth-child(2),
.xh-our-story-page
.xs-model-step:nth-child(3) {
  grid-column: span 2;
}


/*
 * Last two cards:
 * each takes three columns.
 */

.xh-our-story-page
.xs-model-step:nth-child(4),
.xh-our-story-page
.xs-model-step:nth-child(5) {
  grid-column: span 3;
}


/* ============================================================
   STEP CARD
   ============================================================ */

.xh-our-story-page .xs-model-step {
  position: relative;

  min-width: 0;

  padding: 27px 27px 30px;

  border: 1px solid rgba(250,247,241,.12);

  border-radius: 19px;

  background:
    rgba(250,247,241,.055);

  transition:
    transform .25s ease,
    border-color .25s ease,
    background .25s ease;
}


.xh-our-story-page
.xs-model-step:hover {
  transform: translateY(-3px);

  border-color: rgba(228,125,107,.40);

  background:
    rgba(250,247,241,.075);
}


/* Number circle */

.xh-our-story-page
.xs-model-step-number {
  display: grid;

  width: 40px;
  height: 40px;

  place-items: center;

  margin-bottom: 24px;

  border-radius: 50%;

  background: rgba(227,236,229,.12);

  color: #E47D6B;

  font-size: 11px;

  font-weight: 900;
}


/* STEP XX */

.xh-our-story-page
.xs-model-step small {
  display: block;

  margin-bottom: 8px;

  color: rgba(250,247,241,.47);

  font-size: 9px;

  font-weight: 800;

  line-height: 1;

  letter-spacing: .11em;
}


/* heading */

.xh-our-story-page
.xs-model-step h3 {
  max-width: 360px;

  margin: 0 0 12px;

  color: #FAF7F1;

  font-family: var(--xh-serif);

  font-size: clamp(22px, 1.7vw, 27px);

  font-weight: 500;

  line-height: 1.08;

  letter-spacing: -.75px;
}


/* paragraph */

.xh-our-story-page
.xs-model-step p {
  max-width: 420px;

  margin: 0;

  color: rgba(250,247,241,.61);

  font-size: 13px;

  line-height: 1.68;
}


/* ============================================================
   FINAL STEP
   ============================================================ */

.xh-our-story-page
.xs-model-step-final {
  border-color: rgba(228,125,107,.55);

  background:
    rgba(228,125,107,.10);
}


/* ============================================================
   PRINCIPLE
   ============================================================ */

.xh-our-story-page .xs-model-principle {
  position: relative;
  z-index: 2;

  display: grid;

  grid-template-columns:
    minmax(180px, .35fr)
    minmax(0, 1.65fr);

  gap: clamp(34px, 5vw, 72px);

  align-items: center;

  margin-top: clamp(46px, 5vw, 66px);

  padding-top: 30px;

  border-top:
    1px solid rgba(250,247,241,.12);
}


.xh-our-story-page
.xs-model-principle > span {
  color: #E47D6B;

  font-size: 9px;

  font-weight: 900;

  letter-spacing: .12em;
}


.xh-our-story-page
.xs-model-principle blockquote {
  max-width: 770px;

  margin: 0;

  color: rgba(250,247,241,.68);

  font-family: var(--xh-serif);

  font-size: clamp(24px, 2.1vw, 31px);

  font-weight: 500;

  line-height: 1.16;

  letter-spacing: -.7px;
}


.xh-our-story-page
.xs-model-principle strong {
  display: block;

  margin-top: 3px;

  color: #FAF7F1;

  font-weight: 500;
}


/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 1020px) {

  .xh-our-story-page
  .xs-model-intro {
    grid-template-columns: 1fr;

    gap: 44px;
  }


  .xh-our-story-page
  .xs-model-copy {
    max-width: 760px;
  }


  .xh-our-story-page
  .xs-model-visual {
    width: min(100%, 690px);
  }


  .xh-our-story-page
  .xs-model-flow {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }


  .xh-our-story-page
  .xs-model-step:nth-child(n) {
    grid-column: auto;
  }


  .xh-our-story-page
  .xs-model-step:last-child {
    grid-column: 1 / -1;
  }

}


/* ============================================================
   SMALL TABLET
   ============================================================ */

@media (max-width: 760px) {

  .xh-our-story-page
  .xs-model-flow-heading {
    grid-template-columns: 1fr;

    gap: 14px;
  }


  .xh-our-story-page
  .xs-model-principle {
    grid-template-columns: 1fr;

    gap: 13px;
  }

}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 600px) {

  .xh-our-story-page
  .xs-model-copy
  #xs-model-title {
    font-size: clamp(39px, 10.5vw, 48px);

    line-height: 1;

    letter-spacing: -2px;
  }


  .xh-our-story-page
  .xs-model-lead p {
    font-size: 14px;
  }


  .xh-our-story-page
  .xs-model-art {
    min-height: 310px;
  }


  .xh-our-story-page
  .xs-model-art img {
    width: 110% !important;
  }


  .xh-our-story-page
  .xs-model-visual-note {
    position: relative;

    left: auto;
    bottom: auto;

    width: calc(100% - 24px);
    max-width: 360px;

    margin: -19px 0 0 24px;
  }


  .xh-our-story-page
  .xs-model-flow {
    grid-template-columns: 1fr;
  }


  .xh-our-story-page
  .xs-model-step:last-child {
    grid-column: auto;
  }


  .xh-our-story-page
  .xs-model-step {
    padding: 24px 22px 27px;
  }


  .xh-our-story-page
  .xs-model-principle blockquote {
    font-size: 23px;
  }

}




/* ============================================================
   OUR STORY — WHAT MAKES XTRIBE DIFFERENT
   ============================================================ */

.xh-our-story-page .xs-difference-section {
  position: relative;
  overflow: hidden;
  background: #E3ECE5;
}


/* ============================================================
   HEADING
   ============================================================ */

.xh-our-story-page .xs-difference-heading {
  display: grid;
  grid-template-columns:
    minmax(0, 1.08fr)
    minmax(360px, .92fr);

  gap: clamp(52px, 7vw, 96px);
  align-items: end;

  margin-bottom: clamp(52px, 6vw, 76px);
}


.xh-our-story-page
.xs-difference-heading
#xs-difference-title {
  max-width: 670px;
  margin: 17px 0 0;

  color: #0A3434;

  font-family: var(--xh-serif);
  font-size: clamp(46px, 4.25vw, 64px);
  font-weight: 500;

  line-height: 1;
  letter-spacing: -2.8px;

  text-wrap: balance;
}


.xh-our-story-page
.xs-difference-heading
#xs-difference-title span {
  display: block;
  color: #E47D6B !important;
}


.xh-our-story-page .xs-difference-heading-copy {
  max-width: 545px;
}


.xh-our-story-page
.xs-difference-heading-copy p {
  margin: 0;

  color: rgba(10,52,52,.69);

  font-size: 15px;
  line-height: 1.75;
}


.xh-our-story-page
.xs-difference-heading-copy p + p {
  margin-top: 12px;
}


/* ============================================================
   MAIN LAYOUT
   ============================================================ */

.xh-our-story-page .xs-difference-layout {
  display: grid;

  grid-template-columns:
    minmax(330px, 42fr)
    minmax(0, 58fr);

  gap: clamp(44px, 6vw, 80px);

  align-items: center;
}


/* ============================================================
   IMAGE
   ============================================================ */

.xh-our-story-page .xs-difference-visual {
  position: relative;

  width: 100%;
  min-width: 0;

  padding-bottom: 42px;
}


.xh-our-story-page .xs-difference-image {
  position: relative;

  display: flex;
  align-items: center;
  justify-content: center;

  width: 100%;

  min-height: 455px;

  overflow: hidden;

  border: 1px solid rgba(10,52,52,.08);
  border-radius: 26px;

  background: #FAF7F1;

  box-shadow:
    0 24px 60px rgba(10,52,52,.07);
}


/* subtle coral circle */

.xh-our-story-page
.xs-difference-image::before {
  content: "";

  position: absolute;

  width: 235px;
  height: 235px;

  top: -100px;
  right: -85px;

  border: 1px solid rgba(228,125,107,.32);
  border-radius: 50%;

  pointer-events: none;
}


/* image */

.xh-our-story-page
.xs-difference-image img {
  position: relative !important;
  z-index: 2;

  display: block !important;

  width: 100% !important;
  max-width: 610px !important;

  height: auto !important;

  object-fit: contain !important;

  transform: none !important;
}


/* ============================================================
   IMAGE CAPTION
   ============================================================ */

.xh-our-story-page .xs-difference-caption {
  position: absolute;
  z-index: 4;

  left: 22px;
  bottom: 0;

  max-width: 355px;

  padding: 17px 20px 19px;

  border: 1px solid rgba(10,52,52,.08);
  border-radius: 16px;

  background: #FAF7F1;

  box-shadow:
    0 16px 42px rgba(10,52,52,.10);
}


.xh-our-story-page
.xs-difference-caption > span {
  display: block;

  margin-bottom: 7px;

  color: #E47D6B;

  font-size: 9px;
  font-weight: 900;

  line-height: 1;
  letter-spacing: .12em;
}


.xh-our-story-page .xs-difference-caption p {
  margin: 0;

  color: rgba(10,52,52,.67);

  font-size: 13px;
  line-height: 1.55;
}


.xh-our-story-page
.xs-difference-caption strong {
  display: block;

  margin-top: 2px;

  color: #0A3434;

  font-family: var(--xh-serif);
  font-size: 19px;
  font-weight: 500;

  line-height: 1.12;
  letter-spacing: -.45px;
}


/* ============================================================
   RIGHT SIDE
   ============================================================ */

.xh-our-story-page .xs-difference-content {
  display: grid;

  grid-template-columns: 1fr;
  gap: 15px;

  min-width: 0;
}


/* ============================================================
   COMPARISON CARD
   ============================================================ */

.xh-our-story-page .xs-difference-card {
  min-width: 0;

  padding: 27px 29px 29px;

  border: 1px solid rgba(10,52,52,.10);
  border-radius: 20px;

  background: rgba(250,247,241,.88);
}


/* ============================================================
   CARD HEADING
   ============================================================ */

.xh-our-story-page
.xs-difference-card-heading {
  display: flex;

  gap: 15px;

  align-items: center;

  margin-bottom: 22px;
}


.xh-our-story-page .xs-difference-symbol {
  display: grid;

  width: 42px;
  height: 42px;

  flex: 0 0 42px;

  place-items: center;

  border-radius: 50%;

  font-size: 19px;
  font-weight: 800;
}


/* YES */

.xh-our-story-page
.xs-difference-yes
.xs-difference-symbol {
  background: #E3ECE5;
  color: #0A3434;
}


/* NO */

.xh-our-story-page
.xs-difference-no
.xs-difference-symbol {
  background: rgba(228,125,107,.13);
  color: #E47D6B;
}


.xh-our-story-page
.xs-difference-card-heading small {
  display: block;

  margin-bottom: 4px;

  color: #E47D6B;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: .11em;
}


.xh-our-story-page
.xs-difference-card-heading h3 {
  margin: 0;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size: clamp(23px,1.75vw,28px);

  font-weight: 500;

  line-height: 1.08;

  letter-spacing: -.75px;
}


/* ============================================================
   LIST
   ============================================================ */

.xh-our-story-page
.xs-difference-card ul {
  display: grid;

  grid-template-columns:
    repeat(2, minmax(0,1fr));

  gap: 0 28px;

  margin: 0;
  padding: 0;

  list-style: none;
}


.xh-our-story-page
.xs-difference-card li {
  display: grid;

  grid-template-columns:
    28px minmax(0,1fr);

  gap: 10px;

  padding: 14px 0;

  border-top:
    1px solid rgba(10,52,52,.075);
}


.xh-our-story-page
.xs-difference-card li > span {
  color: #E47D6B;

  font-family: var(--xh-serif);

  font-size: 12px;
  font-weight: 500;
}


.xh-our-story-page
.xs-difference-card li p {
  margin: 0;

  color: rgba(10,52,52,.63);

  font-size: 12.5px;
  line-height: 1.6;
}


.xh-our-story-page
.xs-difference-card li strong {
  color: #0A3434;
  font-weight: 750;
}


/* ============================================================
   CLOSING PRINCIPLE
   ============================================================ */

.xh-our-story-page
.xs-difference-principle {
  display: grid;

  grid-template-columns:
    minmax(180px,.35fr)
    minmax(0,1.65fr);

  gap: clamp(30px,5vw,70px);

  align-items: center;

  margin-top: clamp(48px,5vw,68px);

  padding-top: 30px;

  border-top:
    1px solid rgba(10,52,52,.13);
}


.xh-our-story-page
.xs-difference-principle > span {
  color: #E47D6B;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: .12em;
}


.xh-our-story-page
.xs-difference-principle p {
  margin: 0;

  color: rgba(10,52,52,.70);

  font-family: var(--xh-serif);

  font-size: clamp(24px,2vw,30px);

  font-weight: 500;

  line-height: 1.16;

  letter-spacing: -.65px;
}


.xh-our-story-page
.xs-difference-principle strong {
  color: #0A3434;
  font-weight: 600;
}


/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 1020px) {

  .xh-our-story-page .xs-difference-heading {
    grid-template-columns: 1fr;
    gap: 24px;
  }


  .xh-our-story-page
  .xs-difference-heading-copy {
    max-width: 680px;
  }


  .xh-our-story-page .xs-difference-layout {
    grid-template-columns:
      minmax(280px,.8fr)
      minmax(0,1.2fr);

    gap: 36px;
  }


  .xh-our-story-page
  .xs-difference-card ul {
    grid-template-columns: 1fr;
  }

}


/* ============================================================
   SMALL TABLET
   ============================================================ */

@media (max-width: 820px) {

  .xh-our-story-page
  .xs-difference-layout {
    grid-template-columns: 1fr;
    gap: 48px;
  }


  .xh-our-story-page
  .xs-difference-visual {
    width: min(100%,650px);

    margin: 0 auto;
  }


  .xh-our-story-page
  .xs-difference-principle {
    grid-template-columns: 1fr;
    gap: 13px;
  }

}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 600px) {

  .xh-our-story-page
  .xs-difference-heading
  #xs-difference-title {
    font-size: clamp(39px,10.5vw,48px);

    line-height: 1;
    letter-spacing: -2px;
  }


  .xh-our-story-page
  .xs-difference-heading-copy p {
    font-size: 14px;
  }


  .xh-our-story-page
  .xs-difference-image {
    min-height: 310px;

    border-radius: 21px;
  }


  .xh-our-story-page
  .xs-difference-caption {
    position: relative;

    left: auto;
    bottom: auto;

    width: calc(100% - 24px);
    max-width: 380px;

    margin: -19px 0 0 24px;
  }


  .xh-our-story-page
  .xs-difference-card {
    padding: 24px 21px 25px;
  }


  .xh-our-story-page
  .xs-difference-card ul {
    grid-template-columns: 1fr;
  }


  .xh-our-story-page
  .xs-difference-principle p {
    font-size: 23px;
  }

}




/* ============================================================
   OUR STORY — XTRIBE INTRODUCTION
   ============================================================ */

.xh-our-story-page .xs-introduction-section {
  position: relative;
  overflow: hidden;
  background: #FAF7F1;
}


/* ============================================================
   HEADING
   ============================================================ */

.xh-our-story-page .xs-introduction-heading {
  display: grid;

  grid-template-columns:
    minmax(0, 1.08fr)
    minmax(360px, .92fr);

  gap: clamp(52px, 7vw, 96px);
  align-items: end;

  margin-bottom: clamp(52px, 6vw, 76px);
}


.xh-our-story-page
.xs-introduction-heading
#xs-intro-title {
  max-width: 690px;

  margin: 17px 0 0;

  color: #0A3434;

  font-family: var(--xh-serif);
  font-size: clamp(46px, 4.25vw, 64px);
  font-weight: 500;

  line-height: 1;
  letter-spacing: -2.8px;

  text-wrap: balance;
}


.xh-our-story-page
.xs-introduction-heading
#xs-intro-title span {
  display: block;
  color: #E47D6B !important;
}


/* right side intro */

.xh-our-story-page
.xs-introduction-heading-copy {
  max-width: 545px;
}


.xh-our-story-page
.xs-introduction-heading-copy p {
  margin: 0;

  color: rgba(10,52,52,.69);

  font-size: 15px;
  line-height: 1.75;
}


.xh-our-story-page
.xs-introduction-heading-copy p + p {
  margin-top: 12px;
}


/* ============================================================
   MAIN LAYOUT
   ============================================================ */

.xh-our-story-page
.xs-introduction-layout {
  display: grid;

  grid-template-columns:
    minmax(330px, 43fr)
    minmax(0, 57fr);

  gap: clamp(46px, 6vw, 82px);

  align-items: center;
}


/* ============================================================
   VISUAL
   ============================================================ */

.xh-our-story-page
.xs-introduction-visual {
  position: relative;

  min-width: 0;
  width: 100%;

  padding-bottom: 42px;
}


.xh-our-story-page
.xs-introduction-art {
  position: relative;

  display: flex;
  align-items: flex-end;
  justify-content: center;

  width: 100%;
  min-height: 440px;

  overflow: hidden;

  border-radius: 28px;

  background:
    linear-gradient(
      145deg,
      #E3ECE5 0%,
      #FAF7F1 75%
    );
}


/* coral detail */

.xh-our-story-page
.xs-introduction-art::before {
  content: "";

  position: absolute;

  width: 230px;
  height: 230px;

  top: -95px;
  right: -75px;

  border:
    1px solid rgba(228,125,107,.34);

  border-radius: 50%;
}


/* sage detail */

.xh-our-story-page
.xs-introduction-art::after {
  content: "";

  position: absolute;

  width: 170px;
  height: 170px;

  left: -70px;
  bottom: -75px;

  border-radius: 50%;

  background:
    rgba(227,236,229,.70);
}


/* transparent PNG */

.xh-our-story-page
.xs-introduction-art img {
  position: relative !important;

  z-index: 2;

  display: block !important;

  width: 108% !important;
  max-width: 610px !important;

  height: auto !important;

  margin: 0 -4% -2px !important;

  object-fit: contain !important;

  transform: none !important;
}


/* ============================================================
   IMAGE CAPTION
   ============================================================ */

.xh-our-story-page
.xs-introduction-caption {
  position: absolute;

  z-index: 4;

  left: 20px;
  bottom: 0;

  max-width: 350px;

  padding: 17px 20px 19px;

  border:
    1px solid rgba(10,52,52,.08);

  border-radius: 16px;

  background: #FAF7F1;

  box-shadow:
    0 16px 42px rgba(10,52,52,.10);
}


.xh-our-story-page
.xs-introduction-caption > span {
  display: block;

  margin-bottom: 7px;

  color: #E47D6B;

  font-size: 9px;
  font-weight: 900;

  line-height: 1;
  letter-spacing: .12em;
}


.xh-our-story-page
.xs-introduction-caption p {
  margin: 0;

  color: rgba(10,52,52,.66);

  font-size: 13px;
  line-height: 1.55;
}


.xh-our-story-page
.xs-introduction-caption strong {
  display: block;

  margin-top: 2px;

  color: #0A3434;

  font-family: var(--xh-serif);
  font-size: 19px;
  font-weight: 500;

  line-height: 1.12;
  letter-spacing: -.45px;
}


/* ============================================================
   PROMPTS
   ============================================================ */

.xh-our-story-page
.xs-introduction-prompts {
  display: grid;

  grid-template-columns: 1fr;

  gap: 14px;

  min-width: 0;
}


/* ============================================================
   PROMPT CARD
   ============================================================ */

.xh-our-story-page
.xs-introduction-card {
  display: grid;

  grid-template-columns:
    48px minmax(0, 1fr);

  gap: 20px;

  align-items: start;

  padding: 27px 29px;

  border:
    1px solid rgba(10,52,52,.10);

  border-radius: 19px;

  background:
    rgba(255,255,255,.56);

  transition:
    transform .25s ease,
    border-color .25s ease,
    box-shadow .25s ease;
}


.xh-our-story-page
.xs-introduction-card:hover {
  transform: translateX(4px);

  border-color:
    rgba(228,125,107,.30);

  box-shadow:
    0 15px 36px rgba(10,52,52,.055);
}


/* number */

.xh-our-story-page
.xs-introduction-number {
  display: grid;

  width: 42px;
  height: 42px;

  place-items: center;

  border-radius: 50%;

  background: #E3ECE5;
  color: #E47D6B;

  font-size: 11px;
  font-weight: 900;
}


/* mini heading */

.xh-our-story-page
.xs-introduction-card small {
  display: block;

  margin: 2px 0 7px;

  color: rgba(10,52,52,.62);

  font-size: 9px;
  font-weight: 800;

  line-height: 1.2;
  letter-spacing: .08em;
}


/* question */

.xh-our-story-page
.xs-introduction-card h3 {
  margin: 0 0 10px;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size: clamp(24px, 1.85vw, 29px);
  font-weight: 500;

  line-height: 1.06;
  letter-spacing: -.8px;
}


/* answer */

.xh-our-story-page
.xs-introduction-card p {
  max-width: 580px;

  margin: 0;

  color: rgba(10,52,52,.63);

  font-size: 13px;
  line-height: 1.7;
}


/* ============================================================
   WHY IT MATTERS
   ============================================================ */

.xh-our-story-page
.xs-introduction-principle {
  display: grid;

  grid-template-columns:
    minmax(180px,.35fr)
    minmax(0,1.65fr);

  gap: clamp(30px,5vw,70px);

  align-items: center;

  margin-top: clamp(50px,5vw,70px);

  padding-top: 30px;

  border-top:
    1px solid rgba(10,52,52,.12);
}


.xh-our-story-page
.xs-introduction-principle > span {
  color: #E47D6B;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: .12em;
}


.xh-our-story-page
.xs-introduction-principle p {
  max-width: 820px;

  margin: 0;

  color: rgba(10,52,52,.69);

  font-family: var(--xh-serif);

  font-size: clamp(23px,2vw,29px);
  font-weight: 500;

  line-height: 1.17;
  letter-spacing: -.6px;
}


.xh-our-story-page
.xs-introduction-principle strong {
  display: block;

  margin-top: 3px;

  color: #0A3434;

  font-weight: 600;
}


/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 1020px) {

  .xh-our-story-page
  .xs-introduction-heading {
    grid-template-columns: 1fr;
    gap: 24px;
  }


  .xh-our-story-page
  .xs-introduction-heading-copy {
    max-width: 680px;
  }


  .xh-our-story-page
  .xs-introduction-layout {
    grid-template-columns:
      minmax(280px,.8fr)
      minmax(0,1.2fr);

    gap: 36px;
  }

}


/* ============================================================
   SMALL TABLET
   ============================================================ */

@media (max-width: 820px) {

  .xh-our-story-page
  .xs-introduction-layout {
    grid-template-columns: 1fr;

    gap: 48px;
  }


  .xh-our-story-page
  .xs-introduction-visual {
    width: min(100%,650px);

    margin: 0 auto;
  }


  .xh-our-story-page
  .xs-introduction-principle {
    grid-template-columns: 1fr;

    gap: 13px;
  }

}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 600px) {

  .xh-our-story-page
  .xs-introduction-heading
  #xs-intro-title {
    font-size:
      clamp(39px,10.5vw,48px);

    line-height: 1;
    letter-spacing: -2px;
  }


  .xh-our-story-page
  .xs-introduction-heading-copy p {
    font-size: 14px;
  }


  .xh-our-story-page
  .xs-introduction-art {
    min-height: 310px;

    border-radius: 21px;
  }


  .xh-our-story-page
  .xs-introduction-caption {
    position: relative;

    left: auto;
    bottom: auto;

    width: calc(100% - 24px);
    max-width: 380px;

    margin: -19px 0 0 24px;
  }


  .xh-our-story-page
  .xs-introduction-card {
    grid-template-columns: 1fr;

    gap: 15px;

    padding: 24px 22px 26px;
  }


  .xh-our-story-page
  .xs-introduction-number {
    width: 38px;
    height: 38px;
  }


  .xh-our-story-page
  .xs-introduction-principle p {
    font-size: 23px;
  }

}









/* ============================================================
   OUR STORY — COMMUNITY CONTINUITY
   ============================================================ */

.xh-our-story-page .xs-community-section {
  position: relative;
  overflow: hidden;

  background: #0A3434;
  color: #FAF7F1;
}


/* subtle background detail */

.xh-our-story-page
.xs-community-section::before {
  content: "";

  position: absolute;

  width: 520px;
  height: 520px;

  top: -320px;
  right: -180px;

  border: 1px solid rgba(250,247,241,.09);
  border-radius: 50%;

  pointer-events: none;
}


.xh-our-story-page
.xs-community-section::after {
  content: "";

  position: absolute;

  width: 320px;
  height: 320px;

  left: -200px;
  bottom: -220px;

  border-radius: 50%;

  background: rgba(228,125,107,.08);

  pointer-events: none;
}


/* ============================================================
   HEADING
   ============================================================ */

.xh-our-story-page .xs-community-heading {
  position: relative;
  z-index: 2;

  display: grid;

  grid-template-columns:
    minmax(0, 1.08fr)
    minmax(360px, .92fr);

  gap: clamp(54px,7vw,98px);

  align-items: end;

  margin-bottom: clamp(54px,6vw,78px);
}


.xh-our-story-page
.xs-community-heading
#xs-community-title {
  max-width: 690px;

  margin: 17px 0 0;

  color: #FAF7F1;

  font-family: var(--xh-serif);

  font-size: clamp(46px,4.25vw,64px);
  font-weight: 500;

  line-height: 1;
  letter-spacing: -2.8px;

  text-wrap: balance;
}


.xh-our-story-page
.xs-community-heading
#xs-community-title span {
  display: block;

  color: #E47D6B !important;
}


.xh-our-story-page
.xs-community-heading-copy {
  max-width: 550px;
}


.xh-our-story-page
.xs-community-heading-copy p {
  margin: 0;

  color: rgba(250,247,241,.68);

  font-size: 15px;

  line-height: 1.75;
}


.xh-our-story-page
.xs-community-heading-copy p + p {
  margin-top: 13px;
}


/* ============================================================
   MAIN LAYOUT
   ============================================================ */

.xh-our-story-page .xs-community-layout {
  position: relative;
  z-index: 2;

  display: grid;

  grid-template-columns:
    minmax(330px, 43fr)
    minmax(0, 57fr);

  gap: clamp(46px,6vw,82px);

  align-items: center;
}


/* ============================================================
   VISUAL
   ============================================================ */

.xh-our-story-page .xs-community-visual {
  position: relative;

  width: 100%;
  min-width: 0;

  padding-bottom: 44px;
}


.xh-our-story-page .xs-community-art {
  position: relative;

  display: flex;

  align-items: center;
  justify-content: center;

  min-height: 465px;

  overflow: hidden;
}


/* soft sage glow */

.xh-our-story-page
.xs-community-art::before {
  content: "";

  position: absolute;

  width: 82%;
  aspect-ratio: 1;

  border-radius: 50%;

  background:
    radial-gradient(
      circle,
      rgba(227,236,229,.15) 0%,
      rgba(227,236,229,.06) 55%,
      rgba(227,236,229,0) 74%
    );
}


/* coral orbit */

.xh-our-story-page
.xs-community-art::after {
  content: "";

  position: absolute;

  width: 73%;
  aspect-ratio: 1;

  top: 8%;
  right: -5%;

  border:
    1px solid rgba(228,125,107,.25);

  border-radius: 50%;
}


/* transparent artwork */

.xh-our-story-page
.xs-community-art img {
  position: relative !important;

  z-index: 2;

  display: block !important;

  width: 110% !important;

  max-width: 660px !important;

  height: auto !important;

  margin: 0 -5% !important;

  object-fit: contain !important;

  transform: none !important;
}


/* ============================================================
   VISUAL NOTE
   ============================================================ */

.xh-our-story-page .xs-community-image-note {
  position: absolute;

  z-index: 4;

  left: 0;
  bottom: 0;

  max-width: 345px;

  padding: 18px 21px 20px;

  border:
    1px solid rgba(250,247,241,.10);

  border-radius: 16px;

  background: #FAF7F1;

  box-shadow:
    0 22px 54px rgba(0,0,0,.20);
}


.xh-our-story-page
.xs-community-image-note > span {
  display: block;

  margin-bottom: 7px;

  color: #E47D6B;

  font-size: 9px;
  font-weight: 900;

  line-height: 1;
  letter-spacing: .11em;
}


.xh-our-story-page
.xs-community-image-note p {
  margin: 0;

  color: rgba(10,52,52,.66);

  font-size: 13px;

  line-height: 1.55;
}


.xh-our-story-page
.xs-community-image-note strong {
  display: block;

  margin-top: 2px;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size: 20px;
  font-weight: 500;

  line-height: 1.12;
  letter-spacing: -.5px;
}


/* ============================================================
   FEATURES
   ============================================================ */

.xh-our-story-page .xs-community-features {
  display: grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap: 14px;

  min-width: 0;
}


/* ============================================================
   FEATURE
   ============================================================ */

.xh-our-story-page .xs-community-feature {
  display: grid;

  grid-template-columns:
    42px minmax(0,1fr);

  gap: 16px;

  align-items: start;

  min-width: 0;

  padding: 23px 22px 24px;

  border:
    1px solid rgba(250,247,241,.11);

  border-radius: 17px;

  background:
    rgba(250,247,241,.055);

  transition:
    transform .25s ease,
    border-color .25s ease,
    background .25s ease;
}


.xh-our-story-page
.xs-community-feature:hover {
  transform: translateY(-3px);

  border-color:
    rgba(228,125,107,.35);

  background:
    rgba(250,247,241,.075);
}


/* number */

.xh-our-story-page
.xs-community-number {
  display: grid;

  width: 38px;
  height: 38px;

  place-items: center;

  border-radius: 50%;

  background:
    rgba(227,236,229,.11);

  color: #E47D6B;

  font-size: 10px;
  font-weight: 900;
}


/* feature heading */

.xh-our-story-page
.xs-community-feature h3 {
  margin: 3px 0 9px;

  color: #FAF7F1;

  font-family: var(--xh-serif);

  font-size: clamp(20px,1.5vw,24px);

  font-weight: 500;

  line-height: 1.08;

  letter-spacing: -.6px;
}


/* feature body */

.xh-our-story-page
.xs-community-feature p {
  margin: 0;

  color:
    rgba(250,247,241,.59);

  font-size: 12.5px;

  line-height: 1.65;
}


/* ============================================================
   ACCESS
   ============================================================ */

.xh-our-story-page .xs-community-access {
  position: relative;
  z-index: 2;

  display: grid;

  grid-template-columns:
    minmax(180px,.35fr)
    minmax(0,1.65fr);

  gap: clamp(32px,5vw,72px);

  align-items: start;

  margin-top: clamp(52px,5vw,72px);

  padding-top: 30px;

  border-top:
    1px solid rgba(250,247,241,.12);
}


.xh-our-story-page
.xs-community-access-copy {
  max-width: 800px;
}


.xh-our-story-page
.xs-community-access-copy p {
  margin: 0;

  color: rgba(250,247,241,.67);

  font-family: var(--xh-serif);

  font-size: clamp(21px,1.75vw,27px);

  font-weight: 500;

  line-height: 1.2;

  letter-spacing: -.5px;
}


.xh-our-story-page
.xs-community-access-copy p + p {
  margin-top: 9px;
}


.xh-our-story-page
.xs-community-access-copy strong {
  color: #FAF7F1;

  font-weight: 600;
}


/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 1040px) {

  .xh-our-story-page
  .xs-community-heading {
    grid-template-columns: 1fr;

    gap: 24px;
  }


  .xh-our-story-page
  .xs-community-heading-copy {
    max-width: 700px;
  }


  .xh-our-story-page
  .xs-community-layout {
    grid-template-columns:
      minmax(280px,.8fr)
      minmax(0,1.2fr);

    gap: 36px;
  }


  .xh-our-story-page
  .xs-community-features {
    grid-template-columns: 1fr;
  }

}


/* ============================================================
   SMALL TABLET
   ============================================================ */

@media (max-width: 820px) {

  .xh-our-story-page
  .xs-community-layout {
    grid-template-columns: 1fr;

    gap: 48px;
  }


  .xh-our-story-page
  .xs-community-visual {
    width: min(100%,660px);

    margin: 0 auto;
  }


  .xh-our-story-page
  .xs-community-features {
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }


  .xh-our-story-page
  .xs-community-access {
    grid-template-columns: 1fr;

    gap: 14px;
  }

}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 600px) {

  .xh-our-story-page
  .xs-community-heading
  #xs-community-title {
    font-size:
      clamp(39px,10.5vw,48px);

    line-height: 1;

    letter-spacing: -2px;
  }


  .xh-our-story-page
  .xs-community-heading-copy p {
    font-size: 14px;
  }


  .xh-our-story-page
  .xs-community-art {
    min-height: 310px;
  }


  .xh-our-story-page
  .xs-community-art img {
    width: 108% !important;
  }


  .xh-our-story-page
  .xs-community-image-note {
    position: relative;

    left: auto;
    bottom: auto;

    width: calc(100% - 24px);
    max-width: 380px;

    margin: -18px 0 0 24px;
  }


  .xh-our-story-page
  .xs-community-features {
    grid-template-columns: 1fr;
  }


  .xh-our-story-page
  .xs-community-feature {
    padding: 22px 20px 23px;
  }


  .xh-our-story-page
  .xs-community-access-copy p {
    font-size: 21px;
  }

}









/* ============================================================
   OUR STORY — THE WIDER VISION
   ============================================================ */

.xh-our-story-page .xs-impact-section {
  position: relative;
  overflow: hidden;
  background: #E3ECE5;
}


/* ============================================================
   HEADING
   ============================================================ */

.xh-our-story-page .xs-impact-heading {
  display: grid;

  grid-template-columns:
    minmax(0, 1.08fr)
    minmax(360px, .92fr);

  gap: clamp(52px, 7vw, 96px);

  align-items: end;

  margin-bottom: clamp(54px, 6vw, 78px);
}


.xh-our-story-page
.xs-impact-heading
#xs-impact-title {
  max-width: 690px;

  margin: 17px 0 0;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size: clamp(46px, 4.25vw, 64px);
  font-weight: 500;

  line-height: 1;
  letter-spacing: -2.8px;

  text-wrap: balance;
}


.xh-our-story-page
.xs-impact-heading
#xs-impact-title span {
  display: block;

  color: #E47D6B !important;
}


.xh-our-story-page
.xs-impact-heading-copy {
  max-width: 550px;
}


.xh-our-story-page
.xs-impact-heading-copy p {
  margin: 0;

  color: rgba(10, 52, 52, .69);

  font-size: 15px;
  line-height: 1.75;
}


.xh-our-story-page
.xs-impact-heading-copy p + p {
  margin-top: 12px;
}


/* ============================================================
   MAIN LAYOUT
   ============================================================ */

.xh-our-story-page .xs-impact-layout {
  display: grid;

  grid-template-columns:
    minmax(330px, 42fr)
    minmax(0, 58fr);

  gap: clamp(44px, 6vw, 80px);

  align-items: center;
}


/* ============================================================
   VISUAL
   ============================================================ */

.xh-our-story-page .xs-impact-visual {
  position: relative;

  width: 100%;
  min-width: 0;

  padding-bottom: 44px;
}


.xh-our-story-page .xs-impact-art {
  position: relative;

  display: flex;

  align-items: center;
  justify-content: center;

  min-height: 455px;

  overflow: hidden;

  border-radius: 28px;

  background:
    linear-gradient(
      145deg,
      #FAF7F1 0%,
      rgba(250, 247, 241, .72) 100%
    );
}


/* decorative coral circle */

.xh-our-story-page
.xs-impact-art::before {
  content: "";

  position: absolute;

  width: 235px;
  height: 235px;

  top: -100px;
  right: -80px;

  border:
    1px solid rgba(228, 125, 107, .34);

  border-radius: 50%;
}


/* sage detail */

.xh-our-story-page
.xs-impact-art::after {
  content: "";

  position: absolute;

  width: 170px;
  height: 170px;

  left: -75px;
  bottom: -80px;

  border-radius: 50%;

  background:
    rgba(227, 236, 229, .80);
}


.xh-our-story-page
.xs-impact-art img {
  position: relative !important;

  z-index: 2;

  display: block !important;

  width: 108% !important;
  max-width: 640px !important;

  height: auto !important;

  margin: 0 -4% !important;

  object-fit: contain !important;

  transform: none !important;
}


/* ============================================================
   IMAGE NOTE
   ============================================================ */

.xh-our-story-page .xs-impact-image-note {
  position: absolute;

  z-index: 4;

  left: 20px;
  bottom: 0;

  max-width: 350px;

  padding: 17px 20px 19px;

  border:
    1px solid rgba(10, 52, 52, .08);

  border-radius: 16px;

  background: #FAF7F1;

  box-shadow:
    0 16px 42px rgba(10, 52, 52, .10);
}


.xh-our-story-page
.xs-impact-image-note > span {
  display: block;

  margin-bottom: 7px;

  color: #E47D6B;

  font-size: 9px;
  font-weight: 900;

  line-height: 1;

  letter-spacing: .12em;
}


.xh-our-story-page
.xs-impact-image-note p {
  margin: 0;

  color: rgba(10, 52, 52, .66);

  font-size: 13px;

  line-height: 1.55;
}


.xh-our-story-page
.xs-impact-image-note strong {
  display: block;

  margin-top: 2px;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size: 19px;
  font-weight: 500;

  line-height: 1.12;

  letter-spacing: -.45px;
}


/* ============================================================
   FOUR CARDS
   ============================================================ */

.xh-our-story-page .xs-impact-cards {
  display: grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  gap: 15px;

  min-width: 0;
}


.xh-our-story-page .xs-impact-card {
  display: grid;

  grid-template-columns:
    43px minmax(0, 1fr);

  gap: 16px;

  align-items: start;

  min-width: 0;

  min-height: 210px;

  padding: 25px 24px 27px;

  border:
    1px solid rgba(10, 52, 52, .10);

  border-radius: 18px;

  background:
    rgba(250, 247, 241, .84);
}


/* number */

.xh-our-story-page
.xs-impact-number {
  display: grid;

  width: 39px;
  height: 39px;

  place-items: center;

  border-radius: 50%;

  background: #E3ECE5;

  color: #E47D6B;

  font-size: 10px;
  font-weight: 900;
}


/* small text */

.xh-our-story-page
.xs-impact-card small {
  display: block;

  margin: 2px 0 7px;

  color: rgba(10, 52, 52, .58);

  font-size: 9px;
  font-weight: 800;

  line-height: 1.2;
  letter-spacing: .08em;
}


/* heading */

.xh-our-story-page
.xs-impact-card h3 {
  margin: 0 0 10px;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size:
    clamp(22px, 1.65vw, 27px);

  font-weight: 500;

  line-height: 1.07;

  letter-spacing: -.75px;
}


/* paragraph */

.xh-our-story-page
.xs-impact-card p {
  margin: 0;

  color: rgba(10, 52, 52, .63);

  font-size: 12.5px;

  line-height: 1.66;
}


/* ============================================================
   FEATURED FINAL CARD
   ============================================================ */

.xh-our-story-page
.xs-impact-card-featured {
  border-color: #0A3434;

  background: #0A3434;
}


.xh-our-story-page
.xs-impact-card-featured
.xs-impact-number {
  background:
    rgba(250, 247, 241, .12);

  color: #E47D6B;
}


.xh-our-story-page
.xs-impact-card-featured small {
  color: #E47D6B;
}


.xh-our-story-page
.xs-impact-card-featured h3 {
  color: #FAF7F1;
}


.xh-our-story-page
.xs-impact-card-featured p {
  color:
    rgba(250, 247, 241, .63);
}


/* ============================================================
   CLOSING PRINCIPLE
   ============================================================ */

.xh-our-story-page .xs-impact-principle {
  display: grid;

  grid-template-columns:
    minmax(180px, .35fr)
    minmax(0, 1.65fr);

  gap: clamp(32px, 5vw, 72px);

  align-items: center;

  margin-top: clamp(52px, 5vw, 72px);

  padding-top: 30px;

  border-top:
    1px solid rgba(10, 52, 52, .13);
}


.xh-our-story-page
.xs-impact-principle > span {
  color: #E47D6B;

  font-size: 9px;
  font-weight: 900;

  letter-spacing: .12em;
}


.xh-our-story-page
.xs-impact-principle p {
  max-width: 850px;

  margin: 0;

  color: rgba(10, 52, 52, .69);

  font-family: var(--xh-serif);

  font-size:
    clamp(23px, 2vw, 29px);

  font-weight: 500;

  line-height: 1.17;

  letter-spacing: -.6px;
}


.xh-our-story-page
.xs-impact-principle strong {
  display: block;

  margin-top: 4px;

  color: #0A3434;

  font-weight: 600;
}


/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 1020px) {

  .xh-our-story-page
  .xs-impact-heading {
    grid-template-columns: 1fr;

    gap: 24px;
  }


  .xh-our-story-page
  .xs-impact-heading-copy {
    max-width: 680px;
  }


  .xh-our-story-page
  .xs-impact-layout {
    grid-template-columns:
      minmax(280px, .8fr)
      minmax(0, 1.2fr);

    gap: 36px;
  }

}


/* ============================================================
   SMALL TABLET
   ============================================================ */

@media (max-width: 820px) {

  .xh-our-story-page
  .xs-impact-layout {
    grid-template-columns: 1fr;

    gap: 48px;
  }


  .xh-our-story-page
  .xs-impact-visual {
    width: min(100%, 650px);

    margin: 0 auto;
  }


  .xh-our-story-page
  .xs-impact-principle {
    grid-template-columns: 1fr;

    gap: 13px;
  }

}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 600px) {

  .xh-our-story-page
  .xs-impact-heading
  #xs-impact-title {
    font-size:
      clamp(39px, 10.5vw, 48px);

    line-height: 1;

    letter-spacing: -2px;
  }


  .xh-our-story-page
  .xs-impact-heading-copy p {
    font-size: 14px;
  }


  .xh-our-story-page
  .xs-impact-art {
    min-height: 310px;

    border-radius: 21px;
  }


  .xh-our-story-page
  .xs-impact-image-note {
    position: relative;

    left: auto;
    bottom: auto;

    width: calc(100% - 24px);
    max-width: 380px;

    margin: -19px 0 0 24px;
  }


  .xh-our-story-page
  .xs-impact-cards {
    grid-template-columns: 1fr;
  }


  .xh-our-story-page
  .xs-impact-card {
    min-height: 0;

    padding: 23px 21px 25px;
  }


  .xh-our-story-page
  .xs-impact-principle p {
    font-size: 22px;
  }

}




/* ============================================================
   OUR STORY — FOUNDER NOTE
   ============================================================ */

.xh-our-story-page .xs-founder-section {
  position: relative;
  overflow: hidden;
  background: #FAF7F1;
}


/* ============================================================
   LAYOUT
   ============================================================ */

.xh-our-story-page .xs-founder-story {
  display: grid;

  grid-template-columns:
    minmax(300px, 38fr)
    minmax(0, 62fr);

  gap: clamp(54px, 7vw, 100px);

  align-items: center;
}


/* ============================================================
   IMAGE
   ============================================================ */

.xh-our-story-page .xs-founder-visual {
  position: relative;

  width: 100%;
  max-width: 430px;
}


.xh-our-story-page .xs-founder-image {
  position: relative;

  overflow: hidden;

  aspect-ratio: .82 / 1;

  border-radius: 24px;

  background: #0A3434;

  box-shadow:
    0 24px 64px rgba(10, 52, 52, .13);
}


.xh-our-story-page
.xs-founder-image::before {
  content: "";

  position: absolute;
  z-index: 2;

  inset: 0;

  background:
    linear-gradient(
      to top,
      rgba(10, 52, 52, .24),
      rgba(10, 52, 52, 0) 45%
    );

  pointer-events: none;
}


.xh-our-story-page
.xs-founder-image img {
  display: block;

  width: 100%;
  height: 100%;

  object-fit: cover;
  object-position: center top;
}


/* ============================================================
   IDENTITY
   ============================================================ */

.xh-our-story-page .xs-founder-identity {
  margin-top: 17px;

  padding-left: 2px;
}


.xh-our-story-page
.xs-founder-identity strong {
  display: block;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size: 21px;
  font-weight: 500;

  line-height: 1.1;
}


.xh-our-story-page
.xs-founder-identity span {
  display: block;

  margin-top: 5px;

  color: rgba(10, 52, 52, .57);

  font-size: 11px;
}


/* ============================================================
   COPY
   ============================================================ */

.xh-our-story-page .xs-founder-copy {
  max-width: 720px;
}


.xh-our-story-page
.xs-founder-copy h2 {
  max-width: 700px;

  margin: 17px 0 26px;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size: clamp(43px, 4vw, 61px);
  font-weight: 500;

  line-height: 1;

  letter-spacing: -2.6px;

  text-wrap: balance;
}


.xh-our-story-page
.xs-founder-copy h2 span {
  display: block;

  color: #E47D6B !important;
}


.xh-our-story-page
.xs-founder-copy p {
  max-width: 650px;

  margin: 0;

  color: rgba(10, 52, 52, .68);

  font-size: 15px;

  line-height: 1.78;
}


.xh-our-story-page
.xs-founder-copy
.xs-founder-lead {
  color: rgba(10, 52, 52, .78);

  font-size: 17px;
}


.xh-our-story-page
.xs-founder-copy p + p {
  margin-top: 17px;
}


/* ============================================================
   FOUNDER QUOTE
   ============================================================ */

.xh-our-story-page .xs-founder-quote {
  position: relative;

  max-width: 660px;

  margin: 30px 0 0;

  padding: 26px 28px 27px;

  border-left: 3px solid #E47D6B;

  border-radius: 0 17px 17px 0;

  background: #E3ECE5;

  color: rgba(10, 52, 52, .72);

  font-family: var(--xh-serif);

  font-size: clamp(22px, 1.9vw, 28px);
  font-weight: 500;

  line-height: 1.2;

  letter-spacing: -.6px;
}


.xh-our-story-page
.xs-founder-quote strong {
  color: #0A3434;

  font-weight: 600;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width: 900px) {

  .xh-our-story-page .xs-founder-story {
    grid-template-columns: 1fr;

    gap: 42px;
  }


  .xh-our-story-page .xs-founder-visual {
    max-width: 400px;
  }


  .xh-our-story-page .xs-founder-copy {
    max-width: 760px;
  }

}


@media (max-width: 600px) {

  .xh-our-story-page
  .xs-founder-copy h2 {
    font-size:
      clamp(38px, 10.2vw, 47px);

    line-height: 1;

    letter-spacing: -2px;
  }


  .xh-our-story-page
  .xs-founder-copy
  .xs-founder-lead {
    font-size: 15px;
  }


  .xh-our-story-page
  .xs-founder-quote {
    padding: 22px 21px 23px;

    font-size: 21px;
  }

}









/* ============================================================
   OUR STORY — FAQ
   ============================================================ */

.xh-our-story-page .xs-faq-section {
  position: relative;
  overflow: hidden;

  background: #E3ECE5;
}


/* ============================================================
   HEADING
   ============================================================ */

.xh-our-story-page .xs-faq-heading {
  display: grid;

  grid-template-columns:
    minmax(0, 1.08fr)
    minmax(360px, .92fr);

  gap: clamp(52px, 7vw, 96px);

  align-items: end;

  margin-bottom: clamp(52px, 6vw, 76px);
}


.xh-our-story-page
.xs-faq-heading
#xs-faq-title {
  max-width: 690px;

  margin: 17px 0 0;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size: clamp(46px, 4.25vw, 64px);
  font-weight: 500;

  line-height: 1;
  letter-spacing: -2.8px;

  text-wrap: balance;
}


.xh-our-story-page
.xs-faq-heading
#xs-faq-title span {
  display: block;

  color: #E47D6B !important;
}


.xh-our-story-page .xs-faq-heading-copy {
  max-width: 540px;
}


.xh-our-story-page
.xs-faq-heading-copy p {
  margin: 0;

  color: rgba(10, 52, 52, .69);

  font-size: 15px;
  line-height: 1.75;
}


/* ============================================================
   MAIN LAYOUT
   ============================================================ */

.xh-our-story-page .xs-faq-layout {
  display: grid;

  grid-template-columns:
    minmax(320px, 40fr)
    minmax(0, 60fr);

  gap: clamp(46px, 6vw, 82px);

  align-items: start;
}


/* ============================================================
   VISUAL
   ============================================================ */

.xh-our-story-page .xs-faq-visual {
  position: sticky;

  top: 120px;

  width: 100%;
  min-width: 0;

  padding-bottom: 42px;
}


.xh-our-story-page .xs-faq-art {
  position: relative;

  display: flex;

  align-items: center;
  justify-content: center;

  min-height: 430px;

  overflow: hidden;

  border-radius: 28px;

  background: #FAF7F1;

  box-shadow:
    0 22px 58px rgba(10, 52, 52, .07);
}


/* coral decoration */

.xh-our-story-page
.xs-faq-art::before {
  content: "";

  position: absolute;

  width: 230px;
  height: 230px;

  top: -100px;
  right: -80px;

  border:
    1px solid rgba(228, 125, 107, .35);

  border-radius: 50%;
}


/* sage decoration */

.xh-our-story-page
.xs-faq-art::after {
  content: "";

  position: absolute;

  width: 165px;
  height: 165px;

  left: -70px;
  bottom: -75px;

  border-radius: 50%;

  background:
    rgba(227, 236, 229, .80);
}


/* image */

.xh-our-story-page
.xs-faq-art img {
  position: relative !important;

  z-index: 2;

  display: block !important;

  width: 108% !important;
  max-width: 610px !important;

  height: auto !important;

  margin: 0 -4% !important;

  object-fit: contain !important;

  transform: none !important;
}


/* ============================================================
   IMAGE NOTE
   ============================================================ */

.xh-our-story-page .xs-faq-image-note {
  position: absolute;

  z-index: 4;

  left: 20px;
  bottom: 0;

  max-width: 345px;

  padding: 17px 20px 19px;

  border:
    1px solid rgba(10, 52, 52, .08);

  border-radius: 16px;

  background: #FAF7F1;

  box-shadow:
    0 16px 42px rgba(10, 52, 52, .10);
}


.xh-our-story-page
.xs-faq-image-note > span {
  display: block;

  margin-bottom: 7px;

  color: #E47D6B;

  font-size: 9px;
  font-weight: 900;

  line-height: 1;
  letter-spacing: .12em;
}


.xh-our-story-page
.xs-faq-image-note p {
  margin: 0;

  color: rgba(10, 52, 52, .65);

  font-size: 13px;
  line-height: 1.55;
}


.xh-our-story-page
.xs-faq-image-note strong {
  display: block;

  margin-top: 2px;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size: 19px;
  font-weight: 500;

  line-height: 1.12;
  letter-spacing: -.45px;
}


/* ============================================================
   FAQ LIST
   ============================================================ */

.xh-our-story-page .xs-faq-list {
  display: grid;

  gap: 11px;

  min-width: 0;
}


/* ============================================================
   FAQ ITEM
   ============================================================ */

.xh-our-story-page .xs-faq-item {
  overflow: hidden;

  border:
    1px solid rgba(10, 52, 52, .10);

  border-radius: 17px;

  background:
    rgba(250, 247, 241, .86);

  transition:
    border-color .25s ease,
    box-shadow .25s ease;
}


.xh-our-story-page
.xs-faq-item[open] {
  border-color:
    rgba(228, 125, 107, .35);

  box-shadow:
    0 14px 34px rgba(10, 52, 52, .055);
}


/* remove browser marker */

.xh-our-story-page
.xs-faq-item summary {
  list-style: none;
}


.xh-our-story-page
.xs-faq-item summary::-webkit-details-marker {
  display: none;
}


/* ============================================================
   QUESTION
   ============================================================ */

.xh-our-story-page
.xs-faq-item summary {
  display: grid;

  grid-template-columns:
    38px minmax(0, 1fr) 30px;

  gap: 15px;

  align-items: center;

  padding: 22px 23px;

  cursor: pointer;
}


/* number */

.xh-our-story-page .xs-faq-number {
  color: #E47D6B;

  font-family: var(--xh-serif);

  font-size: 13px;
  font-weight: 500;
}


/* question */

.xh-our-story-page .xs-faq-question {
  color: #0A3434;

  font-family: var(--xh-serif);

  font-size: clamp(19px, 1.45vw, 23px);
  font-weight: 500;

  line-height: 1.12;

  letter-spacing: -.5px;
}


/* ============================================================
   PLUS / MINUS
   ============================================================ */

.xh-our-story-page .xs-faq-toggle {
  position: relative;

  display: block;

  width: 28px;
  height: 28px;

  border-radius: 50%;

  background: #E3ECE5;
}


.xh-our-story-page
.xs-faq-toggle::before,
.xh-our-story-page
.xs-faq-toggle::after {
  content: "";

  position: absolute;

  top: 50%;
  left: 50%;

  width: 10px;
  height: 1.5px;

  background: #0A3434;

  transform:
    translate(-50%, -50%);
}


.xh-our-story-page
.xs-faq-toggle::after {
  transform:
    translate(-50%, -50%)
    rotate(90deg);

  transition:
    transform .22s ease;
}


.xh-our-story-page
.xs-faq-item[open]
.xs-faq-toggle::after {
  transform:
    translate(-50%, -50%)
    rotate(0deg);
}


/* ============================================================
   ANSWER
   ============================================================ */

.xh-our-story-page .xs-faq-answer {
  padding:
    0 68px 23px 76px;
}


.xh-our-story-page
.xs-faq-answer p {
  max-width: 660px;

  margin: 0;

  color: rgba(10, 52, 52, .65);

  font-size: 13.5px;
  line-height: 1.72;
}


/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 1020px) {

  .xh-our-story-page
  .xs-faq-heading {
    grid-template-columns: 1fr;

    gap: 24px;
  }


  .xh-our-story-page
  .xs-faq-heading-copy {
    max-width: 680px;
  }


  .xh-our-story-page
  .xs-faq-layout {
    grid-template-columns:
      minmax(280px, .8fr)
      minmax(0, 1.2fr);

    gap: 36px;
  }

}


/* ============================================================
   SMALL TABLET
   ============================================================ */

@media (max-width: 820px) {

  .xh-our-story-page
  .xs-faq-layout {
    grid-template-columns: 1fr;

    gap: 48px;
  }


  .xh-our-story-page
  .xs-faq-visual {
    position: relative;

    top: auto;

    width: min(100%, 620px);

    margin: 0 auto;
  }

}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 600px) {

  .xh-our-story-page
  .xs-faq-heading
  #xs-faq-title {
    font-size:
      clamp(39px, 10.5vw, 48px);

    line-height: 1;

    letter-spacing: -2px;
  }


  .xh-our-story-page
  .xs-faq-heading-copy p {
    font-size: 14px;
  }


  .xh-our-story-page
  .xs-faq-art {
    min-height: 300px;

    border-radius: 21px;
  }


  .xh-our-story-page
  .xs-faq-image-note {
    position: relative;

    left: auto;
    bottom: auto;

    width: calc(100% - 24px);
    max-width: 380px;

    margin: -18px 0 0 24px;
  }


  .xh-our-story-page
  .xs-faq-item summary {
    grid-template-columns:
      28px minmax(0, 1fr) 28px;

    gap: 10px;

    padding: 19px 17px;
  }


  .xh-our-story-page
  .xs-faq-answer {
    padding:
      0 48px 20px 55px;
  }


  .xh-our-story-page
  .xs-faq-question {
    font-size: 19px;
  }

}









/* ============================================================
   OUR STORY — FINAL CTA
   ============================================================ */

.xh-our-story-page .xs-final-cta {
  position: relative;
  overflow: hidden;

  padding:
    clamp(70px, 7vw, 104px) 0
    clamp(78px, 8vw, 116px);

  background: #FAF7F1;
}


/* ============================================================
   CTA CARD
   ============================================================ */

.xh-our-story-page .xs-final-card {
  position: relative;
  overflow: hidden;

  display: grid;

  grid-template-columns:
    minmax(0, 1.35fr)
    minmax(300px, .65fr);

  gap: clamp(50px, 7vw, 96px);

  align-items: center;

  padding:
    clamp(48px, 5.5vw, 76px)
    clamp(42px, 6vw, 82px);

  border-radius: 30px;

  background: #0A3434;

  box-shadow:
    0 28px 80px rgba(10, 52, 52, .13);
}


/* subtle decorative circle */

.xh-our-story-page
.xs-final-card::before {
  content: "";

  position: absolute;

  width: 430px;
  height: 430px;

  top: -280px;
  right: -110px;

  border:
    1px solid rgba(250, 247, 241, .12);

  border-radius: 50%;

  pointer-events: none;
}


/* coral glow */

.xh-our-story-page
.xs-final-card::after {
  content: "";

  position: absolute;

  width: 250px;
  height: 250px;

  left: -150px;
  bottom: -170px;

  border-radius: 50%;

  background:
    rgba(228, 125, 107, .12);

  pointer-events: none;
}


/* ============================================================
   LEFT COPY
   ============================================================ */

.xh-our-story-page .xs-final-copy {
  position: relative;
  z-index: 2;

  max-width: 720px;
}


.xh-our-story-page .xs-final-eyebrow {
  display: block;

  margin-bottom: 17px;

  color: #E47D6B;

  font-size: 9px;
  font-weight: 900;

  line-height: 1;

  letter-spacing: .13em;

  text-transform: uppercase;
}


.xh-our-story-page
.xs-final-copy h2 {
  max-width: 650px;

  margin: 0 0 23px;

  color: #FAF7F1;

  font-family: var(--xh-serif);

  font-size:
    clamp(48px, 4.7vw, 68px);

  font-weight: 500;

  line-height: .98;

  letter-spacing: -3px;

  text-wrap: balance;
}


.xh-our-story-page
.xs-final-copy h2 span {
  display: block;

  color: #E47D6B;
}


.xh-our-story-page
.xs-final-copy > p {
  max-width: 640px;

  margin: 0;

  color:
    rgba(250, 247, 241, .70);

  font-size: 16px;

  line-height: 1.72;
}


/* ============================================================
   THREE REASSURANCE POINTS
   ============================================================ */

.xh-our-story-page
.xs-final-reassurance {
  display: flex;

  flex-wrap: wrap;

  gap: 10px 24px;

  margin-top: 29px;

  padding-top: 24px;

  border-top:
    1px solid rgba(250, 247, 241, .12);
}


.xh-our-story-page
.xs-final-reassurance span {
  display: inline-flex;

  align-items: center;

  gap: 8px;

  color:
    rgba(250, 247, 241, .64);

  font-size: 11px;
  line-height: 1.4;
}


.xh-our-story-page
.xs-final-reassurance b {
  display: grid;

  width: 25px;
  height: 25px;

  place-items: center;

  flex: 0 0 25px;

  border-radius: 50%;

  background:
    rgba(250, 247, 241, .09);

  color: #E47D6B;

  font-size: 8px;
  font-weight: 900;
}


/* ============================================================
   ACTION AREA
   ============================================================ */

.xh-our-story-page .xs-final-action {
  position: relative;
  z-index: 2;

  padding: 29px;

  border:
    1px solid rgba(250, 247, 241, .12);

  border-radius: 21px;

  background:
    rgba(250, 247, 241, .055);
}


.xh-our-story-page
.xs-final-action-note {
  margin: 0 0 22px;

  color:
    rgba(250, 247, 241, .66);

  font-family: var(--xh-serif);

  font-size: 22px;
  font-weight: 500;

  line-height: 1.2;

  letter-spacing: -.45px;
}


.xh-our-story-page
.xs-final-action-note strong {
  display: block;

  color: #FAF7F1;

  font-weight: 500;
}


/* ============================================================
   PRIMARY BUTTON
   ============================================================ */

.xh-our-story-page
.xs-final-primary {
  display: inline-flex;

  width: 100%;

  align-items: center;
  justify-content: space-between;

  gap: 20px;

  padding: 16px 20px;

  border: 0;

  border-radius: 999px;

  background: #E47D6B;

  color: #FAF7F1;

  font-size: 12px;
  font-weight: 800;

  text-decoration: none;

  transition:
    transform .22s ease,
    box-shadow .22s ease;
}


.xh-our-story-page
.xs-final-primary:hover {
  transform: translateY(-2px);

  box-shadow:
    0 12px 30px rgba(0, 0, 0, .16);
}


.xh-our-story-page
.xs-final-primary > span {
  font-size: 17px;
}


/* small reassurance */

.xh-our-story-page
.xs-final-action small {
  display: block;

  margin-top: 12px;

  color:
    rgba(250, 247, 241, .45);

  font-size: 10px;

  text-align: center;
}


/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 900px) {

  .xh-our-story-page
  .xs-final-card {
    grid-template-columns: 1fr;

    gap: 42px;
  }


  .xh-our-story-page
  .xs-final-action {
    max-width: 480px;
  }

}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 600px) {

  .xh-our-story-page
  .xs-final-cta {
    padding:
      54px 0 72px;
  }


  .xh-our-story-page
  .xs-final-card {
    padding:
      38px 25px 30px;

    border-radius: 24px;
  }


  .xh-our-story-page
  .xs-final-copy h2 {
    font-size:
      clamp(40px, 11vw, 49px);

    line-height: 1;

    letter-spacing: -2.2px;
  }


  .xh-our-story-page
  .xs-final-copy > p {
    font-size: 14px;
  }


  .xh-our-story-page
  .xs-final-reassurance {
    display: grid;

    gap: 12px;
  }


  .xh-our-story-page
  .xs-final-action {
    padding: 23px 20px;
  }


  .xh-our-story-page
  .xs-final-action-note {
    font-size: 20px;
  }

}

/* ============================================================
   XTRIBE OUR STORY — VISUAL CONSISTENCY PASS
   V59.18

   Purpose:
   - one inner-page shell and vertical rhythm
   - one H2 hierarchy across all story sections
   - consistent intro-copy sizing and spacing
   - consistent cards, image frames and floating notes
   - cleaner tablet/mobile behavior

   This layer intentionally comes last and is the final authority
   for Our Story visual rhythm. Hero keeps its wider 1360px shell.
   ============================================================ */

.xh-our-story-page {
  --xs-content-shell: 1240px;
  --xs-section-y: clamp(82px, 7.4vw, 118px);
  --xs-heading-gap: clamp(46px, 6vw, 82px);
  --xs-heading-bottom: clamp(48px, 5.2vw, 68px);
  --xs-h2-size: clamp(46px, 4vw, 62px);
  --xs-h2-line: 1;
  --xs-h2-track: -2.65px;
  --xs-body-size: 15px;
  --xs-body-line: 1.74;
  --xs-card-radius: 18px;
  --xs-art-radius: 26px;
  --xs-card-border: rgba(10, 52, 52, .10);
  --xs-copy: rgba(10, 52, 52, .69);
  --xs-copy-dark: rgba(250, 247, 241, .68);
}

/* ------------------------------------------------------------
   Global story shell + section rhythm
   ------------------------------------------------------------ */

.xh-our-story-page .xs-shell {
  width: min(var(--xs-content-shell), calc(100% - 64px));
}

.xh-our-story-page .xs-section {
  padding-block: var(--xs-section-y);
}

/* Hero remains intentionally wider than editorial sections. */
.xh-our-story-page .xs-hero .xs-shell {
  width: min(1360px, calc(100% - 64px));
}

/* ------------------------------------------------------------
   Shared section-heading architecture
   ------------------------------------------------------------ */

.xh-our-story-page .xs-problem-heading,
.xh-our-story-page .xs-difference-heading,
.xh-our-story-page .xs-introduction-heading,
.xh-our-story-page .xs-community-heading,
.xh-our-story-page .xs-impact-heading,
.xh-our-story-page .xs-faq-heading {
  grid-template-columns: minmax(0, 56fr) minmax(340px, 44fr);
  gap: var(--xs-heading-gap);
  margin-bottom: var(--xs-heading-bottom);
}

.xh-our-story-page .xs-beliefs-heading-grid {
  grid-template-columns: minmax(0, 56fr) minmax(340px, 44fr);
  gap: var(--xs-heading-gap);
}

.xh-our-story-page .xs-beliefs-heading {
  margin-bottom: var(--xs-heading-bottom);
}

/* ------------------------------------------------------------
   One non-hero H2 system
   ------------------------------------------------------------ */

.xh-our-story-page .xs-origin-copy #xs-origin-heading,
.xh-our-story-page .xs-problem-heading #xs-problem-title,
.xh-our-story-page .xs-model-copy #xs-model-title,
.xh-our-story-page .xs-beliefs-heading #xs-beliefs-title,
.xh-our-story-page .xs-difference-heading #xs-difference-title,
.xh-our-story-page .xs-introduction-heading #xs-intro-title,
.xh-our-story-page .xs-community-heading #xs-community-title,
.xh-our-story-page .xs-impact-heading #xs-impact-title,
.xh-our-story-page .xs-founder-copy h2,
.xh-our-story-page .xs-faq-heading #xs-faq-title {
  font-size: var(--xs-h2-size);
  line-height: var(--xs-h2-line);
  letter-spacing: var(--xs-h2-track);
}

/* Keep the emphasis line visually deliberate. */
.xh-our-story-page .xs-origin-copy #xs-origin-heading span,
.xh-our-story-page .xs-problem-heading #xs-problem-title span,
.xh-our-story-page .xs-model-copy #xs-model-title span,
.xh-our-story-page .xs-beliefs-heading #xs-beliefs-title span,
.xh-our-story-page .xs-difference-heading #xs-difference-title span,
.xh-our-story-page .xs-introduction-heading #xs-intro-title span,
.xh-our-story-page .xs-community-heading #xs-community-title span,
.xh-our-story-page .xs-impact-heading #xs-impact-title span,
.xh-our-story-page .xs-founder-copy h2 span,
.xh-our-story-page .xs-faq-heading #xs-faq-title span {
  display: block;
  color: #E47D6B;
}

/* ------------------------------------------------------------
   Consistent supporting copy
   ------------------------------------------------------------ */

.xh-our-story-page .xs-problem-heading-copy p,
.xh-our-story-page .xs-difference-heading-copy p,
.xh-our-story-page .xs-introduction-heading-copy p,
.xh-our-story-page .xs-impact-heading-copy p,
.xh-our-story-page .xs-faq-heading-copy p,
.xh-our-story-page .xs-beliefs-intro-copy p {
  font-size: var(--xs-body-size);
  line-height: var(--xs-body-line);
  color: var(--xs-copy);
}

.xh-our-story-page .xs-community-heading-copy p,
.xh-our-story-page .xs-model-lead p {
  font-size: var(--xs-body-size);
  line-height: var(--xs-body-line);
  color: var(--xs-copy-dark);
}

.xh-our-story-page .xs-origin-lead {
  font-size: 16px;
  line-height: 1.76;
}

/* ------------------------------------------------------------
   Consistent two-column visual layouts
   ------------------------------------------------------------ */

.xh-our-story-page .xs-origin-intro,
.xh-our-story-page .xs-model-intro {
  grid-template-columns: minmax(0, 54fr) minmax(0, 46fr);
  gap: clamp(52px, 6vw, 82px);
}

.xh-our-story-page .xs-problem-layout,
.xh-our-story-page .xs-difference-layout,
.xh-our-story-page .xs-introduction-layout,
.xh-our-story-page .xs-community-layout,
.xh-our-story-page .xs-impact-layout {
  grid-template-columns: minmax(330px, 42fr) minmax(0, 58fr);
  gap: clamp(44px, 5.4vw, 74px);
}

/* ------------------------------------------------------------
   Image frame consistency
   ------------------------------------------------------------ */

.xh-our-story-page .xs-origin-art,
.xh-our-story-page .xs-problem-image,
.xh-our-story-page .xs-difference-image,
.xh-our-story-page .xs-introduction-art,
.xh-our-story-page .xs-impact-art,
.xh-our-story-page .xs-faq-art {
  border-radius: var(--xs-art-radius);
}

.xh-our-story-page .xs-origin-art,
.xh-our-story-page .xs-problem-image,
.xh-our-story-page .xs-difference-image,
.xh-our-story-page .xs-introduction-art,
.xh-our-story-page .xs-impact-art,
.xh-our-story-page .xs-faq-art,
.xh-our-story-page .xs-model-art,
.xh-our-story-page .xs-community-art {
  min-height: clamp(390px, 34vw, 455px);
}

/* The artwork is supporting content, never a second hero. */
.xh-our-story-page .xs-origin-art img,
.xh-our-story-page .xs-problem-image img,
.xh-our-story-page .xs-difference-image img,
.xh-our-story-page .xs-introduction-art img,
.xh-our-story-page .xs-model-art img,
.xh-our-story-page .xs-community-art img,
.xh-our-story-page .xs-impact-art img,
.xh-our-story-page .xs-faq-art img {
  max-height: 520px;
}

/* ------------------------------------------------------------
   Floating image-note consistency
   ------------------------------------------------------------ */

.xh-our-story-page .xs-origin-image-note,
.xh-our-story-page .xs-problem-visual-caption,
.xh-our-story-page .xs-difference-caption,
.xh-our-story-page .xs-introduction-caption,
.xh-our-story-page .xs-model-visual-note,
.xh-our-story-page .xs-community-image-note,
.xh-our-story-page .xs-impact-image-note,
.xh-our-story-page .xs-faq-image-note {
  max-width: 345px;
  padding: 17px 20px 19px;
  border-radius: 16px;
}

.xh-our-story-page .xs-origin-image-note > span,
.xh-our-story-page .xs-problem-visual-caption > span,
.xh-our-story-page .xs-difference-caption > span,
.xh-our-story-page .xs-introduction-caption > span,
.xh-our-story-page .xs-model-visual-note > span,
.xh-our-story-page .xs-community-image-note > span,
.xh-our-story-page .xs-impact-image-note > span,
.xh-our-story-page .xs-faq-image-note > span {
  font-size: 9px;
  line-height: 1;
  letter-spacing: .12em;
}

/* ------------------------------------------------------------
   Card consistency
   ------------------------------------------------------------ */

.xh-our-story-page .xs-problem-card,
.xh-our-story-page .xs-model-step,
.xh-our-story-page .xs-belief,
.xh-our-story-page .xs-difference-card,
.xh-our-story-page .xs-introduction-card,
.xh-our-story-page .xs-community-feature,
.xh-our-story-page .xs-impact-card,
.xh-our-story-page .xs-faq-item {
  border-radius: var(--xs-card-radius);
}

.xh-our-story-page .xs-problem-card,
.xh-our-story-page .xs-introduction-card {
  padding: 25px 26px;
}

.xh-our-story-page .xs-community-feature {
  padding: 22px 21px 23px;
}

.xh-our-story-page .xs-belief,
.xh-our-story-page .xs-impact-card,
.xh-our-story-page .xs-model-step {
  min-height: 0;
}

/* Hover motion is intentionally restrained on an editorial page. */
.xh-our-story-page .xs-problem-card:hover,
.xh-our-story-page .xs-introduction-card:hover {
  transform: translateY(-3px);
}

/* ------------------------------------------------------------
   Section-specific balance refinements
   ------------------------------------------------------------ */

/* Realisation: keep story copy vertically relaxed. */
.xh-our-story-page .xs-origin-question {
  margin-top: 18px;
}

.xh-our-story-page .xs-origin-journey {
  margin-top: clamp(64px, 6.8vw, 92px);
}

/* Model: reduce the visual gap before the five-step explanation. */
.xh-our-story-page .xs-model-intro {
  margin-bottom: clamp(58px, 6vw, 82px);
}

/* Beliefs: visual should support, not dominate. */
.xh-our-story-page .xs-beliefs-art {
  min-height: 360px;
  max-width: 460px;
  margin-inline: auto;
}

.xh-our-story-page .xs-beliefs-art img {
  max-height: 430px;
}

/* Founder note is a quieter editorial close, not another hero. */
.xh-our-story-page .xs-founder-story {
  grid-template-columns: minmax(280px, 36fr) minmax(0, 64fr);
  gap: clamp(54px, 6vw, 88px);
}

.xh-our-story-page .xs-founder-visual {
  max-width: 390px;
}

.xh-our-story-page .xs-founder-quote {
  margin-top: 26px;
}

/* FAQ visual remains useful on desktop but never over-large. */
.xh-our-story-page .xs-faq-visual {
  top: 108px;
}

/* Final CTA: keep it visually decisive but slightly more compact. */
.xh-our-story-page .xs-final-cta {
  padding-block: clamp(70px, 7vw, 104px);
}

.xh-our-story-page .xs-final-card {
  border-radius: 28px;
  gap: clamp(44px, 6vw, 78px);
}

.xh-our-story-page .xs-final-copy h2 {
  font-size: clamp(48px, 4.4vw, 66px);
  line-height: .99;
  letter-spacing: -2.9px;
}

/* ------------------------------------------------------------
   Desktop tightening: avoid over-wide paragraphs/cards
   ------------------------------------------------------------ */

@media (min-width: 1101px) {
  .xh-our-story-page .xs-problem-heading-copy,
  .xh-our-story-page .xs-difference-heading-copy,
  .xh-our-story-page .xs-introduction-heading-copy,
  .xh-our-story-page .xs-community-heading-copy,
  .xh-our-story-page .xs-impact-heading-copy,
  .xh-our-story-page .xs-faq-heading-copy,
  .xh-our-story-page .xs-beliefs-intro-copy {
    justify-self: end;
    width: 100%;
    max-width: 535px;
  }
}

/* ------------------------------------------------------------
   Tablet
   ------------------------------------------------------------ */

@media (max-width: 1040px) {
  .xh-our-story-page {
    --xs-section-y: clamp(72px, 8vw, 96px);
    --xs-h2-size: clamp(43px, 5.4vw, 56px);
    --xs-h2-track: -2.3px;
  }

  .xh-our-story-page .xs-shell,
  .xh-our-story-page .xs-hero .xs-shell {
    width: min(100% - 44px, 1180px);
  }

  .xh-our-story-page .xs-problem-heading,
  .xh-our-story-page .xs-difference-heading,
  .xh-our-story-page .xs-introduction-heading,
  .xh-our-story-page .xs-community-heading,
  .xh-our-story-page .xs-impact-heading,
  .xh-our-story-page .xs-faq-heading,
  .xh-our-story-page .xs-beliefs-heading-grid {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .xh-our-story-page .xs-problem-heading-copy,
  .xh-our-story-page .xs-difference-heading-copy,
  .xh-our-story-page .xs-introduction-heading-copy,
  .xh-our-story-page .xs-community-heading-copy,
  .xh-our-story-page .xs-impact-heading-copy,
  .xh-our-story-page .xs-faq-heading-copy,
  .xh-our-story-page .xs-beliefs-intro-copy {
    max-width: 700px;
  }

  .xh-our-story-page .xs-origin-intro,
  .xh-our-story-page .xs-model-intro {
    gap: 42px;
  }
}

/* ------------------------------------------------------------
   Stack visual/content layouts before they become cramped
   ------------------------------------------------------------ */

@media (max-width: 860px) {
  .xh-our-story-page .xs-origin-intro,
  .xh-our-story-page .xs-model-intro,
  .xh-our-story-page .xs-problem-layout,
  .xh-our-story-page .xs-difference-layout,
  .xh-our-story-page .xs-introduction-layout,
  .xh-our-story-page .xs-community-layout,
  .xh-our-story-page .xs-impact-layout,
  .xh-our-story-page .xs-founder-story,
  .xh-our-story-page .xs-faq-layout {
    grid-template-columns: 1fr;
  }

  .xh-our-story-page .xs-origin-visual,
  .xh-our-story-page .xs-problem-visual,
  .xh-our-story-page .xs-difference-visual,
  .xh-our-story-page .xs-introduction-visual,
  .xh-our-story-page .xs-model-visual,
  .xh-our-story-page .xs-community-visual,
  .xh-our-story-page .xs-impact-visual,
  .xh-our-story-page .xs-faq-visual {
    width: min(100%, 650px);
    margin-inline: auto;
  }

  .xh-our-story-page .xs-founder-visual {
    max-width: 390px;
  }

  .xh-our-story-page .xs-faq-visual {
    position: relative;
    top: auto;
  }
}

/* ------------------------------------------------------------
   Mobile
   ------------------------------------------------------------ */

@media (max-width: 600px) {
  .xh-our-story-page {
    --xs-section-y: 64px;
    --xs-h2-size: clamp(38px, 10.2vw, 47px);
    --xs-h2-line: 1;
    --xs-h2-track: -2px;
    --xs-heading-bottom: 38px;
    --xs-body-size: 14px;
  }

  .xh-our-story-page .xs-shell,
  .xh-our-story-page .xs-hero .xs-shell {
    width: min(100% - 28px, 1180px);
  }

  .xh-our-story-page .xs-eyebrow {
    font-size: 9px;
    letter-spacing: .12em;
  }

  .xh-our-story-page .xs-origin-art,
  .xh-our-story-page .xs-problem-image,
  .xh-our-story-page .xs-difference-image,
  .xh-our-story-page .xs-introduction-art,
  .xh-our-story-page .xs-model-art,
  .xh-our-story-page .xs-community-art,
  .xh-our-story-page .xs-impact-art,
  .xh-our-story-page .xs-faq-art {
    min-height: 300px;
    border-radius: 21px;
  }

  .xh-our-story-page .xs-origin-image-note,
  .xh-our-story-page .xs-problem-visual-caption,
  .xh-our-story-page .xs-difference-caption,
  .xh-our-story-page .xs-introduction-caption,
  .xh-our-story-page .xs-model-visual-note,
  .xh-our-story-page .xs-community-image-note,
  .xh-our-story-page .xs-impact-image-note,
  .xh-our-story-page .xs-faq-image-note {
    width: calc(100% - 22px);
    max-width: 380px;
    padding: 16px 18px 18px;
  }

  .xh-our-story-page .xs-founder-visual {
    max-width: 340px;
  }

  .xh-our-story-page .xs-final-card {
    border-radius: 23px;
  }
}


/* ============================================================
   V59.20 — OUR STORY RESPONSIVE IMAGE DELIVERY
   <picture> remains layout-neutral so the existing section image
   sizing/cropping rules continue to apply to the fallback <img>.
   ============================================================ */
.xh-our-story-page .xs-story-picture {
  display: contents;
}


/* ============================================================
   XTRIBE OUR STORY — FINAL PAGE POLISH
   V59.21

   Purpose:
   - reduce repeated visual-caption cards
   - alternate image/content placement for a more editorial rhythm
   - tighten a long-form page without making it feel compressed
   - keep illustrations supportive rather than dominant
   ============================================================ */

.xh-our-story-page {
  --xs-section-y: clamp(76px, 6.7vw, 106px);
  --xs-heading-bottom: clamp(44px, 4.8vw, 62px);
}

/* The six simplified visuals no longer need space reserved for a
   floating caption card. */
.xh-our-story-page .xs-problem-visual,
.xh-our-story-page .xs-difference-visual,
.xh-our-story-page .xs-introduction-visual,
.xh-our-story-page .xs-impact-visual,
.xh-our-story-page .xs-faq-visual {
  padding-bottom: 0;
}

.xh-our-story-page .xs-beliefs-visual {
  padding-bottom: 0;
}

/* Keep these three notes because they mark genuine narrative pivots:
   origin story, context-before-conversation, and continuity. */
.xh-our-story-page .xs-origin-image-note,
.xh-our-story-page .xs-model-visual-note,
.xh-our-story-page .xs-community-image-note {
  max-width: 325px;
}

/* Slightly quieter image treatment across the long page. */
.xh-our-story-page .xs-problem-image,
.xh-our-story-page .xs-difference-image,
.xh-our-story-page .xs-introduction-art,
.xh-our-story-page .xs-impact-art,
.xh-our-story-page .xs-faq-art {
  box-shadow: 0 18px 46px rgba(10, 52, 52, .055);
}

.xh-our-story-page .xs-problem-image img,
.xh-our-story-page .xs-difference-image img,
.xh-our-story-page .xs-introduction-art img,
.xh-our-story-page .xs-impact-art img,
.xh-our-story-page .xs-faq-art img {
  max-height: 470px;
}

/* Keep core principles readable without turning them into additional
   hero moments. */
.xh-our-story-page .xs-problem-note,
.xh-our-story-page .xs-introduction-principle,
.xh-our-story-page .xs-difference-principle,
.xh-our-story-page .xs-impact-principle,
.xh-our-story-page .xs-model-principle,
.xh-our-story-page .xs-community-access {
  margin-top: clamp(42px, 4.5vw, 60px);
}

/* Editorial alternation on desktop. Source order stays unchanged for
   mobile and assistive technology; only the desktop visual placement
   changes. */
@media (min-width: 861px) {
  /* Beliefs: principles first, supporting illustration second. */
  .xh-our-story-page .xs-beliefs-layout {
    grid-template-columns: minmax(0, 58fr) minmax(330px, 42fr);
    gap: clamp(44px, 5.4vw, 74px);
  }

  .xh-our-story-page .xs-beliefs-grid {
    order: 1;
  }

  .xh-our-story-page .xs-beliefs-visual {
    order: 2;
  }

  /* Community: functionality/continuity first, visual second. */
  .xh-our-story-page .xs-community-layout {
    grid-template-columns: minmax(0, 58fr) minmax(330px, 42fr);
  }

  .xh-our-story-page .xs-community-features {
    order: 1;
  }

  .xh-our-story-page .xs-community-visual {
    order: 2;
  }

  /* FAQ: answers are the primary content; illustration supports them. */
  .xh-our-story-page .xs-faq-layout {
    grid-template-columns: minmax(0, 60fr) minmax(320px, 40fr);
  }

  .xh-our-story-page .xs-faq-list {
    order: 1;
  }

  .xh-our-story-page .xs-faq-visual {
    order: 2;
  }
}

/* Dense card groups need slightly less vertical weight than narrative
   sections. */
.xh-our-story-page .xs-community-feature,
.xh-our-story-page .xs-impact-card,
.xh-our-story-page .xs-belief {
  padding-block: 21px 23px;
}

/* Make the founder return feel like a quiet human close. */
.xh-our-story-page .xs-founder-section {
  padding-block: clamp(74px, 6.5vw, 98px);
}

/* CTA retains breathing room even though the body of the story is tighter. */
.xh-our-story-page .xs-final-cta {
  padding-block: clamp(72px, 6.8vw, 102px);
}

@media (max-width: 1040px) {
  .xh-our-story-page {
    --xs-section-y: clamp(68px, 7.5vw, 88px);
  }
}

@media (max-width: 860px) {
  /* Reset desktop visual ordering when stacked. */
  .xh-our-story-page .xs-beliefs-grid,
  .xh-our-story-page .xs-beliefs-visual,
  .xh-our-story-page .xs-community-features,
  .xh-our-story-page .xs-community-visual,
  .xh-our-story-page .xs-faq-list,
  .xh-our-story-page .xs-faq-visual {
    order: initial;
  }
}

@media (max-width: 600px) {
  .xh-our-story-page {
    --xs-section-y: 58px;
    --xs-heading-bottom: 34px;
  }

  .xh-our-story-page .xs-problem-image,
  .xh-our-story-page .xs-difference-image,
  .xh-our-story-page .xs-introduction-art,
  .xh-our-story-page .xs-impact-art,
  .xh-our-story-page .xs-faq-art {
    min-height: 280px;
  }

  .xh-our-story-page .xs-founder-section {
    padding-block: 60px;
  }
}









.xh-contact-page .xc-hero {
  position: relative;
  overflow: hidden;
  padding: clamp(76px, 8vw, 126px) 0 clamp(72px, 7vw, 108px);
  background: #0A3434;
}

.xh-contact-page .xc-hero::before {
  content: "";
  position: absolute;
  width: 480px;
  height: 480px;
  top: -270px;
  right: -160px;
  border: 1px solid rgba(250, 247, 241, .16);
  border-radius: 50%;
}

.xh-contact-page .xc-hero::after {
  content: "";
  position: absolute;
  width: 330px;
  height: 330px;
  left: -160px;
  bottom: -220px;
  border-radius: 50%;
  background: rgba(228, 125, 107, .16);
}

.xh-contact-page .xc-hero-intro {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(360px, 1.05fr);
  gap: clamp(34px, 6vw, 90px);
  align-items: center;
  margin-bottom: clamp(34px, 5vw, 56px);
}

.xh-contact-page .xc-hero-copy {
  max-width: 680px;
}

.xh-contact-page .xc-hero h1 {
  max-width: 660px;
  margin: 18px 0 20px;
  color: #FAF7F1;
  font-family: var(--xh-serif);
  font-size: clamp(52px, 4.8vw, 72px);
  font-weight: 500;
  line-height: .98;
  letter-spacing: -3.1px;
  text-wrap: balance;
}

.xh-contact-page .xc-hero h1 span {
  color: #E47D6B;
}

.xh-contact-page .xc-hero-lead {
  max-width: 620px;
  margin: 0 0 14px;
  color: rgba(250, 247, 241, .78);
  font-size: 17px;
  line-height: 1.76;
}

.xh-contact-page .xc-hero-sublead {
  max-width: 600px;
  margin: 0;
  color: rgba(250, 247, 241, .58);
  font-size: 14px;
  line-height: 1.72;
}

.xh-contact-page .xc-hero-visual {
  display: flex;
  justify-content: center;
  align-items: center;
}

.xh-contact-page .xc-hero-art {
  width: 100%;
  max-width: 620px;
}

.xh-contact-page .xc-hero-art img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}

.xh-contact-page .xc-hero-main {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, .84fr) minmax(420px, 1.16fr);
  gap: clamp(34px, 5vw, 62px);
  align-items: start;
}

.xh-contact-page .xc-hero-points {
  display: grid;
  gap: 0;
  border-top: 1px solid rgba(250, 247, 241, .15);
}

.xh-contact-page .xc-hero-point {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 15px;
  padding: 20px 0;
  border-bottom: 1px solid rgba(250, 247, 241, .15);
}

.xh-contact-page .xc-hero-point > span {
  color: #E47D6B;
  font-family: var(--xh-serif);
  font-size: 21px;
}

.xh-contact-page .xc-hero-point strong {
  display: block;
  margin-bottom: 5px;
  color: #FAF7F1;
  font-size: 14px;
}

.xh-contact-page .xc-hero-point p {
  margin: 0;
  color: rgba(250, 247, 241, .65);
  font-size: 13px;
  line-height: 1.62;
}

@media (max-width: 1040px) {
  .xh-contact-page .xc-hero-intro,
  .xh-contact-page .xc-hero-main {
    grid-template-columns: 1fr;
  }

  .xh-contact-page .xc-hero-copy {
    max-width: 760px;
  }

  .xh-contact-page .xc-hero-art {
    max-width: 540px;
  }
}

@media (max-width: 620px) {
  .xh-contact-page .xc-hero {
    padding-top: 62px;
  }

  .xh-contact-page .xc-hero h1 {
    font-size: clamp(42px, 10.5vw, 50px);
    letter-spacing: -2.3px;
  }

  .xh-contact-page .xc-hero-lead {
    font-size: 15px;
  }

  .xh-contact-page .xc-hero-sublead {
    font-size: 13px;
  }
}









/* ============================================================
   CONTACT — RIGHT ROUTE
   ============================================================ */

.xh-contact-page .xc-routes-v2 {
  position: relative;
  overflow: hidden;

  padding:
    clamp(78px, 7vw, 112px) 0;

  background: #FAF7F1;
}


/* ============================================================
   HEADING
   ============================================================ */

.xh-contact-page .xc-routes-heading {
  display: grid;

  grid-template-columns:
    minmax(0, 1.08fr)
    minmax(360px, .92fr);

  gap: clamp(52px, 7vw, 96px);

  align-items: end;

  margin-bottom:
    clamp(52px, 6vw, 76px);
}


.xh-contact-page
.xc-routes-heading h2 {
  max-width: 700px;

  margin: 16px 0 0;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size:
    clamp(46px, 4.25vw, 64px);

  font-weight: 500;

  line-height: 1;

  letter-spacing: -2.8px;

  text-wrap: balance;
}


.xh-contact-page
.xc-routes-heading h2 span {
  display: block;

  color: #E47D6B;
}


.xh-contact-page
.xc-routes-heading-copy {
  max-width: 550px;
}


.xh-contact-page
.xc-routes-heading-copy p {
  margin: 0;

  color:
    rgba(10, 52, 52, .69);

  font-size: 15px;

  line-height: 1.75;
}


.xh-contact-page
.xc-routes-heading-copy p + p {
  margin-top: 12px;
}


/* ============================================================
   MAIN LAYOUT
   IMAGE 40 / ROUTES 60
   ============================================================ */

.xh-contact-page
.xc-routes-layout {
  display: grid;

  grid-template-columns:
    minmax(320px, 40fr)
    minmax(0, 60fr);

  gap:
    clamp(44px, 6vw, 80px);

  align-items: center;
}


/* ============================================================
   VISUAL
   ============================================================ */

.xh-contact-page
.xc-routes-visual {
  position: relative;

  width: 100%;
  min-width: 0;

  padding-bottom: 42px;
}


.xh-contact-page
.xc-routes-art {
  position: relative;

  display: flex;

  min-height: 440px;

  align-items: center;
  justify-content: center;

  overflow: hidden;

  border-radius: 28px;

  background:
    linear-gradient(
      145deg,
      #E3ECE5 0%,
      #FAF7F1 76%
    );
}


/* coral orbit */

.xh-contact-page
.xc-routes-art::before {
  content: "";

  position: absolute;

  width: 240px;
  height: 240px;

  top: -105px;
  right: -80px;

  border:
    1px solid rgba(228, 125, 107, .34);

  border-radius: 50%;
}


/* subtle cream/sage element */

.xh-contact-page
.xc-routes-art::after {
  content: "";

  position: absolute;

  width: 165px;
  height: 165px;

  left: -70px;
  bottom: -75px;

  border-radius: 50%;

  background:
    rgba(227, 236, 229, .78);
}


/* image */

.xh-contact-page
.xc-routes-art img {
  position: relative !important;

  z-index: 2;

  display: block !important;

  width: 108% !important;

  max-width: 590px !important;

  height: auto !important;

  margin: 0 -4% !important;

  object-fit: contain !important;
}


/* ============================================================
   IMAGE NOTE
   ============================================================ */

.xh-contact-page
.xc-routes-visual-note {
  position: absolute;

  z-index: 4;

  left: 20px;
  bottom: 0;

  max-width: 335px;

  padding:
    17px 20px 19px;

  border:
    1px solid rgba(10, 52, 52, .08);

  border-radius: 16px;

  background: #FAF7F1;

  box-shadow:
    0 16px 42px
    rgba(10, 52, 52, .10);
}


.xh-contact-page
.xc-routes-visual-note > span {
  display: block;

  margin-bottom: 7px;

  color: #E47D6B;

  font-size: 9px;
  font-weight: 900;

  line-height: 1;

  letter-spacing: .12em;
}


.xh-contact-page
.xc-routes-visual-note p {
  margin: 0;

  color:
    rgba(10, 52, 52, .65);

  font-size: 13px;

  line-height: 1.55;
}


.xh-contact-page
.xc-routes-visual-note strong {
  display: block;

  margin-top: 2px;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size: 19px;
  font-weight: 500;

  line-height: 1.12;

  letter-spacing: -.45px;
}


/* ============================================================
   ROUTE GRID
   ============================================================ */

.xh-contact-page
.xc-route-grid-v2 {
  display: grid !important;

  grid-template-columns:
    repeat(2, minmax(0, 1fr)) !important;

  gap: 15px;

  min-width: 0;
}


/* ============================================================
   ROUTE CARD
   ============================================================ */

.xh-contact-page
.xc-route-grid-v2
.xc-route-card {
  display: grid;

  grid-template-columns:
    43px minmax(0, 1fr);

  gap: 16px;

  align-items: start;

  min-width: 0;
  min-height: 235px;

  padding:
    26px 24px 28px;

  border:
    1px solid rgba(10, 52, 52, .10);

  border-radius: 19px;

  background:
    rgba(255, 255, 255, .55);

  transition:
    transform .24s ease,
    border-color .24s ease,
    box-shadow .24s ease;
}


.xh-contact-page
.xc-route-grid-v2
.xc-route-card:hover {
  transform: translateY(-3px);

  border-color:
    rgba(228, 125, 107, .30);

  box-shadow:
    0 15px 36px
    rgba(10, 52, 52, .055);
}


/* number */

.xh-contact-page
.xc-route-number {
  display: grid !important;

  width: 39px;
  height: 39px;

  place-items: center;

  margin: 0 !important;

  border-radius: 50%;

  background: #E3ECE5;

  color: #E47D6B !important;

  font-family: inherit !important;

  font-size: 10px !important;

  font-weight: 900;
}


/* mini label */

.xh-contact-page
.xc-route-card small {
  display: block;

  margin: 2px 0 7px;

  color:
    rgba(10, 52, 52, .56);

  font-size: 9px;

  font-weight: 800;

  line-height: 1.2;

  letter-spacing: .08em;
}


/* heading */

.xh-contact-page
.xc-route-grid-v2
.xc-route-card h3 {
  margin: 0 0 10px;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size:
    clamp(22px, 1.65vw, 27px);

  font-weight: 500;

  line-height: 1.07;

  letter-spacing: -.75px;
}


/* paragraph */

.xh-contact-page
.xc-route-grid-v2
.xc-route-card p {
  margin: 0;

  color:
    rgba(10, 52, 52, .63);

  font-size: 12.5px;

  line-height: 1.68;
}


/* ============================================================
   BOTTOM XTRIBE NOTE
   ============================================================ */

.xh-contact-page
.xc-contact-note-v2 {
  display: grid;

  grid-template-columns:
    minmax(0, 1.3fr)
    minmax(270px, .7fr);

  gap: 36px;

  align-items: center;

  margin-top:
    clamp(52px, 5vw, 70px);

  padding:
    clamp(30px, 4vw, 44px);

  border-radius: 24px;

  background: #0A3434;
}


/* left */

.xh-contact-page
.xc-contact-note-kicker {
  display: block;

  margin-bottom: 10px;

  color: #E47D6B;

  font-size: 9px;

  font-weight: 900;

  letter-spacing: .12em;
}


.xh-contact-page
.xc-contact-note-v2 h3 {
  max-width: 660px;

  margin: 0 0 11px;

  color: #FAF7F1;

  font-family: var(--xh-serif);

  font-size:
    clamp(27px, 2.3vw, 34px);

  font-weight: 500;

  line-height: 1.08;

  letter-spacing: -1px;
}


.xh-contact-page
.xc-contact-note-v2 h3 span {
  color: #E47D6B;
}


.xh-contact-page
.xc-contact-note-v2
.xc-contact-note-copy > p {
  max-width: 670px;

  margin: 0;

  color:
    rgba(250, 247, 241, .64);

  font-size: 13px;

  line-height: 1.67;
}


/* right */

.xh-contact-page
.xc-contact-note-v2 aside {
  display: grid;

  gap: 7px;

  align-content: center;

  padding-left: 30px;

  border-left:
    1px solid
    rgba(250, 247, 241, .15);
}


.xh-contact-page
.xc-contact-note-v2 aside > span {
  color:
    rgba(250, 247, 241, .49);

  font-size: 9px;

  font-weight: 900;

  letter-spacing: .10em;
}


.xh-contact-page
.xc-contact-note-v2 aside a,
.xh-contact-page
.xc-contact-note-v2 aside strong {
  color: #E47D6B;

  font-family: var(--xh-serif);

  font-size: 20px;

  font-weight: 500;

  overflow-wrap: anywhere;
}


.xh-contact-page
.xc-contact-note-v2 aside small {
  max-width: 300px;

  color:
    rgba(250, 247, 241, .52);

  font-size: 10.5px;

  line-height: 1.55;
}


/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 1020px) {

  .xh-contact-page
  .xc-routes-heading {
    grid-template-columns: 1fr;

    gap: 24px;
  }


  .xh-contact-page
  .xc-routes-heading-copy {
    max-width: 680px;
  }


  .xh-contact-page
  .xc-routes-layout {
    grid-template-columns:
      minmax(280px, .8fr)
      minmax(0, 1.2fr);

    gap: 36px;
  }

}


/* ============================================================
   SMALL TABLET
   ============================================================ */

@media (max-width: 820px) {

  .xh-contact-page
  .xc-routes-layout {
    grid-template-columns: 1fr;

    gap: 48px;
  }


  .xh-contact-page
  .xc-routes-visual {
    width: min(100%, 620px);

    margin: 0 auto;
  }


  .xh-contact-page
  .xc-contact-note-v2 {
    grid-template-columns: 1fr;

    gap: 25px;
  }


  .xh-contact-page
  .xc-contact-note-v2 aside {
    padding:
      22px 0 0;

    border-top:
      1px solid
      rgba(250, 247, 241, .15);

    border-left: 0;
  }

}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 600px) {

  .xh-contact-page
  .xc-routes-heading h2 {
    font-size:
      clamp(39px, 10.5vw, 48px);

    line-height: 1;

    letter-spacing: -2px;
  }


  .xh-contact-page
  .xc-routes-heading-copy p {
    font-size: 14px;
  }


  .xh-contact-page
  .xc-routes-art {
    min-height: 310px;

    border-radius: 21px;
  }


  .xh-contact-page
  .xc-routes-visual-note {
    position: relative;

    left: auto;
    bottom: auto;

    width: calc(100% - 24px);

    max-width: 370px;

    margin:
      -18px 0 0 24px;
  }


  .xh-contact-page
  .xc-route-grid-v2 {
    grid-template-columns:
      1fr !important;
  }


  .xh-contact-page
  .xc-route-grid-v2
  .xc-route-card {
    min-height: 0;

    padding:
      23px 21px 25px;
  }

}









/* ============================================================
   XTRIBE CONTACT — FAQ / CLEAR ANSWERS
   Add AFTER the existing Contact page CSS.
   ============================================================ */

.xh-contact-page .xc-faq-v2 {
  position: relative;
  overflow: hidden;

  padding:
    clamp(78px, 7vw, 112px) 0;

  background: #E3ECE5;
}


/* ============================================================
   HEADING
   ============================================================ */

.xh-contact-page .xc-faq-heading {
  display: grid;

  grid-template-columns:
    minmax(0, 1.08fr)
    minmax(360px, .92fr);

  gap: clamp(52px, 7vw, 96px);

  align-items: end;

  margin-bottom:
    clamp(52px, 6vw, 76px);
}


.xh-contact-page
.xc-faq-heading h2 {
  max-width: 700px;

  margin: 16px 0 0;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size:
    clamp(46px, 4.25vw, 64px);

  font-weight: 500;

  line-height: 1;

  letter-spacing: -2.8px;

  text-wrap: balance;
}


.xh-contact-page
.xc-faq-heading h2 span {
  display: block;

  color: #E47D6B;
}


.xh-contact-page
.xc-faq-heading-copy {
  max-width: 550px;
}


.xh-contact-page
.xc-faq-heading-copy p {
  margin: 0;

  color:
    rgba(10, 52, 52, .69);

  font-size: 15px;

  line-height: 1.75;
}


.xh-contact-page
.xc-faq-heading-copy p + p {
  margin-top: 12px;
}


/* ============================================================
   MAIN LAYOUT
   ============================================================ */

.xh-contact-page .xc-faq-layout {
  display: grid;

  grid-template-columns:
    minmax(320px, 40fr)
    minmax(0, 60fr);

  gap: clamp(44px, 6vw, 80px);

  align-items: start;
}


/* ============================================================
   VISUAL
   ============================================================ */

.xh-contact-page .xc-faq-visual {
  position: sticky;

  top: 116px;

  width: 100%;
  min-width: 0;

  padding-bottom: 42px;
}


.xh-contact-page .xc-faq-art {
  position: relative;

  display: flex;

  min-height: 440px;

  align-items: center;
  justify-content: center;

  overflow: hidden;

  border-radius: 28px;

  background:
    rgba(250, 247, 241, .74);
}


/* coral orbit */

.xh-contact-page
.xc-faq-art::before {
  content: "";

  position: absolute;

  width: 235px;
  height: 235px;

  top: -105px;
  right: -80px;

  border:
    1px solid rgba(228, 125, 107, .34);

  border-radius: 50%;
}


/* cream/sage shape */

.xh-contact-page
.xc-faq-art::after {
  content: "";

  position: absolute;

  width: 165px;
  height: 165px;

  left: -70px;
  bottom: -75px;

  border-radius: 50%;

  background:
    rgba(250, 247, 241, .58);
}


.xh-contact-page
.xc-faq-art img {
  position: relative !important;

  z-index: 2;

  display: block !important;

  width: 108% !important;

  max-width: 600px !important;

  height: auto !important;

  margin: 0 -4% !important;

  object-fit: contain !important;

  transform: none !important;
}


/* ============================================================
   VISUAL NOTE
   ============================================================ */

.xh-contact-page
.xc-faq-visual-note {
  position: absolute;

  z-index: 4;

  left: 20px;
  bottom: 0;

  max-width: 335px;

  padding:
    17px 20px 19px;

  border:
    1px solid rgba(10, 52, 52, .08);

  border-radius: 16px;

  background: #FAF7F1;

  box-shadow:
    0 16px 42px
    rgba(10, 52, 52, .10);
}


.xh-contact-page
.xc-faq-visual-note > span {
  display: block;

  margin-bottom: 7px;

  color: #E47D6B;

  font-size: 9px;
  font-weight: 900;

  line-height: 1;

  letter-spacing: .12em;
}


.xh-contact-page
.xc-faq-visual-note p {
  margin: 0;

  color:
    rgba(10, 52, 52, .65);

  font-size: 13px;

  line-height: 1.55;
}


.xh-contact-page
.xc-faq-visual-note strong {
  display: block;

  margin-top: 2px;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size: 19px;
  font-weight: 500;

  line-height: 1.12;

  letter-spacing: -.45px;
}


/* ============================================================
   FAQ LIST
   ============================================================ */

.xh-contact-page .xc-faq-list {
  display: grid;

  gap: 11px;

  min-width: 0;
}


/* ============================================================
   FAQ ITEM
   ============================================================ */

.xh-contact-page .xc-faq-item {
  overflow: hidden;

  border:
    1px solid rgba(10, 52, 52, .10);

  border-radius: 17px;

  background:
    rgba(250, 247, 241, .88);

  transition:
    border-color .25s ease,
    box-shadow .25s ease,
    transform .25s ease;
}


.xh-contact-page
.xc-faq-item:hover {
  border-color:
    rgba(228, 125, 107, .25);
}


.xh-contact-page
.xc-faq-item[open] {
  border-color:
    rgba(228, 125, 107, .38);

  box-shadow:
    0 14px 34px
    rgba(10, 52, 52, .055);
}


/* native marker off */

.xh-contact-page
.xc-faq-item summary {
  list-style: none;
}


.xh-contact-page
.xc-faq-item summary::-webkit-details-marker {
  display: none;
}


/* ============================================================
   QUESTION
   ============================================================ */

.xh-contact-page
.xc-faq-item summary {
  display: grid;

  grid-template-columns:
    38px minmax(0, 1fr) 30px;

  gap: 15px;

  align-items: center;

  padding: 22px 23px;

  cursor: pointer;
}


.xh-contact-page
.xc-faq-number {
  color: #E47D6B;

  font-family: var(--xh-serif);

  font-size: 13px;

  font-weight: 500;
}


.xh-contact-page
.xc-faq-question {
  color: #0A3434;

  font-family: var(--xh-serif);

  font-size:
    clamp(19px, 1.45vw, 23px);

  font-weight: 500;

  line-height: 1.12;

  letter-spacing: -.5px;
}


/* ============================================================
   PLUS / MINUS
   ============================================================ */

.xh-contact-page
.xc-faq-toggle {
  position: relative;

  display: block;

  width: 28px;
  height: 28px;

  border-radius: 50%;

  background: #FAF7F1;

  border:
    1px solid rgba(10, 52, 52, .10);
}


.xh-contact-page
.xc-faq-toggle::before,
.xh-contact-page
.xc-faq-toggle::after {
  content: "";

  position: absolute;

  top: 50%;
  left: 50%;

  width: 10px;
  height: 1.5px;

  background: #0A3434;

  transform:
    translate(-50%, -50%);
}


.xh-contact-page
.xc-faq-toggle::after {
  transform:
    translate(-50%, -50%)
    rotate(90deg);

  transition:
    transform .22s ease;
}


.xh-contact-page
.xc-faq-item[open]
.xc-faq-toggle::after {
  transform:
    translate(-50%, -50%)
    rotate(0deg);
}


/* ============================================================
   ANSWER
   ============================================================ */

.xh-contact-page
.xc-faq-answer {
  padding:
    0 68px 23px 76px;
}


.xh-contact-page
.xc-faq-answer p {
  max-width: 650px;

  margin: 0;

  color:
    rgba(10, 52, 52, .65);

  font-size: 13.5px;

  line-height: 1.72;
}


/* ============================================================
   NEXT STEP
   ============================================================ */

.xh-contact-page
.xc-faq-next-step {
  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    auto;

  gap: 30px;

  align-items: center;

  margin-top:
    clamp(46px, 5vw, 64px);

  padding:
    clamp(28px, 4vw, 42px);

  border-radius: 22px;

  background: #0A3434;
}


.xh-contact-page
.xc-faq-next-step > div > span {
  display: block;

  margin-bottom: 8px;

  color: #E47D6B;

  font-size: 9px;

  font-weight: 900;

  letter-spacing: .11em;
}


.xh-contact-page
.xc-faq-next-step h3 {
  margin: 0;

  color:
    rgba(250, 247, 241, .70);

  font-family: var(--xh-serif);

  font-size:
    clamp(25px, 2.2vw, 33px);

  font-weight: 500;

  line-height: 1.1;

  letter-spacing: -.8px;
}


.xh-contact-page
.xc-faq-next-step h3 strong {
  color: #FAF7F1;

  font-weight: 500;
}


.xh-contact-page
.xc-faq-next-step .xc-button {
  border-color: #E47D6B;

  background: #E47D6B;

  color: #FAF7F1;

  white-space: nowrap;
}


/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 1020px) {

  .xh-contact-page
  .xc-faq-heading {
    grid-template-columns: 1fr;

    gap: 24px;
  }


  .xh-contact-page
  .xc-faq-heading-copy {
    max-width: 680px;
  }


  .xh-contact-page
  .xc-faq-layout {
    grid-template-columns:
      minmax(280px, .8fr)
      minmax(0, 1.2fr);

    gap: 36px;
  }

}


/* ============================================================
   SMALL TABLET
   ============================================================ */

@media (max-width: 820px) {

  .xh-contact-page
  .xc-faq-layout {
    grid-template-columns: 1fr;

    gap: 48px;
  }


  .xh-contact-page
  .xc-faq-visual {
    position: relative;

    top: auto;

    width: min(100%, 620px);

    margin: 0 auto;
  }


  .xh-contact-page
  .xc-faq-next-step {
    grid-template-columns: 1fr;
  }


  .xh-contact-page
  .xc-faq-next-step .xc-button {
    justify-self: start;
  }

}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 600px) {

  .xh-contact-page
  .xc-faq-heading h2 {
    font-size:
      clamp(39px, 10.5vw, 48px);

    line-height: 1;

    letter-spacing: -2px;
  }


  .xh-contact-page
  .xc-faq-heading-copy p {
    font-size: 14px;
  }


  .xh-contact-page
  .xc-faq-art {
    min-height: 300px;

    border-radius: 21px;
  }


  .xh-contact-page
  .xc-faq-visual-note {
    position: relative;

    left: auto;
    bottom: auto;

    width: calc(100% - 24px);

    max-width: 370px;

    margin:
      -18px 0 0 24px;
  }


  .xh-contact-page
  .xc-faq-item summary {
    grid-template-columns:
      28px minmax(0, 1fr) 28px;

    gap: 10px;

    padding: 19px 17px;
  }


  .xh-contact-page
  .xc-faq-answer {
    padding:
      0 48px 20px 55px;
  }


  .xh-contact-page
  .xc-faq-question {
    font-size: 19px;
  }


  .xh-contact-page
  .xc-faq-next-step {
    padding: 25px 22px;
  }


  .xh-contact-page
  .xc-faq-next-step .xc-button {
    width: 100%;
  }

}




/* ============================================================
   CONTACT — FINAL CTA
   ============================================================ */

.xh-contact-page .xc-final-v2 {
  padding:
    clamp(70px, 7vw, 104px) 0
    clamp(78px, 8vw, 112px);

  background: #FAF7F1;
}


/* ============================================================
   CARD
   ============================================================ */

.xh-contact-page
.xc-final-v2
.xc-final-card {
  position: relative;
  overflow: hidden;

  display: grid;

  grid-template-columns:
    minmax(0, 1.3fr)
    minmax(300px, .7fr);

  gap: clamp(48px, 7vw, 92px);

  align-items: center;

  padding:
    clamp(46px, 5.5vw, 72px)
    clamp(40px, 6vw, 78px);

  border-radius: 28px;

  background: #0A3434;

  box-shadow:
    0 28px 78px rgba(10, 52, 52, .13);
}


/* decorative circle */

.xh-contact-page
.xc-final-v2
.xc-final-card::before {
  content: "";

  position: absolute;

  width: 420px;
  height: 420px;

  top: -270px;
  right: -110px;

  border:
    1px solid rgba(250, 247, 241, .11);

  border-radius: 50%;
}


/* coral glow */

.xh-contact-page
.xc-final-v2
.xc-final-card::after {
  content: "";

  position: absolute;

  width: 240px;
  height: 240px;

  left: -145px;
  bottom: -160px;

  border-radius: 50%;

  background:
    rgba(228, 125, 107, .12);
}


/* ============================================================
   COPY
   ============================================================ */

.xh-contact-page
.xc-final-copy {
  position: relative;

  z-index: 2;

  max-width: 720px;
}


.xh-contact-page
.xc-final-eyebrow {
  display: block;

  margin-bottom: 16px;

  color: #E47D6B;

  font-size: 9px;

  font-weight: 900;

  line-height: 1;

  letter-spacing: .12em;
}


.xh-contact-page
.xc-final-v2
.xc-final-copy h2 {
  max-width: 670px;

  margin: 0 0 22px;

  color: #FAF7F1;

  font-family: var(--xh-serif);

  font-size:
    clamp(44px, 4.4vw, 64px);

  font-weight: 500;

  line-height: 1;

  letter-spacing: -2.8px;

  text-wrap: balance;
}


.xh-contact-page
.xc-final-v2
.xc-final-copy h2 span {
  display: block;

  color: #E47D6B;
}


.xh-contact-page
.xc-final-v2
.xc-final-copy > p {
  max-width: 640px;

  margin: 0;

  color:
    rgba(250, 247, 241, .70);

  font-size: 15px;

  line-height: 1.72;
}


/* ============================================================
   THREE POINTS
   ============================================================ */

.xh-contact-page
.xc-final-points {
  display: flex;

  flex-wrap: wrap;

  gap: 11px 24px;

  margin-top: 28px;

  padding-top: 23px;

  border-top:
    1px solid rgba(250, 247, 241, .12);
}


.xh-contact-page
.xc-final-points span {
  display: inline-flex;

  align-items: center;

  gap: 8px;

  color:
    rgba(250, 247, 241, .62);

  font-size: 11px;

  line-height: 1.4;
}


.xh-contact-page
.xc-final-points b {
  display: grid;

  width: 25px;
  height: 25px;

  place-items: center;

  flex: 0 0 25px;

  border-radius: 50%;

  background:
    rgba(250, 247, 241, .09);

  color: #E47D6B;

  font-size: 8px;

  font-weight: 900;
}


/* ============================================================
   ACTION
   ============================================================ */

.xh-contact-page
.xc-final-action {
  position: relative;

  z-index: 2;

  padding: 28px;

  border:
    1px solid rgba(250, 247, 241, .12);

  border-radius: 20px;

  background:
    rgba(250, 247, 241, .055);
}


.xh-contact-page
.xc-final-action p {
  margin: 0 0 21px;

  color:
    rgba(250, 247, 241, .66);

  font-family: var(--xh-serif);

  font-size: 21px;

  font-weight: 500;

  line-height: 1.2;

  letter-spacing: -.45px;
}


.xh-contact-page
.xc-final-action p strong {
  display: block;

  margin-top: 2px;

  color: #FAF7F1;

  font-weight: 500;
}


/* button */

.xh-contact-page
.xc-final-button {
  display: inline-flex;

  width: 100%;

  align-items: center;
  justify-content: space-between;

  gap: 18px;

  min-height: 52px;

  padding: 0 20px;

  border-color: #E47D6B !important;

  background: #E47D6B !important;

  color: #FAF7F1 !important;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width: 900px) {

  .xh-contact-page
  .xc-final-v2
  .xc-final-card {
    grid-template-columns: 1fr;

    gap: 40px;
  }


  .xh-contact-page
  .xc-final-action {
    max-width: 480px;
  }

}


@media (max-width: 600px) {

  .xh-contact-page
  .xc-final-v2 {
    padding:
      56px 0 72px;
  }


  .xh-contact-page
  .xc-final-v2
  .xc-final-card {
    padding:
      38px 24px 28px;

    border-radius: 23px;
  }


  .xh-contact-page
  .xc-final-v2
  .xc-final-copy h2 {
    font-size:
      clamp(39px, 10.8vw, 48px);

    line-height: 1;

    letter-spacing: -2px;
  }


  .xh-contact-page
  .xc-final-v2
  .xc-final-copy > p {
    font-size: 14px;
  }


  .xh-contact-page
  .xc-final-points {
    display: grid;

    gap: 12px;
  }


  .xh-contact-page
  .xc-final-action {
    padding: 22px 20px;
  }


  .xh-contact-page
  .xc-final-button {
    width: 100%;
  }

}










/* ============================================================
   BUSINESS IDENTITY — HERO
   ============================================================ */

.xp-content-page .xbi-shell {
  width: min(1360px, calc(100% - 64px));
  margin-inline: auto;
}


.xbi-hero {
  position: relative;
  overflow: hidden;

  padding:
    clamp(76px, 7vw, 108px) 0
    clamp(72px, 7vw, 104px);

  background: #0A3434;
}


/* decorative circles */

.xbi-hero::before {
  content: "";

  position: absolute;

  width: 520px;
  height: 520px;

  top: -325px;
  right: -170px;

  border:
    1px solid rgba(250, 247, 241, .12);

  border-radius: 50%;

  pointer-events: none;
}


.xbi-hero::after {
  content: "";

  position: absolute;

  width: 300px;
  height: 300px;

  left: -185px;
  bottom: -205px;

  border-radius: 50%;

  background:
    rgba(228, 125, 107, .11);

  pointer-events: none;
}


/* ============================================================
   GRID
   ============================================================ */

.xbi-hero-grid {
  position: relative;
  z-index: 2;

  display: grid;

  grid-template-columns:
    minmax(0, 57fr)
    minmax(0, 43fr);

  gap:
    clamp(50px, 6vw, 88px);

  align-items: center;
}


/* ============================================================
   COPY
   ============================================================ */

.xbi-hero-copy {
  min-width: 0;
  max-width: 780px;
}


/* eyebrow */

.xbi-eyebrow {
  display: inline-flex;

  align-items: center;

  gap: 9px;

  color: #E47D6B;

  font-size: 10px;
  font-weight: 900;

  letter-spacing: .13em;

  text-transform: uppercase;
}


.xbi-eyebrow::before {
  content: "";

  width: 25px;
  height: 1px;

  background: currentColor;
}


/* ============================================================
   H1
   ============================================================ */

.xbi-hero h1 {
  max-width: 760px;

  margin: 18px 0 24px;

  color: #FAF7F1;

  font-family: var(--xh-serif);

  font-size:
    clamp(52px, 4.9vw, 72px);

  font-weight: 500;

  line-height: .98;

  letter-spacing: -3.2px;

  text-wrap: balance;
}


.xbi-hero h1 span {
  display: block;

  color: #E47D6B;
}


/* ============================================================
   LEAD
   ============================================================ */

.xbi-hero-lead {
  max-width: 690px;

  margin: 0;

  color:
    rgba(250, 247, 241, .77);

  font-size: 17px;

  line-height: 1.72;
}


.xbi-hero-support {
  max-width: 650px;

  margin: 15px 0 0;

  color:
    rgba(250, 247, 241, .57);

  font-size: 14px;

  line-height: 1.7;
}


/* ============================================================
   THREE CONTEXT ITEMS
   ============================================================ */

.xbi-context-grid {
  display: grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap: 11px;

  margin-top: 32px;
}


.xbi-context-item {
  min-width: 0;

  padding: 20px 18px 21px;

  border:
    1px solid rgba(250, 247, 241, .12);

  border-radius: 16px;

  background:
    rgba(250, 247, 241, .055);
}


/* number */

.xbi-context-number {
  display: grid;

  width: 31px;
  height: 31px;

  place-items: center;

  margin-bottom: 16px;

  border-radius: 50%;

  background:
    rgba(227, 236, 229, .11);

  color: #E47D6B;

  font-size: 9px;

  font-weight: 900;
}


/* mini label */

.xbi-context-item small {
  display: block;

  margin-bottom: 5px;

  color:
    rgba(250, 247, 241, .44);

  font-size: 8px;

  font-weight: 800;

  letter-spacing: .09em;
}


/* title */

.xbi-context-item h2 {
  margin: 0 0 7px;

  color: #FAF7F1;

  font-family: var(--xh-serif);

  font-size: 21px;

  font-weight: 500;

  line-height: 1.06;

  letter-spacing: -.55px;
}


/* body */

.xbi-context-item p {
  margin: 0;

  color:
    rgba(250, 247, 241, .56);

  font-size: 11.5px;

  line-height: 1.57;
}


/* ============================================================
   PRINCIPLE
   ============================================================ */

.xbi-hero-principle {
  display: flex;

  flex-wrap: wrap;

  gap: 7px 16px;

  align-items: center;

  margin-top: 27px;

  padding-top: 22px;

  border-top:
    1px solid rgba(250, 247, 241, .12);
}


.xbi-hero-principle span {
  color: #E47D6B;

  font-size: 8.5px;

  font-weight: 900;

  letter-spacing: .11em;
}


.xbi-hero-principle strong {
  color:
    rgba(250, 247, 241, .69);

  font-size: 11px;

  font-weight: 650;
}


/* ============================================================
   IMAGE
   ============================================================ */

.xbi-hero-visual {
  position: relative;

  min-width: 0;

  padding-bottom: 48px;
}


.xbi-hero-art {
  position: relative;

  display: flex;

  min-height: 500px;

  align-items: center;
  justify-content: center;
}


/* soft glow behind transparent PNG */

.xbi-hero-art::before {
  content: "";

  position: absolute;

  width: 84%;

  aspect-ratio: 1;

  border-radius: 50%;

  background:
    radial-gradient(
      circle,
      rgba(227,236,229,.14) 0%,
      rgba(227,236,229,.06) 54%,
      rgba(227,236,229,0) 74%
    );
}


.xbi-hero-art img {
  position: relative;
  z-index: 2;

  display: block;

  width: 112%;
  max-width: 690px;

  height: auto;

  margin-inline: -6%;

  object-fit: contain;
}


/* ============================================================
   IMAGE NOTE
   ============================================================ */

.xbi-visual-note {
  position: absolute;
  z-index: 4;

  left: 0;
  bottom: 0;

  max-width: 345px;

  padding: 18px 21px 20px;

  border:
    1px solid rgba(250,247,241,.10);

  border-radius: 16px;

  background: #FAF7F1;

  box-shadow:
    0 22px 54px
    rgba(0,0,0,.20);
}


.xbi-visual-note > span {
  display: block;

  margin-bottom: 7px;

  color: #E47D6B;

  font-size: 9px;

  font-weight: 900;

  letter-spacing: .11em;
}


.xbi-visual-note p {
  margin: 0;

  color:
    rgba(10,52,52,.65);

  font-size: 13px;

  line-height: 1.55;
}


.xbi-visual-note strong {
  display: block;

  margin-top: 3px;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size: 20px;

  font-weight: 500;

  line-height: 1.12;

  letter-spacing: -.5px;
}


/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 1020px) {

  .xp-content-page .xbi-shell {
    width:
      min(100% - 44px, 1180px);
  }


  .xbi-hero-grid {
    grid-template-columns: 1fr;

    gap: 48px;
  }


  .xbi-hero-copy {
    max-width: 820px;
  }


  .xbi-hero-visual {
    width: min(100%, 720px);
  }

}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 680px) {

  .xp-content-page .xbi-shell {
    width:
      min(100% - 28px, 1180px);
  }


  .xbi-hero {
    padding:
      58px 0 64px;
  }


  .xbi-hero h1 {
    font-size:
      clamp(41px, 11.5vw, 50px);

    line-height: 1;

    letter-spacing: -2.25px;
  }


  .xbi-hero-lead {
    font-size: 15px;
  }


  .xbi-hero-support {
    font-size: 13px;
  }


  .xbi-context-grid {
    grid-template-columns: 1fr;
  }


  .xbi-context-item {
    display: grid;

    grid-template-columns:
      38px minmax(0,1fr);

    gap: 14px;

    padding: 18px;
  }


  .xbi-context-number {
    margin: 0;
  }


  .xbi-hero-art {
    min-height: 330px;
  }


  .xbi-visual-note {
    position: relative;

    left: auto;
    bottom: auto;

    width: calc(100% - 24px);

    max-width: 380px;

    margin:
      -20px 0 0 24px;
  }

}









/* ==========================================================================
   XTRIBE LEGAL & TRUST CENTRE — ISOLATED LAYOUT FIX
   Add this block at the END of assets/css/xtribe-public.css

   Important:
   The Legal page intentionally does NOT use .xh-trust-grid because that
   class is already used by the homepage trust strip.
   ========================================================================== */


/* ============================================================
   PAGE
   ============================================================ */

.xh-legal-page {
  width: 100%;
  min-width: 0;
  overflow: hidden;
  background: #FAF7F1;
}

.xh-legal-page *,
.xh-legal-page *::before,
.xh-legal-page *::after {
  box-sizing: border-box;
}


/* ============================================================
   HERO
   ============================================================ */

.xh-legal-hero {
  position: relative;
  overflow: hidden;
  background: #0A3434;
  color: #FAF7F1;
}

.xh-legal-hero::before {
  content: "";
  position: absolute;
  width: 520px;
  height: 520px;
  right: -240px;
  top: -290px;
  border: 1px solid rgba(250,247,241,.08);
  border-radius: 50%;
  pointer-events: none;
}

.xh-legal-hero-grid {
  position: relative;
  z-index: 1;

  display: grid;
  grid-template-columns:
    minmax(0, 1.05fr)
    minmax(420px, .95fr);

  gap: clamp(44px, 6vw, 86px);
  align-items: center;

  min-height: 610px;

  padding-top: clamp(66px, 7vw, 98px);
  padding-bottom: clamp(66px, 7vw, 92px);
}


/* ============================================================
   HERO COPY
   ============================================================ */

.xh-legal-hero-copy {
  min-width: 0;
  max-width: 700px;
}

.xh-legal-eyebrow,
.xh-legal-section-label {
  display: inline-flex;
  align-items: center;
  gap: 9px;

  color: #E47D6B;

  font-size: 9px;
  font-weight: 900;
  line-height: 1;

  letter-spacing: .13em;
  text-transform: uppercase;
}

.xh-legal-eyebrow::before {
  content: "";
  display: block;
  width: 25px;
  height: 1px;
  background: currentColor;
}

.xh-legal-hero h1 {
  max-width: 700px;
  margin: 17px 0 22px;

  color: #FAF7F1;

  font-family: var(--xh-serif);
  font-size: clamp(52px, 5.1vw, 74px);
  font-weight: 500;
  line-height: .98;
  letter-spacing: -3.25px;

  text-wrap: balance;
}

.xh-legal-hero h1 em {
  display: block;
  color: #E47D6B;
  font-style: normal;
}

.xh-legal-hero-lead {
  max-width: 650px;
  margin: 0;

  color: rgba(250,247,241,.73);

  font-size: 15px;
  line-height: 1.72;
}


/* ============================================================
   HERO TOPICS
   ============================================================ */

.xh-legal-topics {
  display: flex;
  flex-wrap: wrap;

  gap: 9px;

  margin-top: 27px;
}

.xh-legal-topics span {
  display: inline-flex;
  align-items: center;
  gap: 8px;

  min-height: 36px;

  padding: 0 13px;

  border: 1px solid rgba(250,247,241,.12);
  border-radius: 999px;

  background: rgba(250,247,241,.045);

  color: rgba(250,247,241,.72);

  font-size: 10.5px;
  font-weight: 700;
}

.xh-legal-topics b {
  color: #E47D6B;

  font-size: 8px;
  font-weight: 900;
}


/* ============================================================
   HERO PRINCIPLE
   ============================================================ */

.xh-legal-principle {
  display: grid;
  gap: 6px;

  max-width: 650px;

  margin-top: 25px;
  padding-top: 20px;

  border-top: 1px solid rgba(250,247,241,.12);
}

.xh-legal-principle > span {
  color: #E47D6B;

  font-size: 8px;
  font-weight: 900;
  letter-spacing: .12em;
}

.xh-legal-principle strong {
  color: rgba(250,247,241,.82);

  font-size: 11.5px;
  font-weight: 650;
  line-height: 1.55;
}


/* ============================================================
   HERO VISUAL
   ============================================================ */

.xh-legal-visual {
  position: relative;

  min-width: 0;

  display: flex;
  flex-direction: column;
  align-items: center;

  padding-bottom: 46px;
}

.xh-legal-art {
  position: relative;

  display: flex;
  align-items: center;
  justify-content: center;

  width: 100%;
  min-width: 0;
  min-height: 450px;
}

.xh-legal-art::before {
  content: "";

  position: absolute;

  width: min(92%, 510px);
  aspect-ratio: 1;

  border-radius: 50%;

  background:
    radial-gradient(
      circle,
      rgba(227,236,229,.12) 0%,
      rgba(227,236,229,.055) 50%,
      rgba(227,236,229,0) 74%
    );

  pointer-events: none;
}


/* The key hero-image fix:
   no negative margins, no 120%/140% width, no forced cover crop. */
.xh-legal-art img {
  position: relative;
  z-index: 2;

  display: block;

  width: min(100%, 610px) !important;
  max-width: 610px !important;

  height: auto !important;
  max-height: 510px;

  margin: 0 auto !important;

  object-fit: contain !important;

  transform: none !important;
}


/* ============================================================
   HERO VISUAL NOTE
   ============================================================ */

.xh-legal-visual-note {
  position: absolute;
  z-index: 3;

  left: 0;
  bottom: 0;

  width: min(350px, calc(100% - 20px));

  padding: 17px 19px 18px;

  border: 1px solid rgba(250,247,241,.12);
  border-radius: 15px;

  background: #FAF7F1;

  box-shadow:
    0 18px 44px
    rgba(0,0,0,.17);
}

.xh-legal-visual-note > span {
  display: block;

  margin-bottom: 7px;

  color: #E47D6B;

  font-size: 8px;
  font-weight: 900;
  letter-spacing: .11em;
}

.xh-legal-visual-note p {
  margin: 0;

  color: rgba(10,52,52,.63);

  font-size: 11.5px;
  line-height: 1.55;
}

.xh-legal-visual-note strong {
  display: block;

  margin-top: 3px;

  color: #0A3434;

  font-family: var(--xh-serif);
  font-size: 17px;
  font-weight: 500;
  line-height: 1.17;
  letter-spacing: -.35px;
}


/* ============================================================
   DEVELOPMENT PLACEHOLDER
   ============================================================ */

.xh-legal-placeholder {
  border-bottom: 1px solid rgba(228,125,107,.20);
  background: #FFF1E8;
}

.xh-legal-placeholder-grid {
  display: grid;

  grid-template-columns:
    minmax(170px, .28fr)
    minmax(0, 1fr)
    auto;

  gap: 26px;

  align-items: center;

  min-height: 82px;

  padding-top: 14px;
  padding-bottom: 14px;
}

.xh-legal-placeholder strong {
  color: #9B4F40;

  font-size: 9px;
  font-weight: 900;
  line-height: 1.4;

  letter-spacing: .08em;
  text-transform: uppercase;
}

.xh-legal-placeholder p {
  margin: 0;

  color: rgba(10,52,52,.67);

  font-size: 11px;
  line-height: 1.6;
}

.xh-legal-placeholder a {
  display: inline-flex;
  align-items: center;
  gap: 7px;

  color: #0A3434;

  font-size: 10px;
  font-weight: 850;

  white-space: nowrap;
}


/* ============================================================
   DOCUMENT SECTION
   ============================================================ */

.xh-legal-documents {
  padding:
    clamp(76px, 8vw, 112px) 0
    clamp(82px, 8vw, 120px);

  background: #FAF7F1;
}

.xh-legal-heading {
  display: grid;

  grid-template-columns:
    minmax(0, 1.04fr)
    minmax(360px, .96fr);

  gap: clamp(48px, 7vw, 100px);

  align-items: end;

  margin-bottom:
    clamp(40px, 5vw, 62px);
}

.xh-legal-heading h2,
.xh-legal-controls-heading h2 {
  margin: 12px 0 0;

  color: #0A3434;

  font-family: var(--xh-serif);
  font-size: clamp(44px, 4.35vw, 62px);
  font-weight: 500;
  line-height: 1;
  letter-spacing: -2.55px;

  text-wrap: balance;
}

.xh-legal-heading h2 em,
.xh-legal-controls-heading h2 em {
  color: #E47D6B;
  font-style: normal;
}

.xh-legal-heading-copy {
  max-width: 560px;
}

.xh-legal-heading-copy p {
  margin: 0;

  color: rgba(10,52,52,.67);

  font-size: 14px;
  line-height: 1.72;
}

.xh-legal-heading-copy p + p {
  margin-top: 10px;
}


/* ============================================================
   DOCUMENT GRID
   ============================================================ */

.xh-legal-document-grid {
  display: grid !important;

  grid-template-columns:
    repeat(3, minmax(0, 1fr)) !important;

  gap: 15px !important;

  width: 100%;
  min-width: 0;

  padding: 0 !important;

  border: 0 !important;

  border-radius: 0 !important;

  background: transparent !important;

  box-shadow: none !important;
}


/* ============================================================
   DOCUMENT CARDS
   ============================================================ */

.xh-legal-card {
  /* Explicitly neutralises the homepage .xh-trust-grid article rules. */
  display: flex !important;
  grid-template-columns: none !important;

  flex-direction: column;

  min-width: 0;
  min-height: 270px;

  padding: 27px 26px 24px !important;

  border: 1px solid rgba(10,52,52,.11) !important;
  border-radius: 18px !important;

  background: rgba(255,253,249,.82) !important;

  box-shadow: none !important;
}

.xh-legal-card-number {
  display: block;

  margin-bottom: 29px;

  color: #E47D6B;

  font-family: var(--xh-serif);
  font-size: 12px;
  font-weight: 500;
}


/* Critical text-flow reset */
.xh-legal-card h3,
.xh-legal-card p,
.xh-legal-card a {
  width: 100% !important;
  min-width: 0 !important;

  grid-column: auto !important;
  grid-row: auto !important;

  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
}

.xh-legal-card h3 {
  margin: 0 0 13px;

  color: #0A3434;

  font-family: var(--xh-serif);
  font-size: 23px;
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: -.55px;
}

.xh-legal-card p {
  flex: 1;

  max-width: 330px;

  margin: 0;

  color: rgba(10,52,52,.63);

  font-size: 12.5px;
  line-height: 1.68;
}

.xh-legal-card a {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;

  margin-top: 24px;
  padding-top: 16px;

  border-top: 1px solid rgba(10,52,52,.10);

  color: #0A3434;

  font-size: 10.5px;
  font-weight: 850;

  text-decoration: none;
}

.xh-legal-card a span {
  color: #E47D6B;
  font-size: 14px;
}


/* ============================================================
   CONTROLS
   ============================================================ */

.xh-legal-controls {
  padding:
    clamp(72px, 7vw, 100px) 0
    clamp(76px, 8vw, 108px);

  background: #E3ECE5;
}

.xh-legal-controls-heading {
  max-width: 760px;
  margin-bottom: 39px;
}

.xh-legal-controls-heading h2 {
  font-size: clamp(38px, 3.8vw, 54px);
}

.xh-legal-controls-heading > p {
  max-width: 620px;

  margin: 15px 0 0;

  color: rgba(10,52,52,.66);

  font-size: 13.5px;
  line-height: 1.7;
}

.xh-legal-controls-grid {
  display: grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap: 15px;
}

.xh-legal-controls-grid article {
  display: flex;
  flex-direction: column;

  min-width: 0;
  min-height: 230px;

  padding: 25px;

  border: 1px solid rgba(10,52,52,.09);
  border-radius: 17px;

  background: rgba(250,247,241,.88);
}

.xh-legal-controls-grid article > span {
  display: block;

  margin-bottom: 18px;

  color: #E47D6B;

  font-size: 8px;
  font-weight: 900;
  letter-spacing: .11em;
}

.xh-legal-controls-grid h3 {
  margin: 0 0 12px;

  color: #0A3434;

  font-family: var(--xh-serif);
  font-size: 22px;
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: -.5px;
}

.xh-legal-controls-grid p {
  flex: 1;

  margin: 0;

  color: rgba(10,52,52,.62);

  font-size: 12px;
  line-height: 1.65;
}

.xh-legal-controls-grid a {
  display: inline-flex;
  align-items: center;
  gap: 8px;

  margin-top: 21px;

  color: #0A3434;

  font-size: 10.5px;
  font-weight: 850;
}


/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 1020px) {

  .xh-legal-hero-grid {
    grid-template-columns:
      minmax(0, 1fr)
      minmax(340px, .78fr);

    gap: 38px;

    min-height: 560px;
  }

  .xh-legal-art {
    min-height: 390px;
  }

  .xh-legal-art img {
    max-width: 500px !important;
    max-height: 440px;
  }

  .xh-legal-document-grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr)) !important;
  }

}


/* ============================================================
   SMALL TABLET
   ============================================================ */

@media (max-width: 820px) {

  .xh-legal-hero-grid,
  .xh-legal-heading {
    grid-template-columns: 1fr;
  }

  .xh-legal-hero-grid {
    gap: 34px;

    min-height: 0;
  }

  .xh-legal-hero-copy {
    max-width: 760px;
  }

  .xh-legal-visual {
    width: min(100%, 680px);

    margin-inline: auto;
  }

  .xh-legal-art {
    min-height: 420px;
  }

  .xh-legal-placeholder-grid {
    grid-template-columns: 1fr;

    gap: 8px;

    padding-top: 18px;
    padding-bottom: 18px;
  }

  .xh-legal-placeholder a {
    justify-self: start;
  }

  .xh-legal-controls-grid {
    grid-template-columns: 1fr;
  }

}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 620px) {

  .xh-legal-hero-grid {
    padding-top: 52px;
    padding-bottom: 58px;
  }

  .xh-legal-hero h1 {
    font-size: clamp(41px, 11.4vw, 50px);
    line-height: 1;
    letter-spacing: -2.1px;
  }

  .xh-legal-hero-lead {
    font-size: 14px;
  }

  .xh-legal-topics {
    display: grid;

    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }

  .xh-legal-topics span {
    justify-content: flex-start;
  }

  .xh-legal-visual {
    padding-bottom: 0;
  }

  .xh-legal-art {
    min-height: 310px;
  }

  .xh-legal-art img {
    width: 100% !important;
    max-width: 430px !important;
    max-height: 360px;
  }

  .xh-legal-visual-note {
    position: relative;

    left: auto;
    bottom: auto;

    width: calc(100% - 22px);
    max-width: 380px;

    margin:
      -14px 0 0 22px;
  }

  .xh-legal-documents {
    padding:
      62px 0 72px;
  }

  .xh-legal-heading {
    gap: 22px;

    margin-bottom: 32px;
  }

  .xh-legal-heading h2,
  .xh-legal-controls-heading h2 {
    font-size: clamp(38px, 10vw, 47px);
    letter-spacing: -1.8px;
  }

  .xh-legal-document-grid {
    grid-template-columns: 1fr !important;
  }

  .xh-legal-card {
    min-height: 0;

    padding: 24px 22px 21px !important;
  }

  .xh-legal-card-number {
    margin-bottom: 20px;
  }

  .xh-legal-card p {
    max-width: none;
  }

}












/* ============================================================
   COMMUNITY — PRINCIPLES
   ============================================================ */

.xc-community-principles {
  position: relative;

  padding:
    clamp(76px, 7vw, 104px) 0
    clamp(80px, 8vw, 112px);

  background: #FAF7F1;
}


/* ============================================================
   INTRO
   ============================================================ */

.xc-principles-intro {
  display: grid;

  grid-template-columns:
    minmax(0, 1.08fr)
    minmax(360px, .92fr);

  gap: clamp(48px, 7vw, 96px);

  align-items: end;

  margin-bottom:
    clamp(42px, 5vw, 64px);
}


.xc-principles-intro h2 {
  max-width: 720px;

  margin: 13px 0 0;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size:
    clamp(44px, 4.3vw, 62px);

  font-weight: 500;

  line-height: 1;

  letter-spacing: -2.6px;

  text-wrap: balance;
}


.xc-principles-intro h2 em {
  display: block;

  color: #E47D6B;

  font-style: normal;
}


.xc-principles-intro > p {
  max-width: 555px;

  margin: 0;

  color:
    rgba(10, 52, 52, .68);

  font-size: 14px;

  line-height: 1.75;
}


/* ============================================================
   GRID
   ============================================================ */

.xc-community-principles-grid {
  display: grid;

  grid-template-columns:
    repeat(4, minmax(0, 1fr));

  border-top:
    1px solid rgba(10, 52, 52, .13);

  border-bottom:
    1px solid rgba(10, 52, 52, .13);
}


/* ============================================================
   CARD
   ============================================================ */

.xc-community-principles-grid article {
  position: relative;

  min-width: 0;

  min-height: 365px;

  padding:
    30px 28px 32px;
}


.xc-community-principles-grid article
+ article {
  border-left:
    1px solid rgba(10, 52, 52, .13);
}


/* number */

.xc-principle-number {
  display: block;

  margin-bottom: 30px;

  color: #E47D6B;

  font-family: var(--xh-serif);

  font-size: 12px;
}


/* icon */

.xc-principle-icon {
  display: grid;

  width: 50px;
  height: 50px;

  place-items: center;

  margin-bottom: 24px;

  border:
    1px solid rgba(10, 52, 52, .11);

  border-radius: 50%;

  background: #E3ECE5;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size: 22px;
}


/* label */

.xc-principle-label {
  display: block;

  margin-bottom: 9px;

  color: #E47D6B;

  font-size: 8px;

  font-weight: 900;

  letter-spacing: .11em;
}


/* title */

.xc-community-principles-grid h3 {
  max-width: 260px;

  margin: 0 0 14px;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size:
    clamp(21px, 1.7vw, 25px);

  font-weight: 500;

  line-height: 1.1;

  letter-spacing: -.55px;
}


/* body */

.xc-community-principles-grid p {
  max-width: 270px;

  margin: 0;

  color:
    rgba(10, 52, 52, .62);

  font-size: 12px;

  line-height: 1.68;
}


/* ============================================================
   CLOSING PRINCIPLE
   ============================================================ */

.xc-principles-footer {
  display: grid;

  grid-template-columns:
    minmax(180px, .28fr)
    minmax(0, .72fr);

  gap: 32px;

  align-items: start;

  margin-top: 34px;
}


.xc-principles-footer > span {
  color: #E47D6B;

  font-size: 8px;

  font-weight: 900;

  letter-spacing: .12em;
}


.xc-principles-footer p {
  max-width: 760px;

  margin: 0;

  color:
    rgba(10, 52, 52, .63);

  font-size: 14px;

  line-height: 1.7;
}


.xc-principles-footer strong {
  color: #0A3434;

  font-family: var(--xh-serif);

  font-size: 20px;

  font-weight: 500;

  line-height: 1.3;
}


/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 1000px) {

  .xc-principles-intro {
    grid-template-columns: 1fr;

    gap: 24px;
  }


  .xc-community-principles-grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }


  .xc-community-principles-grid article:nth-child(3) {
    border-left: 0;

    border-top:
      1px solid rgba(10, 52, 52, .13);
  }


  .xc-community-principles-grid article:nth-child(4) {
    border-top:
      1px solid rgba(10, 52, 52, .13);
  }

}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 620px) {

  .xc-community-principles {
    padding:
      60px 0 68px;
  }


  .xc-principles-intro h2 {
    font-size:
      clamp(38px, 10vw, 47px);

    letter-spacing: -1.9px;
  }


  .xc-community-principles-grid {
    grid-template-columns: 1fr;
  }


  .xc-community-principles-grid article,
  .xc-community-principles-grid article:nth-child(3),
  .xc-community-principles-grid article:nth-child(4) {
    min-height: 0;

    padding:
      27px 0 29px;

    border-left: 0;

    border-top:
      1px solid rgba(10, 52, 52, .13);
  }


  .xc-community-principles-grid article:first-child {
    border-top: 0;
  }


  .xc-community-principles-grid h3,
  .xc-community-principles-grid p {
    max-width: 500px;
  }


  .xc-principles-footer {
    grid-template-columns: 1fr;

    gap: 10px;
  }

}









/* ============================================================
   COMMUNITY HERO — TYPOGRAPHY CORRECTION
   Overrides the global public H1 rule.
   ============================================================ */

.xh-community-page .xc-hero h1,
.xc-hero h1 {
  max-width: 690px;

  margin:
    16px 0 22px;

  font-family:
    var(--xh-serif);

  font-size:
    clamp(50px, 4.45vw, 66px) !important;

  font-weight: 500;

  line-height: .98 !important;

  letter-spacing:
    -2.8px !important;

  text-wrap: balance;
}


.xh-community-page .xc-hero h1 em,
.xc-hero h1 em {
  color: #E47D6B;

  font-style: normal;
}


/* TABLET */

@media (max-width: 900px) {

  .xh-community-page .xc-hero h1,
  .xc-hero h1 {
    max-width: 720px;

    font-size:
      clamp(48px, 7vw, 60px) !important;

    letter-spacing:
      -2.5px !important;
  }

}


/* MOBILE */

@media (max-width: 620px) {

  .xh-community-page .xc-hero h1,
  .xc-hero h1 {
    font-size:
      clamp(40px, 10.5vw, 48px) !important;

    line-height: 1 !important;

    letter-spacing:
      -1.9px !important;
  }

}









/* ============================================================
   COMMUNITY HERO — IMAGE
   ============================================================ */

.xc-hero-grid {
  display: grid;

  grid-template-columns:
    minmax(0, .98fr)
    minmax(420px, 1.02fr);

  gap:
    clamp(48px, 6vw, 82px);

  align-items: center;
}


.xc-hero-copy {
  min-width: 0;
}


/* ============================================================
   VISUAL
   ============================================================ */

.xc-hero-visual {
  position: relative;

  min-width: 0;

  padding-bottom: 48px;
}


.xc-hero-image {
  position: relative;

  display: flex;

  min-height: 460px;

  align-items: center;
  justify-content: center;

  overflow: visible;
}


/* subtle background form */

.xc-hero-image::before {
  content: "";

  position: absolute;

  width: 86%;

  aspect-ratio: 1;

  border-radius: 50%;

  background:
    radial-gradient(
      circle,
      rgba(227, 236, 229, .75) 0%,
      rgba(227, 236, 229, .34) 52%,
      rgba(227, 236, 229, 0) 74%
    );
}


.xc-hero-image img {
  position: relative;

  z-index: 2;

  display: block;

  width: 112%;

  max-width: 690px;

  height: auto;

  margin-inline: -6%;

  object-fit: contain;
}


/* ============================================================
   VISUAL NOTE
   ============================================================ */

.xc-hero-visual-note {
  position: absolute;

  z-index: 4;

  left: 8px;
  bottom: 0;

  width:
    min(365px, calc(100% - 20px));

  padding:
    17px 20px 19px;

  border:
    1px solid rgba(10, 52, 52, .09);

  border-radius: 16px;

  background: #FAF7F1;

  box-shadow:
    0 17px 44px
    rgba(10, 52, 52, .10);
}


.xc-hero-visual-note > span {
  display: block;

  margin-bottom: 7px;

  color: #E47D6B;

  font-size: 8px;

  font-weight: 900;

  letter-spacing: .11em;
}


.xc-hero-visual-note p {
  margin: 0;

  color:
    rgba(10, 52, 52, .62);

  font-size: 12px;

  line-height: 1.55;
}


.xc-hero-visual-note strong {
  display: block;

  margin-top: 3px;

  color: #0A3434;

  font-family: var(--xh-serif);

  font-size: 18px;

  font-weight: 500;

  line-height: 1.14;

  letter-spacing: -.4px;
}


/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 1000px) {

  .xc-hero-grid {
    grid-template-columns: 1fr;

    gap: 42px;
  }


  .xc-hero-copy {
    max-width: 780px;
  }


  .xc-hero-visual {
    width:
      min(100%, 720px);
  }


  .xc-hero-image {
    min-height: 420px;
  }

}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 620px) {

  .xc-hero-image {
    min-height: 300px;
  }


  .xc-hero-image img {
    width: 108%;

    max-width: 500px;

    margin-inline: -4%;
  }


  .xc-hero-visual {
    padding-bottom: 0;
  }


  .xc-hero-visual-note {
    position: relative;

    left: auto;
    bottom: auto;

    width:
      calc(100% - 24px);

    max-width: 390px;

    margin:
      -18px 0 0 24px;
  }

}









/* ==========================================================================
   XTRIBE V60.8.5.31 — COMPACT CUSTOMER ACCOUNT DASHBOARD

   Append this file to the VERY END of:
   assets/css/xtribe-public.css
   ========================================================================== */


/* --------------------------------------------------------------------------
   PAGE SHELL
   -------------------------------------------------------------------------- */

.xp-account-dashboard {
  max-width: 1240px;

  margin: 0 auto;

  padding:
    0 22px 72px;
}


/* --------------------------------------------------------------------------
   HEADER
   -------------------------------------------------------------------------- */

.xp-account-dashboard
.xp-account-head-v2 {
  max-width: none;

  margin: 0;

  padding:
    36px 0 20px;

  align-items: center;
}


.xp-account-dashboard
.xp-account-head-v2 h1 {
  margin:
    5px 0 3px;

  font-size:
    clamp(38px,4.3vw,56px);

  line-height:
    1;

  letter-spacing:
    -2px;
}


.xp-account-dashboard
.xp-account-head-v2 p {
  max-width: 620px;

  margin:
    5px 0 0;

  font-size:
    14px;
}


.xp-account-head-actions {
  display: flex;

  flex-wrap: wrap;

  justify-content: flex-end;

  gap: 9px;
}


.xp-account-head-actions
.xp-button {
  white-space: nowrap;
}


/* --------------------------------------------------------------------------
   SMALL ACCOUNT OVERVIEW
   -------------------------------------------------------------------------- */

.xp-account-overview {
  display: grid;

  grid-template-columns:
    repeat(4,minmax(0,1fr));

  gap: 10px;

  margin:
    0 0 30px;
}


.xp-account-overview > div {
  min-width: 0;

  padding:
    16px 18px;

  border:
    1px solid var(--xp-line);

  border-radius:
    15px;

  background:
    rgba(255,255,255,.72);
}


.xp-account-overview span,
.xp-account-overview strong,
.xp-account-overview small {
  display: block;
}


.xp-account-overview span {
  margin-bottom: 4px;

  color:
    var(--xp-gold);

  font-size:
    9px;

  font-weight:
    900;

  letter-spacing:
    1.2px;
}


.xp-account-overview strong {
  color:
    var(--xp-green);

  font-size:
    28px;

  line-height:
    1;
}


.xp-account-overview small {
  margin-top:
    5px;

  color:
    var(--xp-muted);

  font-size:
    10.5px;
}


.xp-account-overview
.has-attention {
  background:
    #fff9f1;
}


/* --------------------------------------------------------------------------
   SECTIONS
   -------------------------------------------------------------------------- */

.xp-account-section {
  margin-top:
    32px;
}


.xp-account-section-heading {
  display: grid;

  grid-template-columns:
    minmax(0,1fr)
    minmax(260px,400px);

  gap:
    32px;

  align-items:
    end;

  margin-bottom:
    16px;
}


.xp-account-section-heading h2 {
  margin:
    5px 0 0;

  color:
    var(--xp-green);

  font-size:
    clamp(28px,3vw,40px);

  line-height:
    1.05;

  letter-spacing:
    -1.3px;
}


.xp-account-section-heading > p {
  margin:
    0;

  color:
    var(--xp-muted);

  font-size:
    13px;

  line-height:
    1.55;
}


/* --------------------------------------------------------------------------
   QUICK ACTIONS — six huge horizontal cards become 3 x 2 compact cards.
   -------------------------------------------------------------------------- */

.xp-account-dashboard
.xp-account-tools-v2 {
  max-width: none;

  margin: 0;

  padding: 0;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:
    11px;
}


.xp-account-tool {
  position: relative;

  display: grid !important;

  grid-template-columns:
    32px minmax(0,1fr) 22px;

  gap:
    12px;

  align-items:
    start;

  min-height:
    126px;

  padding:
    17px !important;

  border-radius:
    15px !important;

  box-shadow:
    0 9px 28px rgba(25,54,51,.055) !important;

  transition:
    transform .16s ease,
    border-color .16s ease,
    box-shadow .16s ease;
}


.xp-account-tool:hover,
.xp-account-tool:focus-visible {
  transform:
    translateY(-2px);

  border-color:
    rgba(33,78,75,.28);

  box-shadow:
    0 13px 32px rgba(25,54,51,.08) !important;
}


.xp-account-tool-no {
  display: grid;

  width: 32px;
  height: 32px;

  place-items: center;

  border-radius:
    50%;

  background:
    #f4efe5;

  color:
    var(--xp-green);

  font-size:
    10px;

  font-weight:
    900;
}


.xp-account-tool
.xp-kicker {
  margin-bottom:
    3px;
}


.xp-account-tool h3 {
  margin:
    0 0 6px !important;

  color:
    var(--xp-green);

  font-size:
    16px;

  line-height:
    1.2;
}


.xp-account-tool p {
  margin:
    0 !important;

  color:
    var(--xp-muted);

  font-size:
    11.5px;

  line-height:
    1.48;
}


.xp-account-tool-arrow {
  align-self:
    center;

  justify-self:
    end;

  color:
    var(--xp-gold);

  font-size:
    18px;

  transition:
    transform .16s ease;
}


.xp-account-tool:hover
.xp-account-tool-arrow {
  transform:
    translateX(3px);
}


.xp-account-secondary-link {
  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 18px;

  margin-top:
    10px;

  padding:
    11px 14px;

  border:
    1px dashed rgba(33,78,75,.18);

  border-radius:
    12px;

  color:
    var(--xp-muted);

  font-size:
    11px;
}


.xp-account-secondary-link a {
  flex: 0 0 auto;

  font-weight:
    850;
}


/* --------------------------------------------------------------------------
   BOOKINGS — denser rows.
   -------------------------------------------------------------------------- */

.xp-account-bookings {
  margin-top:
    38px;
}


.xp-account-dashboard
.xp-order-list-v2 {
  max-width: none;

  margin: 0;

  padding: 0;

  gap:
    9px;
}


.xp-account-dashboard
.xp-order-row-v2 {
  grid-template-columns:
    58px minmax(0,1fr) 130px auto;

  gap:
    14px;

  padding:
    13px 14px;

  border-radius:
    14px;

  box-shadow:
    0 7px 22px rgba(25,54,51,.05);
}


.xp-order-row-v2
.xp-order-date {
  padding:
    7px 5px;

  border-radius:
    10px;
}


.xp-order-row-v2
.xp-order-date strong {
  font-size:
    20px;
}


.xp-order-row-v2
.xp-order-date span {
  font-size:
    9px;
}


.xp-order-main {
  min-width: 0;
}


.xp-order-row-v2
.xp-order-main h3 {
  margin:
    2px 0 3px;

  color:
    var(--xp-text);

  font-size:
    15px;

  line-height:
    1.24;
}


.xp-order-row-v2
.xp-order-main p {
  overflow: hidden;

  color:
    var(--xp-muted);

  font-size:
    10.5px;

  line-height:
    1.4;

  text-overflow:
    ellipsis;

  white-space:
    nowrap;
}


.xp-order-row-v2
.xp-order-status {
  gap:
    3px;
}


.xp-order-row-v2
.xp-order-status strong {
  font-size:
    13px;
}


.xp-order-row-v2
.xp-order-status small {
  font-size:
    9px;
}


.xp-order-row-v2
.xp-status {
  padding:
    4px 7px;

  font-size:
    8px;
}


.xp-order-row-v2
.xp-order-open {
  padding:
    8px 11px;

  border-radius:
    9px;
}


/* --------------------------------------------------------------------------
   PAST BOOKINGS — collapsed by default.
   -------------------------------------------------------------------------- */

.xp-past-bookings {
  margin-top:
    13px;

  border:
    1px solid var(--xp-line);

  border-radius:
    15px;

  background:
    rgba(255,255,255,.55);

  overflow:
    hidden;
}


.xp-past-bookings > summary {
  display: grid;

  grid-template-columns:
    minmax(0,1fr) auto 28px;

  gap:
    12px;

  align-items:
    center;

  padding:
    14px 16px;

  color:
    var(--xp-green);

  cursor:
    pointer;

  list-style:
    none;
}


.xp-past-bookings > summary::-webkit-details-marker {
  display:
    none;
}


.xp-past-bookings > summary span {
  font-size:
    13px;

  font-weight:
    850;
}


.xp-past-bookings > summary small {
  color:
    var(--xp-muted);

  font-size:
    10px;
}


.xp-past-bookings > summary b {
  display: grid;

  width: 26px;
  height: 26px;

  place-items: center;

  border-radius:
    50%;

  background:
    #f4efe5;

  font-size:
    16px;

  transition:
    transform .16s ease;
}


.xp-past-bookings[open]
> summary b {
  transform:
    rotate(45deg);
}


.xp-past-bookings
.xp-order-list-v2 {
  padding:
    0 10px 10px;
}


.xp-account-empty {
  padding:
    34px;

  margin:
    0;

  border-style:
    solid;
}


/* --------------------------------------------------------------------------
   TABLET
   -------------------------------------------------------------------------- */

@media (max-width: 980px) {

  .xp-account-overview {
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }


  .xp-account-dashboard
  .xp-account-tools-v2 {
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }


  .xp-account-dashboard
  .xp-order-row-v2 {
    grid-template-columns:
      54px minmax(0,1fr) auto;
  }


  .xp-order-row-v2
  .xp-order-status {
    grid-column:
      2;

    display:
      flex;

    align-items:
      center;

    justify-content:
      flex-start;

    gap:
      8px;
  }


  .xp-order-row-v2
  .xp-order-open {
    grid-column:
      3;

    grid-row:
      1 / span 2;

    align-self:
      center;
  }

}


/* --------------------------------------------------------------------------
   MOBILE
   -------------------------------------------------------------------------- */

@media (max-width: 680px) {

  .xp-account-dashboard {
    padding:
      0 16px 58px;
  }


  .xp-account-dashboard
  .xp-account-head-v2 {
    padding-top:
      28px;

    align-items:
      flex-start;
  }


  .xp-account-dashboard
  .xp-account-head-v2 h1 {
    font-size:
      clamp(36px,10vw,46px);
  }


  .xp-account-head-actions {
    width:
      100%;

    justify-content:
      stretch;
  }


  .xp-account-head-actions
  .xp-button {
    flex:
      1 1 150px;
  }


  .xp-account-overview {
    grid-template-columns:
      repeat(2,minmax(0,1fr));

    gap:
      8px;
  }


  .xp-account-overview > div {
    padding:
      14px;
  }


  .xp-account-section-heading {
    grid-template-columns:
      1fr;

    gap:
      8px;
  }


  .xp-account-dashboard
  .xp-account-tools-v2 {
    grid-template-columns:
      1fr;
  }


  .xp-account-tool {
    min-height:
      0;

    grid-template-columns:
      30px minmax(0,1fr) 20px;

    padding:
      15px !important;
  }


  .xp-account-secondary-link {
    align-items:
      flex-start;

    flex-direction:
      column;

    gap:
      4px;
  }


  .xp-account-dashboard
  .xp-order-row-v2 {
    grid-template-columns:
      48px minmax(0,1fr) auto;

    gap:
      10px;
  }


  .xp-order-row-v2
  .xp-order-main p {
    white-space:
      normal;
  }


  .xp-order-row-v2
  .xp-order-status {
    grid-column:
      2 / -1;

    flex-wrap:
      wrap;
  }


  .xp-order-row-v2
  .xp-order-open {
    grid-column:
      3;

    grid-row:
      1;

    padding:
      7px 9px;
  }


  .xp-past-bookings > summary {
    grid-template-columns:
      1fr 26px;
  }


  .xp-past-bookings
  > summary small {
    grid-column:
      1;
  }


  .xp-past-bookings
  > summary b {
    grid-column:
      2;

    grid-row:
      1 / span 2;
  }

}










/* ==========================================================================
   XTRIBE V60.8.5.31A — ACCOUNT DASHBOARD H1 FIX

   Append this at the VERY END of:
   assets/css/xtribe-public.css
   ========================================================================== */

/* Desktop / large screens */
.xp-account-dashboard
.xp-account-head-v2 h1 {
  margin:
    5px 0 4px !important;

  font-size:
    clamp(40px, 3.2vw, 48px) !important;

  line-height:
    1.02 !important;

  letter-spacing:
    -1.6px !important;
}


/* Tablet */
@media (max-width: 980px) {

  .xp-account-dashboard
  .xp-account-head-v2 h1 {
    font-size:
      clamp(38px, 5vw, 46px) !important;

    letter-spacing:
      -1.45px !important;
  }

}


/* Mobile */
@media (max-width: 680px) {

  .xp-account-dashboard
  .xp-account-head-v2 h1 {
    font-size:
      clamp(34px, 9vw, 42px) !important;

    line-height:
      1.03 !important;

    letter-spacing:
      -1.2px !important;
  }

}










/* ==========================================================================
   XTRIBE V60.8.5.32 — REFINED ACCOUNT DASHBOARD

   Append to the VERY END of:
   assets/css/xtribe-public.css

   This supersedes V60.8.5.31 / 31A account-dashboard overrides.
   ========================================================================== */


/* PAGE */
.xp-account-dashboard-v3 {
  max-width: 1240px;

  margin: 0 auto;

  padding:
    30px 22px 70px;
}


/* HEADER */
.xp-account-dashboard-v3
.xp-account-head-v3 {
  max-width: none !important;

  margin: 0 !important;

  padding:
    16px 0 18px !important;

  align-items:
    center;
}


.xp-account-dashboard-v3
.xp-account-head-v3 h1 {
  margin:
    5px 0 4px !important;

  font-size:
    clamp(38px,3vw,46px) !important;

  line-height:
    1.02 !important;

  letter-spacing:
    -1.55px !important;
}


.xp-account-dashboard-v3
.xp-account-head-v3 p {
  margin:
    4px 0 0;

  max-width:
    650px;

  font-size:
    13px;
}


.xp-account-dashboard-v3
.xp-account-head-actions {
  display:
    flex;

  flex-wrap:
    wrap;

  gap:
    8px;

  justify-content:
    flex-end;
}


/* METRICS — one strip, not four floating large cards */
.xp-account-dashboard-v3
.xp-account-overview-v3 {
  display:
    grid !important;

  grid-template-columns:
    repeat(4,minmax(0,1fr)) !important;

  gap:
    0 !important;

  margin:
    0 0 30px !important;

  overflow:
    hidden;

  border:
    1px solid var(--xp-line);

  border-radius:
    15px;

  background:
    rgba(255,255,255,.72);

  box-shadow:
    0 7px 24px rgba(25,54,51,.045);
}


.xp-account-dashboard-v3
.xp-account-overview-v3 > div {
  min-width:
    0;

  padding:
    13px 17px !important;

  border:
    0 !important;

  border-right:
    1px solid var(--xp-line) !important;

  border-radius:
    0 !important;

  background:
    transparent !important;
}


.xp-account-dashboard-v3
.xp-account-overview-v3 > div:last-child {
  border-right:
    0 !important;
}


.xp-account-dashboard-v3
.xp-account-overview-v3
.has-attention {
  background:
    #fff8ee !important;
}


.xp-account-overview-v3 span {
  display:
    block;

  margin-bottom:
    2px;

  color:
    var(--xp-gold);

  font-size:
    8px;

  font-weight:
    900;

  letter-spacing:
    1.15px;
}


.xp-account-overview-v3 strong {
  display:
    block;

  color:
    var(--xp-green);

  font-size:
    24px;

  line-height:
    1;
}


.xp-account-overview-v3 small {
  display:
    block;

  margin-top:
    4px;

  color:
    var(--xp-muted);

  font-size:
    9px;
}


/* SECTION HEAD */
.xp-account-dashboard-v3
.xp-account-section {
  margin-top:
    30px;
}


.xp-account-dashboard-v3
.xp-account-section-heading {
  display:
    grid !important;

  grid-template-columns:
    minmax(0,1fr)
    minmax(260px,380px);

  gap:
    28px;

  align-items:
    end;

  margin-bottom:
    14px;
}


.xp-account-dashboard-v3
.xp-account-section-heading h2 {
  margin:
    4px 0 0;

  font-size:
    clamp(28px,2.7vw,38px);

  line-height:
    1.04;

  letter-spacing:
    -1.2px;
}


.xp-account-dashboard-v3
.xp-account-section-heading > p {
  margin:
    0;

  color:
    var(--xp-muted);

  font-size:
    11.5px;

  line-height:
    1.5;
}


/* MAIN WORKSPACE */
.xp-account-workspace {
  display:
    grid;

  grid-template-columns:
    minmax(0,1.75fr)
    minmax(270px,.75fr);

  gap:
    14px;

  align-items:
    start;
}


/* Force the quick-actions area to become the intended 3 x 2 grid. */
.xp-account-dashboard-v3
.xp-account-tools-v3 {
  display:
    grid !important;

  grid-template-columns:
    repeat(3,minmax(0,1fr)) !important;

  gap:
    10px !important;

  max-width:
    none !important;

  margin:
    0 !important;

  padding:
    0 !important;
}


.xp-account-dashboard-v3
.xp-account-tool-v3 {
  display:
    grid !important;

  grid-template-columns:
    28px minmax(0,1fr) 18px !important;

  gap:
    9px !important;

  align-items:
    start !important;

  min-height:
    112px !important;

  padding:
    14px !important;

  border-radius:
    14px !important;

  box-shadow:
    0 7px 22px rgba(25,54,51,.045) !important;
}


.xp-account-tool-v3
.xp-account-tool-no {
  display:
    grid;

  width:
    28px;

  height:
    28px;

  place-items:
    center;

  border-radius:
    50%;

  background:
    #f4efe5;

  color:
    var(--xp-green);

  font-size:
    8.5px;

  font-weight:
    900;
}


.xp-account-tool-v3
.xp-kicker {
  margin-bottom:
    2px;

  font-size:
    8px;
}


.xp-account-tool-v3 h3 {
  margin:
    0 0 5px !important;

  color:
    var(--xp-green);

  font-size:
    14px !important;

  line-height:
    1.18;
}


.xp-account-tool-v3 p {
  margin:
    0 !important;

  color:
    var(--xp-muted);

  font-size:
    10px !important;

  line-height:
    1.42;
}


.xp-account-tool-v3
.xp-account-tool-arrow {
  align-self:
    center;

  justify-self:
    end;

  color:
    var(--xp-gold);

  font-size:
    15px;
}


/* NEXT UP */
.xp-account-next {
  display:
    grid;

  gap:
    10px;
}


.xp-account-next-card {
  padding:
    18px;

  border:
    1px solid var(--xp-line);

  border-radius:
    16px;

  background:
    #fff;

  box-shadow:
    0 8px 26px rgba(25,54,51,.05);
}


.xp-account-next-card
.xp-account-next-date {
  display:
    inline-grid;

  width:
    54px;

  height:
    54px;

  place-items:
    center;

  margin:
    12px 0 10px;

  border-radius:
    13px;

  background:
    #f4efe5;
}


.xp-account-next-date strong,
.xp-account-next-date span {
  display:
    block;

  text-align:
    center;
}


.xp-account-next-date strong {
  color:
    var(--xp-green);

  font-size:
    21px;

  line-height:
    1;
}


.xp-account-next-date span {
  margin-top:
    -5px;

  color:
    var(--xp-muted);

  font-size:
    8px;

  text-transform:
    uppercase;
}


.xp-account-next-card h3 {
  margin:
    0 0 7px;

  color:
    var(--xp-green);

  font-size:
    20px;

  line-height:
    1.13;

  letter-spacing:
    -.5px;
}


.xp-account-next-card p {
  margin:
    0 0 4px;

  color:
    var(--xp-muted);

  font-size:
    10.5px;

  line-height:
    1.45;
}


.xp-account-next-place {
  min-height:
    30px;
}


.xp-account-next-meta {
  display:
    flex;

  align-items:
    center;

  justify-content:
    space-between;

  gap:
    10px;

  margin:
    14px 0 12px;

  padding-top:
    11px;

  border-top:
    1px solid var(--xp-line);
}


.xp-account-next-meta strong {
  color:
    var(--xp-green);

  font-size:
    13px;
}


.xp-account-secondary-link-v3 {
  display:
    grid !important;

  gap:
    3px;

  margin:
    0 !important;

  padding:
    11px 13px !important;

  border:
    1px dashed rgba(33,78,75,.18);

  border-radius:
    12px;

  color:
    var(--xp-muted);

  font-size:
    9.5px;
}


.xp-account-secondary-link-v3 a {
  font-weight:
    850;
}


/* BOOKINGS */
.xp-account-dashboard-v3
.xp-account-bookings {
  margin-top:
    34px;
}


.xp-account-dashboard-v3
.xp-order-list-v3 {
  display:
    grid;

  gap:
    8px;

  max-width:
    none;

  margin:
    0;

  padding:
    0;
}


.xp-account-dashboard-v3
.xp-order-row-v3 {
  display:
    grid !important;

  grid-template-columns:
    52px minmax(0,1fr) 112px auto !important;

  gap:
    12px !important;

  align-items:
    center;

  padding:
    11px 13px !important;

  border-radius:
    13px !important;

  box-shadow:
    0 6px 19px rgba(25,54,51,.045) !important;
}


.xp-order-row-v3
.xp-order-date {
  padding:
    6px 4px !important;

  border-radius:
    9px;
}


.xp-order-row-v3
.xp-order-date strong {
  font-size:
    18px;
}


.xp-order-row-v3
.xp-order-date span {
  font-size:
    8px;
}


.xp-order-row-v3
.xp-order-main h3 {
  margin:
    2px 0 2px;

  font-size:
    13.5px;

  line-height:
    1.2;
}


.xp-order-row-v3
.xp-order-main p {
  margin:
    0;

  overflow:
    hidden;

  color:
    var(--xp-muted);

  font-size:
    9.5px;

  line-height:
    1.35;

  text-overflow:
    ellipsis;

  white-space:
    nowrap;
}


.xp-order-row-v3
.xp-order-status {
  gap:
    2px;
}


.xp-order-row-v3
.xp-order-status strong {
  font-size:
    12px;
}


.xp-order-row-v3
.xp-order-status small {
  font-size:
    8px;
}


.xp-order-row-v3
.xp-status {
  padding:
    3px 6px;

  font-size:
    7.5px;
}


.xp-order-row-v3
.xp-order-open {
  padding:
    7px 10px;

  border-radius:
    8px;
}


.xp-account-quiet-note {
  padding:
    14px 16px;

  border:
    1px dashed var(--xp-line);

  border-radius:
    12px;

  color:
    var(--xp-muted);

  font-size:
    11px;
}


/* PAST BOOKINGS */
.xp-account-dashboard-v3
.xp-past-bookings {
  margin-top:
    11px;
}


.xp-account-dashboard-v3
.xp-past-bookings > summary {
  padding:
    12px 14px;
}


/* TABLET */
@media (max-width: 1040px) {

  .xp-account-workspace {
    grid-template-columns:
      1fr;
  }


  .xp-account-next {
    grid-template-columns:
      minmax(0,1fr)
      minmax(220px,.45fr);

    align-items:
      stretch;
  }


  .xp-account-dashboard-v3
  .xp-account-tools-v3 {
    grid-template-columns:
      repeat(3,minmax(0,1fr)) !important;
  }

}


/* SMALL TABLET */
@media (max-width: 820px) {

  .xp-account-dashboard-v3
  .xp-account-tools-v3 {
    grid-template-columns:
      repeat(2,minmax(0,1fr)) !important;
  }


  .xp-account-dashboard-v3
  .xp-account-overview-v3 {
    grid-template-columns:
      repeat(2,minmax(0,1fr)) !important;
  }


  .xp-account-dashboard-v3
  .xp-account-overview-v3 > div:nth-child(2) {
    border-right:
      0 !important;
  }


  .xp-account-dashboard-v3
  .xp-account-overview-v3 > div:nth-child(-n+2) {
    border-bottom:
      1px solid var(--xp-line) !important;
  }


  .xp-account-next {
    grid-template-columns:
      1fr;
  }


  .xp-account-dashboard-v3
  .xp-account-section-heading {
    grid-template-columns:
      1fr;

    gap:
      7px;
  }

}


/* MOBILE */
@media (max-width: 620px) {

  .xp-account-dashboard-v3 {
    padding:
      22px 16px 58px;
  }


  .xp-account-dashboard-v3
  .xp-account-head-v3 {
    align-items:
      flex-start;
  }


  .xp-account-dashboard-v3
  .xp-account-head-v3 h1 {
    font-size:
      clamp(34px,9vw,41px) !important;
  }


  .xp-account-dashboard-v3
  .xp-account-head-actions {
    width:
      100%;

    justify-content:
      stretch;
  }


  .xp-account-dashboard-v3
  .xp-account-head-actions
  .xp-button {
    flex:
      1 1 140px;
  }


  .xp-account-dashboard-v3
  .xp-account-tools-v3 {
    grid-template-columns:
      1fr !important;
  }


  .xp-account-dashboard-v3
  .xp-account-tool-v3 {
    min-height:
      0 !important;
  }


  .xp-account-dashboard-v3
  .xp-order-row-v3 {
    grid-template-columns:
      46px minmax(0,1fr) auto !important;
  }


  .xp-order-row-v3
  .xp-order-status {
    grid-column:
      2 / -1;

    display:
      flex;

    flex-wrap:
      wrap;

    align-items:
      center;

    justify-content:
      flex-start;

    gap:
      7px;
  }


  .xp-order-row-v3
  .xp-order-open {
    grid-column:
      3;

    grid-row:
      1;
  }


  .xp-order-row-v3
  .xp-order-main p {
    white-space:
      normal;
  }

}










/* ==========================================================================
   XTRIBE V60.8.5.33 — REFINED COMMUNITY PROFILE EDITOR

   Append this to the VERY END of:
   assets/css/xtribe-community.css
   ========================================================================== */


/* --------------------------------------------------------------------------
   1. HERO — profile editor should not use the 76–84px marketing hero scale.
   -------------------------------------------------------------------------- */

.xc-profile-editor-hero-v2 {
  padding:
    42px 0 38px !important;
}


.xc-profile-editor-hero-v2
.xc-form-hero-inner {
  max-width:
    1050px !important;
}


.xc-profile-editor-hero-v2 h1 {
  max-width:
    880px !important;

  margin:
    12px 0 13px !important;

  font-size:
    clamp(44px,4.25vw,58px) !important;

  font-weight:
    500 !important;

  line-height:
    .99 !important;

  letter-spacing:
    -2.25px !important;
}


.xc-profile-editor-hero-v2 h1 em {
  color:
    var(--xc-coral);

  font-style:
    italic;

  font-weight:
    500;
}


.xc-profile-editor-hero-v2 p {
  max-width:
    760px !important;

  margin:
    0 !important;

  font-size:
    14px !important;

  line-height:
    1.65 !important;
}


/* --------------------------------------------------------------------------
   2. MAIN PAGE RHYTHM
   -------------------------------------------------------------------------- */

.xc-profile-editor-section-v2 {
  padding:
    46px 0 82px !important;
}


.xc-profile-editor-layout-v2 {
  display:
    grid !important;

  grid-template-columns:
    minmax(0,1fr)
    285px !important;

  gap:
    24px !important;

  align-items:
    start;
}


.xc-profile-editor-v2 {
  padding:
    0 !important;

  overflow:
    hidden;

  border-radius:
    20px !important;
}


/* Individual steps replace one enormous padded white sheet. */
.xc-profile-edit-step {
  padding:
    27px 30px 29px;

  border-bottom:
    1px solid var(--xc-line);

  background:
    var(--xc-white);
}


.xc-profile-edit-step:last-child {
  border-bottom:
    0;
}


.xc-profile-editor-v2
.xc-editor-section {
  margin:
    0 0 21px !important;

  padding:
    0 !important;

  border:
    0 !important;

  grid-template-columns:
    38px minmax(0,1fr) !important;

  gap:
    13px !important;
}


.xc-profile-editor-v2
.xc-editor-step {
  width:
    36px !important;

  height:
    36px !important;

  font-size:
    8px !important;
}


.xc-profile-editor-v2
.xc-editor-section h2 {
  font-size:
    25px !important;

  line-height:
    1.08 !important;
}


.xc-profile-editor-v2
.xc-editor-section p {
  max-width:
    640px;

  margin-top:
    4px !important;

  font-size:
    10.5px !important;

  line-height:
    1.48;
}


/* --------------------------------------------------------------------------
   3. FORM DENSITY
   -------------------------------------------------------------------------- */

.xc-profile-editor-v2
.xc-form-field {
  gap:
    6px !important;

  margin-bottom:
    16px !important;
}


.xc-profile-editor-v2
.xc-form-field label {
  font-size:
    10.5px !important;
}


.xc-profile-editor-v2
.xc-form-field input,
.xc-profile-editor-v2
.xc-form-field select {
  height:
    44px !important;

  padding:
    0 12px !important;

  border-radius:
    10px !important;

  font-size:
    12px !important;
}


.xc-profile-editor-v2
.xc-form-field textarea {
  min-height:
    0;

  padding:
    11px 12px !important;

  border-radius:
    10px !important;

  font-size:
    12px !important;

  line-height:
    1.5 !important;
}


.xc-profile-editor-v2
.xc-form-field small {
  font-size:
    8.5px !important;
}


.xc-profile-editor-v2
.xc-form-two {
  gap:
    12px !important;
}


.xc-profile-editor-v2
.xc-image-upload-grid {
  gap:
    12px !important;

  margin-bottom:
    18px !important;
}


.xc-profile-editor-v2
.xc-image-upload {
  grid-template-columns:
    74px minmax(0,1fr) !important;

  gap:
    4px 11px !important;

  padding:
    12px !important;

  border-radius:
    13px !important;
}


.xc-profile-editor-v2
.xc-image-upload img,
.xc-profile-editor-v2
.xc-image-upload i {
  width:
    74px !important;

  height:
    84px !important;

  border-radius:
    10px !important;
}


.xc-profile-editor-v2
.xc-image-upload > span {
  font-size:
    10.5px !important;
}


.xc-profile-editor-v2
.xc-image-upload input {
  font-size:
    9px !important;
}


.xc-profile-editor-v2
.xc-image-upload small {
  font-size:
    8px !important;
}


/* Private information remains visually distinct, but less oversized. */
.xc-profile-editor-v2
.xc-private-fieldset {
  padding:
    17px !important;

  border-radius:
    13px !important;
}


.xc-profile-editor-v2
.xc-private-fieldset
.xc-form-field:last-of-type {
  margin-bottom:
    10px !important;
}


/* --------------------------------------------------------------------------
   4. VISIBILITY / COMPLETENESS
   -------------------------------------------------------------------------- */

.xc-profile-visibility-row {
  display:
    grid;

  grid-template-columns:
    minmax(0,1fr)
    170px;

  gap:
    12px;

  align-items:
    stretch;

  margin-bottom:
    13px;
}


.xc-profile-visibility-row
.xc-form-field {
  margin-bottom:
    0 !important;
}


.xc-profile-completion-v2 {
  display:
    grid !important;

  min-height:
    68px;

  place-content:
    center;

  padding:
    10px;

  border-radius:
    12px !important;

  background:
    var(--xc-sage);

  text-align:
    center;
}


.xc-profile-completion-v2 b {
  font:
    500 28px/1 var(--xc-serif) !important;

  color:
    var(--xc-coral);
}


.xc-profile-completion-v2 span {
  margin-top:
    4px;

  color:
    var(--xc-muted);

  font-size:
    8px !important;
}


/* --------------------------------------------------------------------------
   5. CONSENT — dedicated grid fixes checkbox alignment.

   Do not rely on generic .xc-confirmation because it is used elsewhere.
   -------------------------------------------------------------------------- */

.xc-profile-consent-list {
  display:
    grid;

  gap:
    8px;
}


.xc-profile-consent-row {
  display:
    grid !important;

  grid-template-columns:
    20px minmax(0,1fr) !important;

  gap:
    11px !important;

  align-items:
    start !important;

  width:
    100%;

  margin:
    0 !important;

  padding:
    13px 14px !important;

  border:
    1px solid rgba(10,52,52,.07);

  border-radius:
    12px;

  background:
    var(--xc-paper);

  color:
    #46504C;

  cursor:
    pointer;
}


.xc-profile-consent-row:hover {
  border-color:
    rgba(228,125,107,.32);
}


.xc-profile-consent-row
input[type="checkbox"] {
  appearance:
    auto !important;

  display:
    block !important;

  width:
    16px !important;

  height:
    16px !important;

  min-width:
    16px !important;

  max-width:
    16px !important;

  margin:
    2px 0 0 !important;

  padding:
    0 !important;

  justify-self:
    start !important;

  align-self:
    start !important;

  accent-color:
    var(--xc-coral);

  box-shadow:
    none !important;
}


.xc-profile-consent-copy {
  display:
    grid !important;

  min-width:
    0;

  gap:
    3px;

  margin:
    0 !important;

  padding:
    0 !important;

  text-align:
    left !important;
}


.xc-profile-consent-copy b {
  display:
    block;

  color:
    var(--xc-ink);

  font-size:
    10.5px;

  font-weight:
    850;

  line-height:
    1.35;
}


.xc-profile-consent-copy small {
  display:
    block;

  max-width:
    650px;

  color:
    var(--xc-muted);

  font-size:
    9.5px;

  line-height:
    1.48;
}


.xc-profile-publish-row {
  border-color:
    rgba(10,52,52,.10);

  background:
    var(--xc-sage);
}


/* --------------------------------------------------------------------------
   6. GUIDANCE RAIL — useful throughout the editor.
   -------------------------------------------------------------------------- */

.xc-profile-guidance-v2 {
  gap:
    12px !important;

  top:
    88px !important;
}


.xc-profile-guidance-v2
.xc-guidance-card {
  padding:
    19px !important;

  border-radius:
    16px !important;
}


.xc-profile-guidance-v2
.xc-card-number {
  width:
    34px;

  height:
    34px;

  font-size:
    8px;
}


.xc-profile-guidance-v2
.xc-guidance-card h2 {
  margin:
    13px 0 10px !important;

  font-size:
    23px !important;
}


.xc-profile-guidance-v2
.xc-guidance-card h3 {
  margin:
    8px 0 !important;

  font-size:
    21px !important;
}


.xc-profile-guidance-v2
.xc-guidance-card ul {
  margin:
    0;

  padding-left:
    16px;

  font-size:
    10.5px !important;

  line-height:
    1.65 !important;
}


.xc-profile-guidance-v2
.xc-guidance-card p {
  font-size:
    10.5px !important;

  line-height:
    1.55 !important;
}


.xc-guidance-completion {
  display:
    flex;

  align-items:
    baseline;

  gap:
    5px;

  margin:
    12px 0 8px;
}


.xc-guidance-completion b {
  color:
    var(--xc-coral);

  font:
    500 34px/1 var(--xc-serif);
}


.xc-guidance-completion span {
  color:
    var(--xc-muted);

  font-size:
    9px;
}


/* --------------------------------------------------------------------------
   7. ACTIONS
   -------------------------------------------------------------------------- */

.xc-profile-editor-v2
.xc-form-actions {
  margin-top:
    18px !important;
}


/* --------------------------------------------------------------------------
   TABLET
   -------------------------------------------------------------------------- */

@media (max-width: 900px) {

  .xc-profile-editor-layout-v2 {
    grid-template-columns:
      1fr !important;
  }


  .xc-profile-guidance-v2 {
    position:
      static !important;

    grid-template-columns:
      repeat(2,minmax(0,1fr));

    display:
      grid;
  }

}


/* --------------------------------------------------------------------------
   MOBILE
   -------------------------------------------------------------------------- */

@media (max-width: 640px) {

  .xc-profile-editor-hero-v2 {
    padding:
      34px 0 30px !important;
  }


  .xc-profile-editor-hero-v2 h1 {
    font-size:
      clamp(38px,10vw,46px) !important;

    line-height:
      1.01 !important;

    letter-spacing:
      -1.7px !important;
  }


  .xc-profile-editor-section-v2 {
    padding:
      34px 0 60px !important;
  }


  .xc-profile-edit-step {
    padding:
      21px 18px 23px;
  }


  .xc-profile-editor-v2
  .xc-form-two,
  .xc-profile-editor-v2
  .xc-image-upload-grid,
  .xc-profile-visibility-row {
    grid-template-columns:
      1fr !important;
  }


  .xc-profile-completion-v2 {
    min-height:
      60px;
  }


  .xc-profile-guidance-v2 {
    grid-template-columns:
      1fr;
  }


  .xc-profile-consent-row {
    grid-template-columns:
      18px minmax(0,1fr) !important;

    gap:
      9px !important;

    padding:
      12px !important;
  }


  .xc-profile-consent-row
  input[type="checkbox"] {
    width:
      15px !important;

    height:
      15px !important;

    min-width:
      15px !important;

    max-width:
      15px !important;
  }

}





/* ==========================================================
   PROFILE EDITOR — SEPARATE BACK LINK AND EYEBROW
   ========================================================== */

.xc-profile-editor-hero-v2 .xc-back-link {
  display: block !important;

  width: fit-content;

  margin:
    0 0 18px !important;
}


.xc-profile-editor-hero-v2 .xc-eyebrow {
  display: block !important;

  margin:
    0 0 10px !important;
}









/* ==========================================================================
   XTRIBE V60.8.5.34 — COMMUNITY MESSAGES INBOX

   Append this file at the VERY END of:
   assets/css/xtribe-community.css
   ========================================================================== */


/* --------------------------------------------------------------------------
   COMPACT HERO
   -------------------------------------------------------------------------- */

.xc-message-centre-page
.xc-message-hero-v2 {
  padding:
    44px 0 42px !important;

  background:
    var(--xc-ink);
}


.xc-message-hero-inner-v2 {
  display:
    grid !important;

  grid-template-columns:
    minmax(0,1fr) auto;

  gap:
    36px;

  align-items:
    end !important;
}


.xc-message-hero-copy
.xc-back-link {
  display:
    block !important;

  width:
    fit-content;

  margin:
    0 0 16px !important;

  color:
    var(--xc-paper) !important;

  opacity:
    .88;
}


.xc-message-hero-copy
.xc-eyebrow {
  display:
    block !important;

  margin:
    0 0 9px !important;
}


.xc-message-hero-v2 h1 {
  max-width:
    720px !important;

  margin:
    0 0 12px !important;

  color:
    var(--xc-paper);

  font-family:
    var(--xc-serif);

  font-size:
    clamp(43px,4vw,56px) !important;

  font-weight:
    500;

  line-height:
    .99 !important;

  letter-spacing:
    -2.05px !important;
}


.xc-message-hero-v2 h1 em {
  color:
    var(--xc-coral);

  font-style:
    italic;

  font-weight:
    500;
}


.xc-message-hero-v2 p {
  max-width:
    650px;

  margin:
    0;

  color:
    rgba(250,247,241,.74);

  font-size:
    13px;

  line-height:
    1.6;
}


.xc-message-find-members {
  min-width:
    144px;

  justify-self:
    end;

  white-space:
    nowrap;
}


/* --------------------------------------------------------------------------
   PAGE SPACING
   -------------------------------------------------------------------------- */

.xc-message-centre-page
.xc-message-section-v2 {
  padding:
    44px 0 76px !important;
}


/* --------------------------------------------------------------------------
   WORKSPACE SHELL
   -------------------------------------------------------------------------- */

.xc-inbox-shell {
  overflow:
    hidden;

  border:
    1px solid var(--xc-line);

  border-radius:
    20px;

  background:
    var(--xc-white);

  box-shadow:
    0 13px 36px rgba(10,52,52,.055);
}


/* --------------------------------------------------------------------------
   TABS
   -------------------------------------------------------------------------- */

.xc-inbox-tabs {
  display:
    grid;

  grid-template-columns:
    repeat(4,minmax(0,1fr));

  border-bottom:
    1px solid var(--xc-line);

  background:
    #FCFAF5;
}


.xc-inbox-tabs a {
  display:
    flex;

  align-items:
    center;

  justify-content:
    center;

  gap:
    8px;

  min-height:
    56px;

  padding:
    10px 14px;

  border-right:
    1px solid var(--xc-line);

  color:
    rgba(10,52,52,.62);

  font-size:
    11px;

  font-weight:
    800;

  text-decoration:
    none;

  transition:
    background .16s ease,
    color .16s ease;
}


.xc-inbox-tabs a:last-child {
  border-right:
    0;
}


.xc-inbox-tabs a:hover,
.xc-inbox-tabs a:focus-visible {
  background:
    var(--xc-paper);

  color:
    var(--xc-ink);
}


.xc-inbox-tabs a.is-active {
  background:
    var(--xc-ink);

  color:
    var(--xc-paper);
}


.xc-inbox-tabs b {
  display:
    grid;

  min-width:
    22px;

  height:
    22px;

  place-items:
    center;

  padding:
    0 6px;

  border-radius:
    999px;

  background:
    rgba(10,52,52,.08);

  font-size:
    9px;
}


.xc-inbox-tabs a.is-active b {
  background:
    rgba(250,247,241,.14);

  color:
    var(--xc-paper);
}


/* --------------------------------------------------------------------------
   TWO-PANE LAYOUT
   -------------------------------------------------------------------------- */

.xc-inbox-grid {
  display:
    grid;

  grid-template-columns:
    330px minmax(0,1fr);

  min-height:
    440px;
}


.xc-inbox-list {
  min-width:
    0;

  border-right:
    1px solid var(--xc-line);

  background:
    #FCFAF5;
}


.xc-inbox-detail {
  min-width:
    0;

  padding:
    30px;
}


/* --------------------------------------------------------------------------
   LEFT LIST
   -------------------------------------------------------------------------- */

.xc-inbox-list-heading {
  display:
    flex;

  align-items:
    center;

  justify-content:
    space-between;

  gap:
    12px;

  padding:
    18px 18px 14px;

  border-bottom:
    1px solid var(--xc-line);
}


.xc-inbox-list-heading
.xc-eyebrow {
  margin:
    0;
}


.xc-inbox-list-heading > strong {
  color:
    var(--xc-muted);

  font-size:
    10px;
}


.xc-inbox-rows {
  display:
    grid;
}


.xc-inbox-row {
  position:
    relative;

  display:
    grid;

  grid-template-columns:
    40px minmax(0,1fr);

  gap:
    11px;

  min-width:
    0;

  padding:
    15px 16px;

  border-bottom:
    1px solid var(--xc-line);

  color:
    inherit;

  text-decoration:
    none;

  transition:
    background .15s ease,
    border-color .15s ease;
}


.xc-inbox-row:hover,
.xc-inbox-row:focus-visible {
  background:
    var(--xc-paper);
}


.xc-inbox-row.is-selected {
  background:
    var(--xc-sage);

  box-shadow:
    inset 3px 0 0 var(--xc-coral);
}


.xc-inbox-avatar {
  width:
    40px !important;

  height:
    40px !important;

  font-size:
    11px !important;
}


.xc-inbox-row-copy {
  display:
    block;

  min-width:
    0;
}


.xc-inbox-row-top {
  display:
    flex;

  align-items:
    baseline;

  justify-content:
    space-between;

  gap:
    10px;
}


.xc-inbox-row-top b {
  overflow:
    hidden;

  color:
    var(--xc-ink);

  font-size:
    11.5px;

  line-height:
    1.25;

  text-overflow:
    ellipsis;

  white-space:
    nowrap;
}


.xc-inbox-row-top time {
  flex:
    0 0 auto;

  color:
    var(--xc-muted);

  font-size:
    8px;
}


.xc-inbox-row-copy > small {
  display:
    block;

  overflow:
    hidden;

  margin-top:
    2px;

  color:
    var(--xc-muted);

  font-size:
    8.5px;

  line-height:
    1.35;

  text-overflow:
    ellipsis;

  white-space:
    nowrap;
}


.xc-inbox-row-copy > p {
  display:
    -webkit-box;

  overflow:
    hidden;

  margin:
    7px 0 0;

  color:
    rgba(10,52,52,.66);

  font-size:
    9.5px;

  line-height:
    1.45;

  -webkit-box-orient:
    vertical;

  -webkit-line-clamp:
    2;
}


.xc-inbox-mini-status {
  position:
    absolute;

  right:
    13px;

  bottom:
    10px;

  color:
    var(--xc-coral);

  font-size:
    7px;

  font-weight:
    900;

  letter-spacing:
    .08em;

  text-transform:
    uppercase;
}


.xc-inbox-list-empty {
  display:
    grid;

  gap:
    5px;

  padding:
    26px 20px;

  color:
    var(--xc-muted);
}


.xc-inbox-list-empty b {
  color:
    var(--xc-ink);

  font-size:
    12px;
}


.xc-inbox-list-empty span {
  max-width:
    240px;

  font-size:
    10px;

  line-height:
    1.55;
}


/* --------------------------------------------------------------------------
   RIGHT DETAIL
   -------------------------------------------------------------------------- */

.xc-inbox-detail-card {
  max-width:
    720px;
}


.xc-inbox-person-header {
  display:
    grid;

  grid-template-columns:
    54px minmax(0,1fr) auto;

  gap:
    14px;

  align-items:
    center;

  padding-bottom:
    22px;

  border-bottom:
    1px solid var(--xc-line);
}


.xc-inbox-detail-avatar {
  width:
    54px !important;

  height:
    54px !important;

  font-size:
    14px !important;
}


.xc-inbox-person-header
.xc-eyebrow {
  margin-bottom:
    4px;
}


.xc-inbox-person-header h2 {
  margin:
    0 0 3px;

  color:
    var(--xc-ink);

  font-family:
    var(--xc-serif);

  font-size:
    clamp(28px,2.7vw,38px);

  font-weight:
    500;

  line-height:
    1.04;

  letter-spacing:
    -1.1px;
}


.xc-inbox-person-header p {
  margin:
    0;

  color:
    var(--xc-muted);

  font-size:
    10.5px;
}


.xc-inbox-person-header time {
  color:
    var(--xc-muted);

  font-size:
    9px;
}


.xc-inbox-context {
  margin:
    24px 0 20px;

  padding:
    20px;

  border:
    1px solid rgba(10,52,52,.08);

  border-left:
    3px solid var(--xc-coral);

  border-radius:
    0 13px 13px 0;

  background:
    var(--xc-paper);
}


.xc-inbox-context
.xc-eyebrow {
  display:
    block;

  margin-bottom:
    9px;
}


.xc-inbox-context p,
.xc-inbox-context blockquote {
  margin:
    0;

  color:
    #46504C;

  font-size:
    12.5px;

  line-height:
    1.68;
}


.xc-inbox-context blockquote {
  padding:
    0;

  border:
    0;

  font-style:
    normal;
}


.xc-inbox-profile-link {
  display:
    inline-flex;

  gap:
    7px;

  margin:
    -2px 0 21px;

  color:
    var(--xc-ink);

  font-size:
    10.5px;

  font-weight:
    850;

  text-decoration:
    none;
}


.xc-inbox-profile-link:hover,
.xc-inbox-profile-link:focus-visible {
  color:
    var(--xc-coral);
}


.xc-inbox-decision,
.xc-inbox-detail-actions {
  display:
    flex;

  flex-wrap:
    wrap;

  gap:
    9px;

  align-items:
    center;
}


.xc-inbox-decision form {
  margin:
    0;
}


.xc-inbox-decision-note,
.xc-inbox-waiting-note,
.xc-inbox-archive-note {
  max-width:
    650px;

  margin:
    15px 0 0;

  color:
    var(--xc-muted);

  font-size:
    9.5px;

  line-height:
    1.55;
}


.xc-inbox-waiting-note {
  margin-bottom:
    18px;

  padding:
    13px 14px;

  border-radius:
    11px;

  background:
    var(--xc-sage);
}


.xc-inbox-detail-empty {
  display:
    grid;

  max-width:
    540px;

  min-height:
    330px;

  place-content:
    center start;

  gap:
    10px;

  padding:
    20px;
}


.xc-inbox-empty-mark {
  display:
    grid;

  width:
    38px;

  height:
    38px;

  place-items:
    center;

  margin-bottom:
    4px;

  border-radius:
    50%;

  background:
    var(--xc-sage);

  color:
    var(--xc-coral);
}


.xc-inbox-detail-empty h2 {
  margin:
    0;

  color:
    var(--xc-ink);

  font-family:
    var(--xc-serif);

  font-size:
    31px;

  font-weight:
    500;

  line-height:
    1.05;

  letter-spacing:
    -1px;
}


.xc-inbox-detail-empty p {
  max-width:
    480px;

  margin:
    0 0 8px;

  color:
    var(--xc-muted);

  font-size:
    11px;

  line-height:
    1.6;
}


/* --------------------------------------------------------------------------
   SAFETY STRIP
   -------------------------------------------------------------------------- */

.xc-inbox-safety {
  display:
    grid;

  grid-template-columns:
    24px minmax(0,1fr);

  gap:
    10px;

  align-items:
    start;

  padding:
    15px 18px;

  border-top:
    1px solid var(--xc-line);

  background:
    var(--xc-sage);
}


.xc-inbox-safety > span {
  color:
    var(--xc-coral);

  font-size:
    12px;
}


.xc-inbox-safety p {
  max-width:
    850px;

  margin:
    0;

  color:
    rgba(10,52,52,.72);

  font-size:
    9.5px;

  line-height:
    1.55;
}


.xc-inbox-safety strong {
  color:
    var(--xc-ink);
}


/* --------------------------------------------------------------------------
   TABLET
   -------------------------------------------------------------------------- */

@media (max-width: 900px) {

  .xc-message-hero-inner-v2 {
    grid-template-columns:
      1fr !important;

    gap:
      18px;
  }


  .xc-message-find-members {
    justify-self:
      start;
  }


  .xc-inbox-grid {
    grid-template-columns:
      280px minmax(0,1fr);
  }


  .xc-inbox-detail {
    padding:
      24px;
  }

}


/* --------------------------------------------------------------------------
   MOBILE
   -------------------------------------------------------------------------- */

@media (max-width: 680px) {

  .xc-message-centre-page
  .xc-message-hero-v2 {
    padding:
      34px 0 32px !important;
  }


  .xc-message-hero-v2 h1 {
    font-size:
      clamp(38px,10vw,46px) !important;

    letter-spacing:
      -1.6px !important;
  }


  .xc-message-centre-page
  .xc-message-section-v2 {
    padding:
      28px 0 56px !important;
  }


  .xc-inbox-tabs {
    grid-template-columns:
      repeat(4,minmax(92px,1fr));

    overflow-x:
      auto;
  }


  .xc-inbox-tabs a {
    min-height:
      50px;

    padding:
      8px 10px;

    font-size:
      10px;
  }


  .xc-inbox-grid {
    grid-template-columns:
      1fr;

    min-height:
      0;
  }


  .xc-inbox-list {
    max-height:
      330px;

    overflow-y:
      auto;

    border-right:
      0;

    border-bottom:
      1px solid var(--xc-line);
  }


  .xc-inbox-detail {
    padding:
      22px 18px;
  }


  .xc-inbox-person-header {
    grid-template-columns:
      46px minmax(0,1fr);

    gap:
      11px;
  }


  .xc-inbox-person-header
  > .xc-status-pill,
  .xc-inbox-person-header
  > time {
    grid-column:
      2;
  }


  .xc-inbox-detail-avatar {
    width:
      46px !important;

    height:
      46px !important;
  }


  .xc-inbox-context {
    margin:
      18px 0;

    padding:
      16px;
  }


  .xc-inbox-decision,
  .xc-inbox-detail-actions {
    align-items:
      stretch;

    flex-direction:
      column;
  }


  .xc-inbox-decision form,
  .xc-inbox-decision .xc-button,
  .xc-inbox-detail-actions .xc-button {
    width:
      100%;
  }

}










/* ==========================================================================
   XTRIBE V60.8.5.38 — REFINED EXPERIENCES LISTING

   Append this at the VERY END of:
   assets/css/xtribe-public.css
   ========================================================================== */


/* --------------------------------------------------------------------------
   SHARED SHELL
   -------------------------------------------------------------------------- */

.xp-events-list-page
.xp-events-shell {
  width:
    min(calc(100% - 44px),1240px);

  margin-inline:
    auto;
}


/* --------------------------------------------------------------------------
   HERO
   -------------------------------------------------------------------------- */

.xp-events-list-page
.xp-events-hero-v2 {
  padding:
    50px 0 46px;

  background:
    linear-gradient(
      135deg,
      #E3ECE5 0%,
      #FAF7F1 68%
    );
}


.xp-events-list-page
.xp-events-hero-grid-v2 {
  display:
    grid;

  grid-template-columns:
    minmax(0,1.25fr)
    minmax(300px,.75fr);

  gap:
    56px;

  align-items:
    center;
}


.xp-events-list-page
.xp-events-hero-copy h1 {
  max-width:
    780px;

  margin:
    10px 0 15px;

  color:
    #0A3434;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    clamp(46px,4.5vw,62px);

  font-weight:
    500;

  line-height:
    .98;

  letter-spacing:
    -2.35px;
}


.xp-events-list-page
.xp-events-hero-copy h1 em {
  display:
    block;

  color:
    #E47D6B;

  font-style:
    italic;

  font-weight:
    500;
}


.xp-events-list-page
.xp-events-hero-copy > p {
  max-width:
    720px;

  margin:
    0;

  color:
    #6F7470;

  font-size:
    14px;

  line-height:
    1.65;
}


.xp-events-promise {
  display:
    grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:
    9px;

  max-width:
    760px;

  margin-top:
    22px;
}


.xp-events-promise > span {
  display:
    grid;

  gap:
    3px;

  padding:
    11px 12px;

  border:
    1px solid rgba(10,52,52,.08);

  border-radius:
    11px;

  background:
    rgba(255,255,255,.48);

  color:
    #747068;

  font-size:
    9px;

  line-height:
    1.42;
}


.xp-events-promise b {
  color:
    #0A3434;

  font-size:
    9.5px;
}


/* --------------------------------------------------------------------------
   FORMAT CARD
   -------------------------------------------------------------------------- */

.xp-events-format-card {
  padding:
    23px;

  border-radius:
    19px;

  background:
    #0A3434;

  color:
    #FAF7F1;

  box-shadow:
    0 16px 38px rgba(10,52,52,.09);
}


.xp-events-format-card h2 {
  margin:
    8px 0 16px;

  color:
    #FAF7F1;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    26px;

  font-weight:
    500;

  line-height:
    1.08;

  letter-spacing:
    -.75px;
}


.xp-events-format-card ol {
  display:
    grid;

  margin:
    0;

  padding:
    0;

  list-style:
    none;
}


.xp-events-format-card li {
  display:
    grid;

  grid-template-columns:
    28px minmax(0,1fr);

  gap:
    9px;

  align-items:
    center;

  padding:
    9px 0;

  border-top:
    1px solid rgba(255,255,255,.11);
}


.xp-events-format-card li b {
  display:
    grid;

  width:
    25px;

  height:
    25px;

  place-items:
    center;

  border-radius:
    50%;

  background:
    rgba(255,255,255,.08);

  color:
    #E47D6B;

  font-size:
    8px;
}


.xp-events-format-card li span {
  color:
    rgba(250,247,241,.75);

  font-size:
    9.5px;

  line-height:
    1.42;
}


/* --------------------------------------------------------------------------
   FILTER PANEL
   -------------------------------------------------------------------------- */

.xp-events-filter-section {
  padding:
    22px 0 0;
}


.xp-events-filter-v2 {
  display:
    grid;

  grid-template-columns:
    1.05fr
    minmax(210px,1.3fr)
    minmax(150px,.65fr)
    minmax(175px,.75fr)
    minmax(145px,.58fr)
    auto;

  gap:
    8px;

  align-items:
    end;

  padding:
    13px;

  border:
    1px solid #E6DFD3;

  border-radius:
    16px;

  background:
    #FFFFFF;

  box-shadow:
    0 8px 26px rgba(25,54,51,.045);
}


.xp-events-filter-intro {
  display:
    grid;

  gap:
    4px;

  align-self:
    center;

  padding:
    0 10px 0 4px;
}


.xp-events-filter-intro strong {
  color:
    #214E4B;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    16px;

  font-weight:
    500;

  line-height:
    1.12;
}


.xp-events-filter-v2 label {
  display:
    grid;

  gap:
    4px;

  margin:
    0;

  color:
    #214E4B;

  font-size:
    8.5px;

  font-weight:
    850;
}


.xp-events-filter-v2 label > span {
  padding-left:
    2px;
}


.xp-events-filter-v2 input,
.xp-events-filter-v2 select {
  height:
    42px;

  padding:
    0 10px;

  border-radius:
    9px;

  font-size:
    10px;
}


.xp-events-filter-actions {
  display:
    grid;

  gap:
    4px;
}


.xp-events-filter-actions button {
  min-height:
    42px;

  padding:
    0 15px;

  border:
    0;

  border-radius:
    9px;

  background:
    #214E4B;

  color:
    #FFFFFF;

  font-size:
    9.5px;

  font-weight:
    850;

  white-space:
    nowrap;

  cursor:
    pointer;
}


.xp-events-filter-actions a {
  justify-self:
    center;

  color:
    #747068;

  font-size:
    8px;

  font-weight:
    750;
}


/* --------------------------------------------------------------------------
   RESULTS HEADING
   -------------------------------------------------------------------------- */

.xp-events-results-head {
  padding:
    38px 0 17px;
}


.xp-events-results-head-inner {
  display:
    flex;

  align-items:
    end;

  justify-content:
    space-between;

  gap:
    30px;
}


.xp-events-results-head h2 {
  max-width:
    760px;

  margin:
    5px 0 5px;

  color:
    #214E4B;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    clamp(34px,3.5vw,46px);

  font-weight:
    500;

  line-height:
    1.02;

  letter-spacing:
    -1.45px;
}


.xp-events-results-head h2 em {
  color:
    #E47D6B;

  font-style:
    italic;

  font-weight:
    500;
}


.xp-events-results-head p {
  max-width:
    650px;

  margin:
    0;

  color:
    #747068;

  font-size:
    10.5px;

  line-height:
    1.5;
}


.xp-events-result-count {
  display:
    flex;

  align-items:
    baseline;

  gap:
    6px;

  padding-bottom:
    4px;
}


.xp-events-result-count strong {
  color:
    #214E4B;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    30px;

  font-weight:
    500;
}


.xp-events-result-count span {
  color:
    #747068;

  font-size:
    9px;

  font-weight:
    750;
}


/* --------------------------------------------------------------------------
   GRID
   -------------------------------------------------------------------------- */

.xp-events-list-section {
  padding-bottom:
    50px;
}


.xp-events-list-page
.xp-event-grid-v2 {
  max-width:
    none !important;

  margin:
    0 !important;

  padding:
    0 !important;

  grid-template-columns:
    repeat(3,minmax(0,1fr)) !important;

  gap:
    13px !important;
}


/* --------------------------------------------------------------------------
   CARDS
   -------------------------------------------------------------------------- */

.xp-events-list-page
.xp-event-card-v2 {
  overflow:
    hidden;

  min-width:
    0;

  border-radius:
    17px !important;

  box-shadow:
    0 7px 25px rgba(25,54,51,.035) !important;

  transition:
    transform .17s ease,
    box-shadow .17s ease,
    border-color .17s ease;
}


.xp-events-list-page
.xp-event-card-v2:hover {
  transform:
    translateY(-3px);

  border-color:
    rgba(33,78,75,.22);

  box-shadow:
    0 14px 34px rgba(25,54,51,.085) !important;
}


/* Visual header is smaller than the old 220px image block and remains useful
   even when no event image exists. */
.xp-event-visual-v2 {
  position:
    relative;

  display:
    grid;

  min-height:
    150px;

  grid-template-columns:
    minmax(0,1fr) auto;

  grid-template-rows:
    auto 1fr auto;

  gap:
    9px;

  overflow:
    hidden;

  padding:
    13px;

  background-position:
    center;

  background-size:
    cover;

  color:
    #FFFFFF;
}


.xp-event-visual-v2::before {
  position:
    absolute;

  inset:
    0;

  content:
    "";
}


.xp-event-visual-v2.has-image::before {
  background:
    linear-gradient(
      145deg,
      rgba(10,52,52,.82),
      rgba(10,52,52,.26)
    );
}


.xp-event-visual-v2.no-image {
  background:
    linear-gradient(
      145deg,
      #315D59,
      #143936
    );
}


.xp-event-visual-v2.no-image::before {
  background:
    radial-gradient(
      circle at 82% 18%,
      rgba(227,236,229,.13) 0 42px,
      transparent 43px
    ),
    radial-gradient(
      circle at 70% 85%,
      rgba(228,125,107,.14) 0 62px,
      transparent 63px
    );
}


.xp-event-visual-v2 > * {
  position:
    relative;

  z-index:
    1;
}


.xp-event-series-pill {
  align-self:
    start;

  justify-self:
    start;

  max-width:
    210px;

  overflow:
    hidden;

  padding:
    5px 8px;

  border-radius:
    999px;

  background:
    rgba(255,255,255,.92);

  color:
    #214E4B;

  font-size:
    7.5px;

  font-weight:
    900;

  line-height:
    1.2;

  text-overflow:
    ellipsis;

  white-space:
    nowrap;
}


.xp-event-date-block {
  grid-column:
    2;

  grid-row:
    1 / span 2;

  display:
    grid;

  width:
    55px;

  min-height:
    70px;

  place-content:
    center;

  align-self:
    start;

  border:
    1px solid rgba(255,255,255,.28);

  border-radius:
    12px;

  background:
    rgba(10,52,52,.64);

  text-align:
    center;

  backdrop-filter:
    blur(7px);
}


.xp-event-date-block strong,
.xp-event-date-block span,
.xp-event-date-block small {
  display:
    block;
}


.xp-event-date-block strong {
  font-size:
    23px;

  line-height:
    1;
}


.xp-event-date-block span {
  margin-top:
    2px;

  color:
    #E9C985;

  font-size:
    8px;

  font-weight:
    900;

  letter-spacing:
    .08em;
}


.xp-event-date-block small {
  margin-top:
    3px;

  color:
    rgba(255,255,255,.66);

  font-size:
    7px;
}


.xp-event-visual-place {
  grid-column:
    1 / -1;

  align-self:
    end;

  display:
    grid;

  gap:
    1px;

  max-width:
    75%;
}


.xp-event-visual-place span {
  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    18px;

  line-height:
    1.05;
}


.xp-event-visual-place small {
  overflow:
    hidden;

  color:
    rgba(255,255,255,.72);

  font-size:
    8px;

  text-overflow:
    ellipsis;

  white-space:
    nowrap;
}


/* --------------------------------------------------------------------------
   CARD BODY
   -------------------------------------------------------------------------- */

.xp-events-list-page
.xp-event-body-v2 {
  padding:
    16px 17px 17px !important;
}


.xp-event-context-line {
  display:
    flex;

  align-items:
    center;

  justify-content:
    space-between;

  gap:
    10px;

  color:
    #747068;

  font-size:
    8.5px;
}


.xp-event-availability {
  display:
    inline-flex;

  align-items:
    center;

  padding:
    4px 7px;

  border-radius:
    999px;

  font-size:
    7px;

  font-weight:
    900;

  letter-spacing:
    .02em;

  text-transform:
    uppercase;
}


.xp-event-availability.is-open {
  background:
    #E5F3EA;

  color:
    #2F6D4F;
}


.xp-event-availability.is-limited {
  background:
    #FFF0E8;

  color:
    #A65A43;
}


.xp-event-card-v2 h3 {
  margin:
    10px 0 8px !important;

  font-size:
    20px !important;

  line-height:
    1.11 !important;

  letter-spacing:
    -.45px;
}


.xp-event-card-v2 h3 a {
  color:
    #214E4B;
}


.xp-event-series-context {
  margin:
    -2px 0 8px !important;

  color:
    #E47D6B !important;

  font-size:
    8.5px !important;

  font-weight:
    750;
}


.xp-event-description {
  display:
    -webkit-box;

  overflow:
    hidden;

  min-height:
    60px;

  margin:
    0 !important;

  color:
    #747068 !important;

  font-size:
    10px !important;

  line-height:
    1.52 !important;

  -webkit-box-orient:
    vertical;

  -webkit-line-clamp:
    4;
}


.xp-event-facts {
  display:
    grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:
    7px;

  margin-top:
    13px;
}


.xp-event-facts > span {
  display:
    grid;

  gap:
    2px;

  min-width:
    0;

  padding:
    8px 9px;

  border-radius:
    9px;

  background:
    #FAF8F4;

  color:
    #747068;

  font-size:
    8px;

  overflow:
    hidden;

  text-overflow:
    ellipsis;

  white-space:
    nowrap;
}


.xp-event-facts b {
  color:
    #214E4B;

  font-size:
    7px;

  letter-spacing:
    .06em;

  text-transform:
    uppercase;
}


.xp-event-bottom-v2 {
  margin-top:
    14px !important;

  padding-top:
    12px;

  border-top:
    1px solid #E6DFD3;
}


.xp-event-price {
  display:
    flex;

  align-items:
    baseline;

  gap:
    5px;
}


.xp-event-price small {
  color:
    #747068;

  font-size:
    8px;
}


.xp-event-price strong {
  color:
    #214E4B;

  font-size:
    15px;
}


.xp-event-bottom-v2
.xp-button.small {
  padding:
    8px 10px;

  border-radius:
    8px;

  font-size:
    8.5px;
}


/* --------------------------------------------------------------------------
   EMPTY STATE
   -------------------------------------------------------------------------- */

.xp-events-empty-v2 {
  padding:
    45px !important;
}


.xp-events-empty-v2 h3 {
  margin:
    7px 0 6px;

  color:
    #214E4B;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    30px;
}


.xp-events-empty-v2 p {
  max-width:
    550px;

  margin:
    0 auto 18px;

  color:
    #747068;

  font-size:
    11px;
}


/* --------------------------------------------------------------------------
   TRUST STRIP
   -------------------------------------------------------------------------- */

.xp-events-trust-v2 {
  padding:
    43px 0;

  background:
    #0A3434;
}


.xp-events-trust-inner-v2 {
  display:
    grid;

  grid-template-columns:
    minmax(260px,.75fr)
    minmax(0,1.25fr);

  gap:
    48px;

  align-items:
    center;
}


.xp-events-trust-v2 h2 {
  max-width:
    470px;

  margin:
    6px 0 0;

  color:
    #FAF7F1;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    34px;

  font-weight:
    500;

  line-height:
    1.03;

  letter-spacing:
    -1.05px;
}


.xp-events-trust-points {
  display:
    grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:
    9px;
}


.xp-events-trust-points > span {
  display:
    grid;

  gap:
    4px;

  padding:
    13px;

  border:
    1px solid rgba(255,255,255,.12);

  border-radius:
    11px;

  color:
    rgba(250,247,241,.62);

  font-size:
    8.5px;

  line-height:
    1.48;
}


.xp-events-trust-points b {
  color:
    #FAF7F1;

  font-size:
    9.5px;
}


/* --------------------------------------------------------------------------
   TABLET
   -------------------------------------------------------------------------- */

@media (max-width: 1050px) {

  .xp-events-list-page
  .xp-events-hero-grid-v2 {
    grid-template-columns:
      minmax(0,1fr) 300px;

    gap:
      32px;
  }


  .xp-events-filter-v2 {
    grid-template-columns:
      repeat(4,minmax(0,1fr));
  }


  .xp-events-filter-intro {
    grid-column:
      1 / -1;
  }


  .xp-events-filter-actions {
    grid-column:
      4;
  }


  .xp-events-list-page
  .xp-event-grid-v2 {
    grid-template-columns:
      repeat(2,minmax(0,1fr)) !important;
  }


  .xp-events-trust-inner-v2 {
    grid-template-columns:
      1fr;
  }

}


/* --------------------------------------------------------------------------
   MOBILE
   -------------------------------------------------------------------------- */

@media (max-width: 700px) {

  .xp-events-list-page
  .xp-events-shell {
    width:
      min(calc(100% - 28px),1240px);
  }


  .xp-events-list-page
  .xp-events-hero-v2 {
    padding:
      34px 0 32px;
  }


  .xp-events-list-page
  .xp-events-hero-grid-v2 {
    grid-template-columns:
      1fr;

    gap:
      22px;
  }


  .xp-events-list-page
  .xp-events-hero-copy h1 {
    font-size:
      clamp(39px,10vw,47px);

    line-height:
      1;

    letter-spacing:
      -1.75px;
  }


  .xp-events-promise {
    grid-template-columns:
      1fr;
  }


  .xp-events-filter-section {
    padding-top:
      14px;
  }


  .xp-events-filter-v2 {
    grid-template-columns:
      1fr;

    padding:
      11px;
  }


  .xp-events-filter-intro,
  .xp-events-filter-actions {
    grid-column:
      auto;
  }


  .xp-events-filter-actions button {
    width:
      100%;
  }


  .xp-events-results-head {
    padding-top:
      28px;
  }


  .xp-events-results-head-inner {
    align-items:
      flex-start;

    flex-direction:
      column;

    gap:
      10px;
  }


  .xp-events-results-head h2 {
    font-size:
      34px;
  }


  .xp-events-list-page
  .xp-event-grid-v2 {
    grid-template-columns:
      1fr !important;
  }


  .xp-event-visual-v2 {
    min-height:
      142px;
  }


  .xp-events-trust-points {
    grid-template-columns:
      1fr;
  }


  .xp-events-trust-v2 {
    padding:
      36px 0;
  }

}










/* ==========================================================================
   XTRIBE V60.8.5.39 — EVENTS PAGINATION + CSS HARDENING

   Append this at the VERY END of:
   assets/css/xtribe-public.css

   This patch assumes V60.8.5.38 is already present in that stylesheet.
   ========================================================================== */


/* --------------------------------------------------------------------------
   1. HARDEN V38 EVENT-CARD PARAGRAPHS

   The original public stylesheet has:
     .xp-event-card p { flex: 1; }

   V38 introduced several different paragraph roles inside the same card.
   Cancel the legacy flex growth so copy does not create artificial blank space.
   -------------------------------------------------------------------------- */

.xp-events-list-page
.xp-event-card-v2 p {
  flex:
    0 0 auto !important;
}


.xp-events-list-page
.xp-event-card-v2
.xp-event-description {
  flex:
    0 0 auto !important;
}


/* --------------------------------------------------------------------------
   2. RESULT COUNT
   -------------------------------------------------------------------------- */

.xp-events-result-count {
  flex-wrap:
    wrap;

  justify-content:
    flex-end;
}


.xp-events-result-count small {
  flex:
    0 0 100%;

  margin-top:
    1px;

  color:
    #747068;

  font-size:
    8px;

  text-align:
    right;
}


/* --------------------------------------------------------------------------
   3. PAGINATION
   -------------------------------------------------------------------------- */

.xp-events-pagination {
  display:
    grid;

  grid-template-columns:
    auto minmax(0,1fr) auto;

  gap:
    14px;

  align-items:
    center;

  margin-top:
    27px;

  padding-top:
    20px;

  border-top:
    1px solid #E6DFD3;
}


.xp-events-pagination-nav {
  display:
    inline-flex;

  min-height:
    38px;

  align-items:
    center;

  justify-content:
    center;

  padding:
    0 13px;

  border:
    1px solid #E6DFD3;

  border-radius:
    999px;

  background:
    #FFFFFF;

  color:
    #214E4B;

  font-size:
    9px;

  font-weight:
    850;

  text-decoration:
    none;
}


.xp-events-pagination-nav:hover,
.xp-events-pagination-nav:focus-visible {
  border-color:
    rgba(33,78,75,.32);

  background:
    #FAF7F1;
}


.xp-events-pagination-nav.is-disabled {
  opacity:
    .34;

  pointer-events:
    none;
}


.xp-events-pagination-numbers {
  display:
    flex;

  flex-wrap:
    wrap;

  justify-content:
    center;

  gap:
    5px;
}


.xp-events-page {
  display:
    grid;

  width:
    34px;

  height:
    34px;

  place-items:
    center;

  border:
    1px solid #E6DFD3;

  border-radius:
    50%;

  background:
    #FFFFFF;

  color:
    #214E4B;

  font-size:
    9px;

  font-weight:
    850;

  text-decoration:
    none;
}


.xp-events-page:hover,
.xp-events-page:focus-visible {
  border-color:
    #E47D6B;

  color:
    #E47D6B;
}


.xp-events-page.is-active {
  border-color:
    #214E4B;

  background:
    #214E4B;

  color:
    #FFFFFF;
}


.xp-events-pagination-ellipsis {
  display:
    grid;

  min-width:
    20px;

  height:
    34px;

  place-items:
    center;

  color:
    #747068;
}


.xp-events-pagination-summary {
  grid-column:
    1 / -1;

  justify-self:
    center;

  color:
    #747068;

  font-size:
    8px;
}


/* --------------------------------------------------------------------------
   4. TABLET FILTER HARDENING

   V38 tried to place five filter/action blocks into four post-intro columns.
   A two-column tablet composition is more predictable and easier to scan.
   -------------------------------------------------------------------------- */

@media (max-width: 1050px) {

  .xp-events-list-page
  .xp-events-filter-v2 {
    grid-template-columns:
      repeat(2,minmax(0,1fr)) !important;
  }


  .xp-events-list-page
  .xp-events-filter-intro {
    grid-column:
      1 / -1 !important;
  }


  .xp-events-list-page
  .xp-events-search-field {
    grid-column:
      1 / -1 !important;
  }


  .xp-events-list-page
  .xp-events-filter-actions {
    grid-column:
      auto !important;
  }

}


/* --------------------------------------------------------------------------
   5. MOBILE PAGINATION
   -------------------------------------------------------------------------- */

@media (max-width: 700px) {

  .xp-events-result-count {
    justify-content:
      flex-start;
  }


  .xp-events-result-count small {
    text-align:
      left;
  }


  .xp-events-pagination {
    grid-template-columns:
      1fr 1fr;

    gap:
      9px;
  }


  .xp-events-pagination-numbers {
    display:
      none;
  }


  .xp-events-pagination-nav {
    width:
      100%;
  }


  .xp-events-pagination-summary {
    grid-row:
      1;

    grid-column:
      1 / -1;
  }

}










/* ==========================================================================
   XTRIBE V60.8.5.40 — HOW IT WORKS + NAVIGATION SUPPORT

   Append this file to the VERY END of:
   assets/css/xtribe-public.css
   ========================================================================== */

/* Homepage full-page CTA inside the existing How XTribe Works preview. */
.xh-home-page .xh-how-footer-actions {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: flex-end;
  gap: 14px;
}

.xh-home-page .xh-how-footer-actions .xh-how-equation {
  flex: 0 1 auto;
}

.xh-home-page .xh-how-footer-actions .xh-button {
  white-space: nowrap;
}


/* --------------------------------------------------------------------------
   HOW IT WORKS PAGE
   -------------------------------------------------------------------------- */

.xh-how-page .xh-eyebrow {
  display: inline-block;
  color: #E47D6B;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .12em;
}

.xh-how-page .xh-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 46px;
  padding: 0 18px;
  border-radius: 999px;
  background: #0A3434;
  color: #FAF7F1;
  font-size: 11px;
  font-weight: 850;
  text-decoration: none;
}

.xh-how-page .xh-button-light {
  background: #FAF7F1;
  color: #0A3434;
}

.xhw-hero {
  padding: 70px 0 66px;
  background: linear-gradient(135deg,#E3ECE5 0%,#FAF7F1 72%);
}

.xhw-hero-grid {
  display: grid;
  grid-template-columns: minmax(0,1.2fr) minmax(320px,.8fr);
  gap: 58px;
  align-items: center;
}

.xhw-hero h1 {
  max-width: 820px;
  margin: 12px 0 16px;
  color: #0A3434;
  font-family: var(--xh-serif,Georgia,"Times New Roman",serif);
  font-size: clamp(50px,5vw,68px);
  font-weight: 500;
  line-height: .98;
  letter-spacing: -2.7px;
}

.xhw-hero h1 span {
  display: block;
  color: #E47D6B;
  font-style: italic;
}

.xhw-hero-lead {
  max-width: 720px;
  margin: 0;
  color: #6F7470;
  font-size: 15px;
  line-height: 1.7;
}

.xhw-hero-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
  margin-top: 24px;
}

.xhw-text-link {
  color: #0A3434;
  font-size: 11px;
  font-weight: 850;
  text-decoration: none;
}

.xhw-principle-card {
  padding: 28px;
  border-radius: 22px;
  background: #0A3434;
  color: #FAF7F1;
  box-shadow: 0 18px 42px rgba(10,52,52,.10);
}

.xhw-principle-card h2 {
  margin: 8px 0 10px;
  color: #FAF7F1;
  font-family: var(--xh-serif,Georgia,"Times New Roman",serif);
  font-size: 34px;
  font-weight: 500;
  line-height: 1.02;
  letter-spacing: -1.2px;
}

.xhw-principle-card > p {
  margin: 0;
  color: rgba(250,247,241,.72);
  font-size: 11px;
  line-height: 1.6;
}

.xhw-principle-flow {
  display: grid;
  gap: 7px;
  margin-top: 20px;
}

.xhw-principle-flow span {
  padding: 9px 11px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 10px;
  background: rgba(255,255,255,.055);
  font-size: 10px;
  font-weight: 750;
}

.xhw-principle-flow b {
  padding-left: 12px;
  color: #E47D6B;
  font-size: 10px;
}

.xhw-belief {
  padding: 52px 0;
  border-block: 1px solid rgba(10,52,52,.08);
  background: #FAF7F1;
}

.xhw-belief-grid {
  display: grid;
  grid-template-columns: minmax(0,1.2fr) minmax(280px,.8fr);
  gap: 48px;
  align-items: center;
}

.xhw-belief h2 {
  max-width: 780px;
  margin: 8px 0 0;
  color: #0A3434;
  font-family: var(--xh-serif,Georgia,"Times New Roman",serif);
  font-size: clamp(34px,3.5vw,46px);
  font-weight: 500;
  line-height: 1.04;
  letter-spacing: -1.5px;
}

.xhw-belief h2 span {
  display: block;
  color: #E47D6B;
  font-style: italic;
}

.xhw-belief-grid > p {
  margin: 0;
  color: #6F7470;
  font-size: 12px;
  line-height: 1.7;
}

.xhw-flow {
  padding: 72px 0 78px;
  background: #FFFFFF;
}

.xhw-section-heading {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(280px,.55fr);
  gap: 42px;
  align-items: end;
  margin-bottom: 28px;
}

.xhw-section-heading h2 {
  max-width: 760px;
  margin: 7px 0 0;
  color: #0A3434;
  font-family: var(--xh-serif,Georgia,"Times New Roman",serif);
  font-size: clamp(36px,3.8vw,50px);
  font-weight: 500;
  line-height: 1.02;
  letter-spacing: -1.7px;
}

.xhw-section-heading > p {
  margin: 0;
  color: #6F7470;
  font-size: 11px;
  line-height: 1.6;
}

.xhw-step-list {
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 10px;
}

.xhw-step {
  display: flex;
  min-height: 300px;
  flex-direction: column;
  padding: 20px;
  border: 1px solid rgba(10,52,52,.09);
  border-radius: 17px;
  background: #FAF7F1;
}

.xhw-step-number {
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  border-radius: 50%;
  background: #0A3434;
  color: #FAF7F1;
  font-size: 8px;
  font-weight: 900;
}

.xhw-step-stage {
  margin-top: 18px;
  color: #E47D6B;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .1em;
}

.xhw-step h3 {
  margin: 8px 0 8px;
  color: #0A3434;
  font-family: var(--xh-serif,Georgia,"Times New Roman",serif);
  font-size: 21px;
  font-weight: 500;
  line-height: 1.06;
}

.xhw-step p {
  margin: 0;
  color: #6F7470;
  font-size: 10px;
  line-height: 1.6;
}

.xhw-step small {
  margin-top: auto;
  padding-top: 18px;
  color: #E47D6B;
  font-size: 8px;
  font-weight: 800;
  line-height: 1.4;
}

.xhw-before-during-after {
  padding: 68px 0;
  background: #0A3434;
}

.xhw-section-heading-light h2 {
  color: #FAF7F1;
}

.xhw-section-heading-light > p {
  color: rgba(250,247,241,.68);
}

.xhw-three-stage {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 12px;
}

.xhw-three-stage article {
  padding: 23px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 16px;
  background: rgba(255,255,255,.045);
}

.xhw-three-stage article > span {
  color: #E47D6B;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .12em;
}

.xhw-three-stage h3 {
  margin: 9px 0 8px;
  color: #FAF7F1;
  font-family: var(--xh-serif,Georgia,"Times New Roman",serif);
  font-size: 25px;
  font-weight: 500;
}

.xhw-three-stage p {
  margin: 0;
  color: rgba(250,247,241,.65);
  font-size: 10px;
  line-height: 1.6;
}

.xhw-not {
  padding: 72px 0;
  background: #F5F0E7;
}

.xhw-not-grid {
  display: grid;
  grid-template-columns: minmax(280px,.72fr) minmax(0,1.28fr);
  gap: 48px;
  align-items: start;
}

.xhw-not-copy h2 {
  margin: 8px 0 10px;
  color: #0A3434;
  font-family: var(--xh-serif,Georgia,"Times New Roman",serif);
  font-size: clamp(35px,3.6vw,47px);
  font-weight: 500;
  line-height: 1.02;
  letter-spacing: -1.5px;
}

.xhw-not-copy p {
  margin: 0;
  color: #6F7470;
  font-size: 11px;
  line-height: 1.7;
}

.xhw-comparison {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 12px;
}

.xhw-comparison > div {
  padding: 22px;
  border-radius: 16px;
  background: #FFFFFF;
}

.xhw-comparison > div > span {
  color: #E47D6B;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .1em;
}

.xhw-comparison ul {
  display: grid;
  gap: 9px;
  margin: 15px 0 0;
  padding: 0;
  list-style: none;
}

.xhw-comparison li {
  position: relative;
  padding-left: 20px;
  color: #44504C;
  font-size: 10px;
  line-height: 1.45;
}

.xhw-do li::before,
.xhw-dont li::before {
  position: absolute;
  left: 0;
  top: 0;
  color: #E47D6B;
  font-weight: 900;
}

.xhw-do li::before { content: "✓"; }
.xhw-dont li::before { content: "×"; }

.xhw-community {
  padding: 55px 0;
  background: #E3ECE5;
}

.xhw-community-card,
.xhw-final-card {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 40px;
  align-items: center;
}

.xhw-community-card h2,
.xhw-final-card h2 {
  max-width: 760px;
  margin: 7px 0 8px;
  color: #0A3434;
  font-family: var(--xh-serif,Georgia,"Times New Roman",serif);
  font-size: clamp(34px,3.5vw,46px);
  font-weight: 500;
  line-height: 1.02;
  letter-spacing: -1.4px;
}

.xhw-community-card p,
.xhw-final-card p {
  max-width: 750px;
  margin: 0;
  color: #6F7470;
  font-size: 11px;
  line-height: 1.65;
}

.xhw-community .xh-button-light {
  background: #0A3434;
  color: #FAF7F1;
}

.xhw-final {
  padding: 58px 0;
  background: #FAF7F1;
}

@media (max-width: 1050px) {
  .xhw-step-list {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .xhw-hero-grid {
    grid-template-columns: minmax(0,1fr) 310px;
    gap: 34px;
  }

  .xh-home-page .xh-how-footer-actions {
    align-items: flex-end;
    flex-direction: column;
  }
}

@media (max-width: 800px) {
  .xhw-hero-grid,
  .xhw-belief-grid,
  .xhw-section-heading,
  .xhw-not-grid,
  .xhw-community-card,
  .xhw-final-card {
    grid-template-columns: 1fr;
  }

  .xhw-step-list,
  .xhw-three-stage,
  .xhw-comparison {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .xh-home-page .xh-how-footer {
    align-items: flex-start;
    flex-direction: column;
  }

  .xh-home-page .xh-how-footer-actions {
    width: 100%;
    align-items: flex-start;
  }
}

@media (max-width: 600px) {
  .xhw-hero {
    padding: 42px 0 38px;
  }

  .xhw-hero h1 {
    font-size: clamp(40px,10vw,48px);
    letter-spacing: -1.8px;
  }

  .xhw-flow,
  .xhw-not {
    padding: 52px 0;
  }

  .xhw-step-list,
  .xhw-three-stage,
  .xhw-comparison {
    grid-template-columns: 1fr;
  }

  .xhw-step {
    min-height: 0;
  }

  .xhw-community-card,
  .xhw-final-card {
    gap: 20px;
  }
}










/* ==========================================================================
   XTRIBE V60.8.5.41 — ATTENDEE STORIES

   Append to the VERY END of:
   assets/css/xtribe-public.css
   ========================================================================== */


/* --------------------------------------------------------------------------
   HERO
   -------------------------------------------------------------------------- */

.xh-attendee-stories-page
.xts-hero {
  padding:
    52px 0 48px;

  background:
    linear-gradient(
      135deg,
      #E3ECE5 0%,
      #FAF7F1 70%
    );
}


.xh-attendee-stories-page
.xts-hero-grid {
  display:
    grid;

  grid-template-columns:
    minmax(0,1.25fr)
    minmax(300px,.75fr);

  gap:
    56px;

  align-items:
    center;
}


.xh-attendee-stories-page
.xts-hero h1 {
  max-width:
    760px;

  margin:
    10px 0 15px;

  color:
    #0A3434;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    clamp(48px,4.8vw,64px);

  font-weight:
    500;

  line-height:
    .98;

  letter-spacing:
    -2.45px;
}


.xh-attendee-stories-page
.xts-hero h1 em {
  display:
    block;

  color:
    #E47D6B;

  font-style:
    italic;

  font-weight:
    500;
}


.xh-attendee-stories-page
.xts-hero-lead {
  max-width:
    720px;

  margin:
    0;

  color:
    #6D7671;

  font-size:
    14px;

  line-height:
    1.68;
}


.xh-attendee-stories-page
.xts-hero-assurances {
  display:
    grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:
    8px;

  max-width:
    790px;

  margin-top:
    23px;
}


.xh-attendee-stories-page
.xts-hero-assurances > span {
  display:
    grid;

  gap:
    3px;

  padding:
    11px 12px;

  border:
    1px solid rgba(10,52,52,.08);

  border-radius:
    11px;

  background:
    rgba(255,255,255,.50);

  color:
    #747770;

  font-size:
    8.7px;

  line-height:
    1.45;
}


.xh-attendee-stories-page
.xts-hero-assurances b {
  color:
    #0A3434;

  font-size:
    9.5px;
}


/* --------------------------------------------------------------------------
   VERIFICATION CARD
   -------------------------------------------------------------------------- */

.xh-attendee-stories-page
.xts-verification-card {
  padding:
    24px;

  border-radius:
    20px;

  background:
    #0A3434;

  color:
    #FAF7F1;

  box-shadow:
    0 18px 42px rgba(10,52,52,.10);
}


.xh-attendee-stories-page
.xts-verification-card h2 {
  margin:
    8px 0 16px;

  color:
    #FAF7F1;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    28px;

  font-weight:
    500;

  line-height:
    1.06;

  letter-spacing:
    -.8px;
}


.xh-attendee-stories-page
.xts-verification-card h2 em {
  display:
    block;

  color:
    #E47D6B;

  font-style:
    italic;

  font-weight:
    500;
}


.xh-attendee-stories-page
.xts-verification-card ol {
  display:
    grid;

  margin:
    0;

  padding:
    0;

  list-style:
    none;
}


.xh-attendee-stories-page
.xts-verification-card li {
  display:
    grid;

  grid-template-columns:
    29px minmax(0,1fr);

  gap:
    9px;

  align-items:
    center;

  padding:
    9px 0;

  border-top:
    1px solid rgba(255,255,255,.11);
}


.xh-attendee-stories-page
.xts-verification-card li b {
  display:
    grid;

  width:
    26px;

  height:
    26px;

  place-items:
    center;

  border-radius:
    50%;

  background:
    rgba(255,255,255,.08);

  color:
    #E47D6B;

  font-size:
    8px;
}


.xh-attendee-stories-page
.xts-verification-card li span {
  color:
    rgba(250,247,241,.74);

  font-size:
    9.5px;

  line-height:
    1.46;
}


/* --------------------------------------------------------------------------
   METRICS
   -------------------------------------------------------------------------- */

.xh-attendee-stories-page
.xts-metrics {
  border-top:
    1px solid #E6DFD3;

  border-bottom:
    1px solid #E6DFD3;

  background:
    #FFFFFF;
}


.xh-attendee-stories-page
.xts-metric-grid {
  display:
    grid;

  grid-template-columns:
    repeat(4,minmax(0,1fr));
}


.xh-attendee-stories-page
.xts-metric-grid article {
  display:
    grid;

  gap:
    2px;

  min-height:
    82px;

  align-content:
    center;

  padding:
    14px 22px;

  border-right:
    1px solid #E6DFD3;
}


.xh-attendee-stories-page
.xts-metric-grid article:last-child {
  border-right:
    0;
}


.xh-attendee-stories-page
.xts-metric-grid strong {
  color:
    #0A3434;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    27px;

  font-weight:
    500;

  line-height:
    1;
}


.xh-attendee-stories-page
.xts-metric-grid span {
  color:
    #747770;

  font-size:
    8.5px;

  font-weight:
    750;
}


/* --------------------------------------------------------------------------
   SHARED SECTION HEAD
   -------------------------------------------------------------------------- */

.xh-attendee-stories-page
.xts-section-head {
  display:
    flex;

  align-items:
    end;

  justify-content:
    space-between;

  gap:
    28px;
}


.xh-attendee-stories-page
.xts-section-head h2 {
  max-width:
    700px;

  margin:
    6px 0 0;

  color:
    #0A3434;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    clamp(34px,3.7vw,48px);

  font-weight:
    500;

  line-height:
    1.02;

  letter-spacing:
    -1.55px;
}


.xh-attendee-stories-page
.xts-section-head h2 em {
  color:
    #E47D6B;

  font-style:
    italic;

  font-weight:
    500;
}


.xh-attendee-stories-page
.xts-section-head p {
  max-width:
    650px;

  margin:
    7px 0 0;

  color:
    #747770;

  font-size:
    10.5px;

  line-height:
    1.52;
}


/* --------------------------------------------------------------------------
   EVENT FILTER
   -------------------------------------------------------------------------- */

.xh-attendee-stories-page
.xts-event-filter {
  padding:
    38px 0 20px;
}


.xh-attendee-stories-page
.xts-event-chips {
  display:
    flex;

  gap:
    7px;

  overflow-x:
    auto;

  margin-top:
    16px;

  padding-bottom:
    4px;

  scrollbar-width:
    thin;
}


.xh-attendee-stories-page
.xts-event-chips a {
  display:
    flex;

  flex:
    0 0 auto;

  align-items:
    center;

  gap:
    9px;

  max-width:
    310px;

  min-height:
    38px;

  padding:
    8px 10px 8px 12px;

  border:
    1px solid #E6DFD3;

  border-radius:
    999px;

  background:
    #FFFFFF;

  color:
    #0A3434;

  text-decoration:
    none;

  transition:
    border-color .15s ease,
    background .15s ease,
    color .15s ease;
}


.xh-attendee-stories-page
.xts-event-chips a > span {
  overflow:
    hidden;

  font-size:
    8.5px;

  font-weight:
    800;

  text-overflow:
    ellipsis;

  white-space:
    nowrap;
}


.xh-attendee-stories-page
.xts-event-chips a > small {
  display:
    grid;

  min-width:
    22px;

  height:
    22px;

  place-items:
    center;

  border-radius:
    50%;

  background:
    #F2EEE6;

  color:
    #6F7470;

  font-size:
    7.5px;

  font-weight:
    900;
}


.xh-attendee-stories-page
.xts-event-chips a:hover,
.xh-attendee-stories-page
.xts-event-chips a:focus-visible {
  border-color:
    #E47D6B;
}


.xh-attendee-stories-page
.xts-event-chips a.is-active {
  border-color:
    #0A3434;

  background:
    #0A3434;

  color:
    #FAF7F1;
}


.xh-attendee-stories-page
.xts-event-chips a.is-active > small {
  background:
    rgba(255,255,255,.12);

  color:
    #FAF7F1;
}


/* --------------------------------------------------------------------------
   STORY RESULTS
   -------------------------------------------------------------------------- */

.xh-attendee-stories-page
.xts-stories {
  padding:
    24px 0 66px;
}


.xh-attendee-stories-page
.xts-stories-head {
  margin-bottom:
    20px;
}


.xh-attendee-stories-page
.xts-result-summary {
  display:
    grid;

  justify-items:
    end;
}


.xh-attendee-stories-page
.xts-result-summary strong {
  color:
    #0A3434;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    30px;

  font-weight:
    500;

  line-height:
    1;
}


.xh-attendee-stories-page
.xts-result-summary span,
.xh-attendee-stories-page
.xts-result-summary small {
  color:
    #747770;

  font-size:
    8px;
}


.xh-attendee-stories-page
.xts-story-grid {
  display:
    grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:
    14px;
}


.xh-attendee-stories-page
.xts-story-card {
  overflow:
    hidden;

  border:
    1px solid #E6DFD3;

  border-radius:
    18px;

  background:
    #FFFFFF;

  box-shadow:
    0 9px 30px rgba(24,57,52,.045);

  transition:
    transform .16s ease,
    box-shadow .16s ease;
}


.xh-attendee-stories-page
.xts-story-card:hover {
  transform:
    translateY(-2px);

  box-shadow:
    0 14px 36px rgba(24,57,52,.08);
}


.xh-attendee-stories-page
.xts-story-media {
  aspect-ratio:
    16 / 9;

  overflow:
    hidden;

  background:
    #0A3434;
}


.xh-attendee-stories-page
.xts-story-media iframe,
.xh-attendee-stories-page
.xts-story-media video {
  display:
    block;

  width:
    100%;

  height:
    100%;

  border:
    0;

  object-fit:
    cover;
}


.xh-attendee-stories-page
.xts-story-body {
  display:
    flex;

  min-height:
    100%;

  flex-direction:
    column;

  padding:
    18px;
}


.xh-attendee-stories-page
.xts-story-card.has-video
.xts-story-body {
  min-height:
    auto;
}


.xh-attendee-stories-page
.xts-story-rating {
  display:
    flex;

  align-items:
    center;

  justify-content:
    space-between;

  gap:
    10px;
}


.xh-attendee-stories-page
.xts-story-rating > span {
  display:
    grid;

  gap:
    2px;
}


.xh-attendee-stories-page
.xts-story-rating i {
  color:
    #B97846;

  font-size:
    12px;

  font-style:
    normal;

  letter-spacing:
    1px;
}


.xh-attendee-stories-page
.xts-story-rating small {
  color:
    #747770;

  font-size:
    7.5px;
}


.xh-attendee-stories-page
.xts-story-rating em {
  padding:
    4px 7px;

  border-radius:
    999px;

  background:
    #E3ECE5;

  color:
    #2D655B;

  font-size:
    7px;

  font-style:
    normal;

  font-weight:
    900;

  white-space:
    nowrap;
}


.xh-attendee-stories-page
.xts-quote-mark {
  height:
    27px;

  margin-top:
    13px;

  color:
    #E47D6B;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    46px;

  line-height:
    .8;
}


.xh-attendee-stories-page
.xts-story-card blockquote {
  margin:
    2px 0 17px;

  color:
    #354943;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    17px;

  font-weight:
    500;

  line-height:
    1.48;
}


.xh-attendee-stories-page
.xts-video-caption {
  margin:
    -7px 0 15px;

  color:
    #747770;

  font-size:
    8.5px;

  line-height:
    1.45;
}


.xh-attendee-stories-page
.xts-story-footer {
  display:
    grid;

  grid-template-columns:
    minmax(0,.8fr)
    minmax(0,1.2fr);

  gap:
    12px;

  align-items:
    end;

  margin-top:
    auto;

  padding-top:
    14px;

  border-top:
    1px solid #E6DFD3;
}


.xh-attendee-stories-page
.xts-story-person {
  display:
    grid;

  grid-template-columns:
    31px minmax(0,1fr);

  gap:
    8px;

  align-items:
    center;
}


.xh-attendee-stories-page
.xts-story-initial {
  display:
    grid;

  width:
    31px;

  height:
    31px;

  place-items:
    center;

  border-radius:
    50%;

  background:
    #0A3434;

  color:
    #FAF7F1;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    13px;
}


.xh-attendee-stories-page
.xts-story-person strong {
  display:
    block;

  overflow:
    hidden;

  color:
    #0A3434;

  font-size:
    8.5px;

  font-weight:
    850;

  line-height:
    1.25;

  text-overflow:
    ellipsis;
}


.xh-attendee-stories-page
.xts-story-person small {
  display:
    block;

  margin-top:
    2px;

  color:
    #8A8B84;

  font-size:
    7px;
}


.xh-attendee-stories-page
.xts-story-event {
  min-width:
    0;

  text-align:
    right;
}


.xh-attendee-stories-page
.xts-story-event > span {
  display:
    block;

  color:
    #E47D6B;

  font-size:
    6.5px;

  font-weight:
    900;

  letter-spacing:
    .08em;
}


.xh-attendee-stories-page
.xts-story-event a,
.xh-attendee-stories-page
.xts-story-event strong {
  display:
    block;

  overflow:
    hidden;

  margin-top:
    2px;

  color:
    #0A3434;

  font-size:
    8px;

  font-weight:
    800;

  line-height:
    1.3;

  text-decoration:
    none;

  text-overflow:
    ellipsis;

  white-space:
    nowrap;
}


.xh-attendee-stories-page
.xts-story-event a:hover {
  color:
    #E47D6B;
}


.xh-attendee-stories-page
.xts-story-event a i {
  font-style:
    normal;
}


.xh-attendee-stories-page
.xts-story-event small {
  display:
    block;

  margin-top:
    2px;

  color:
    #8A8B84;

  font-size:
    7px;
}


/* --------------------------------------------------------------------------
   PAGINATION
   -------------------------------------------------------------------------- */

.xh-attendee-stories-page
.xts-pagination {
  display:
    grid;

  grid-template-columns:
    auto 1fr auto;

  gap:
    14px;

  align-items:
    center;

  margin-top:
    27px;

  padding:
    14px 0 0;

  border-top:
    1px solid #E6DFD3;
}


.xh-attendee-stories-page
.xts-pagination-pages {
  display:
    flex;

  justify-content:
    center;

  gap:
    5px;
}


.xh-attendee-stories-page
.xts-pagination-nav,
.xh-attendee-stories-page
.xts-pagination-page {
  display:
    inline-grid;

  min-height:
    32px;

  place-items:
    center;

  border:
    1px solid #E6DFD3;

  border-radius:
    9px;

  background:
    #FFFFFF;

  color:
    #0A3434;

  font-size:
    8.5px;

  font-weight:
    850;

  text-decoration:
    none;
}


.xh-attendee-stories-page
.xts-pagination-nav {
  padding:
    0 11px;
}


.xh-attendee-stories-page
.xts-pagination-page {
  width:
    32px;
}


.xh-attendee-stories-page
.xts-pagination-page.is-active {
  border-color:
    #0A3434;

  background:
    #0A3434;

  color:
    #FAF7F1;
}


.xh-attendee-stories-page
.xts-pagination-nav.is-disabled {
  opacity:
    .35;
}


.xh-attendee-stories-page
.xts-pagination-ellipsis {
  display:
    grid;

  width:
    24px;

  place-items:
    center;

  color:
    #8A8B84;
}


.xh-attendee-stories-page
.xts-pagination-summary {
  grid-column:
    1 / -1;

  justify-self:
    center;

  color:
    #8A8B84;

  font-size:
    7.5px;
}


/* --------------------------------------------------------------------------
   EMPTY
   -------------------------------------------------------------------------- */

.xh-attendee-stories-page
.xts-empty {
  padding:
    44px;

  border:
    1px solid #E6DFD3;

  border-radius:
    18px;

  background:
    #FFFFFF;

  text-align:
    center;
}


.xh-attendee-stories-page
.xts-empty h3 {
  max-width:
    720px;

  margin:
    8px auto 10px;

  color:
    #0A3434;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    32px;

  font-weight:
    500;

  line-height:
    1.05;
}


.xh-attendee-stories-page
.xts-empty p {
  max-width:
    640px;

  margin:
    0 auto 18px;

  color:
    #747770;

  font-size:
    10.5px;

  line-height:
    1.55;
}


/* --------------------------------------------------------------------------
   GOVERNANCE
   -------------------------------------------------------------------------- */

.xh-attendee-stories-page
.xts-governance {
  padding:
    54px 0;

  background:
    #E3ECE5;
}


.xh-attendee-stories-page
.xts-governance-grid {
  display:
    grid;

  grid-template-columns:
    minmax(280px,.72fr)
    minmax(0,1.28fr);

  gap:
    52px;

  align-items:
    center;
}


.xh-attendee-stories-page
.xts-governance h2 {
  max-width:
    540px;

  margin:
    7px 0 10px;

  color:
    #0A3434;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    39px;

  font-weight:
    500;

  line-height:
    1.01;

  letter-spacing:
    -1.3px;
}


.xh-attendee-stories-page
.xts-governance h2 em {
  color:
    #E47D6B;

  font-style:
    italic;

  font-weight:
    500;
}


.xh-attendee-stories-page
.xts-governance > .xh-container > div:first-child > p {
  max-width:
    520px;

  margin:
    0;

  color:
    #65716C;

  font-size:
    10.5px;

  line-height:
    1.6;
}


.xh-attendee-stories-page
.xts-governance-flow {
  display:
    grid;

  grid-template-columns:
    repeat(4,minmax(0,1fr));

  gap:
    8px;
}


.xh-attendee-stories-page
.xts-governance-flow article {
  min-height:
    150px;

  padding:
    13px;

  border:
    1px solid rgba(10,52,52,.08);

  border-radius:
    13px;

  background:
    rgba(255,255,255,.58);
}


.xh-attendee-stories-page
.xts-governance-flow b {
  display:
    grid;

  width:
    26px;

  height:
    26px;

  place-items:
    center;

  margin-bottom:
    19px;

  border-radius:
    50%;

  background:
    #0A3434;

  color:
    #FAF7F1;

  font-size:
    7.5px;
}


.xh-attendee-stories-page
.xts-governance-flow span {
  color:
    #0A3434;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    16px;
}


.xh-attendee-stories-page
.xts-governance-flow p {
  margin:
    6px 0 0;

  color:
    #65716C;

  font-size:
    8px;

  line-height:
    1.48;
}


/* --------------------------------------------------------------------------
   FINAL CTA
   -------------------------------------------------------------------------- */

.xh-attendee-stories-page
.xts-final-cta {
  padding:
    48px 0;

  background:
    #0A3434;

  color:
    #FAF7F1;
}


.xh-attendee-stories-page
.xts-final-cta-inner {
  display:
    grid;

  grid-template-columns:
    minmax(0,1.15fr)
    minmax(280px,.85fr);

  gap:
    58px;

  align-items:
    end;
}


.xh-attendee-stories-page
.xts-final-cta h2 {
  max-width:
    650px;

  margin:
    7px 0 0;

  color:
    #FAF7F1;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    43px;

  font-weight:
    500;

  line-height:
    1;

  letter-spacing:
    -1.5px;
}


.xh-attendee-stories-page
.xts-final-cta h2 em {
  display:
    block;

  color:
    #E47D6B;

  font-style:
    italic;

  font-weight:
    500;
}


.xh-attendee-stories-page
.xts-final-cta p {
  max-width:
    500px;

  margin:
    0 0 16px;

  color:
    rgba(250,247,241,.68);

  font-size:
    10.5px;

  line-height:
    1.58;
}


/* --------------------------------------------------------------------------
   TABLET
   -------------------------------------------------------------------------- */

@media (max-width: 960px) {

  .xh-attendee-stories-page
  .xts-hero-grid {
    grid-template-columns:
      minmax(0,1fr) 300px;

    gap:
      28px;
  }


  .xh-attendee-stories-page
  .xts-hero-assurances {
    grid-template-columns:
      1fr;
  }


  .xh-attendee-stories-page
  .xts-metric-grid {
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }


  .xh-attendee-stories-page
  .xts-metric-grid article:nth-child(2) {
    border-right:
      0;
  }


  .xh-attendee-stories-page
  .xts-metric-grid article:nth-child(-n+2) {
    border-bottom:
      1px solid #E6DFD3;
  }


  .xh-attendee-stories-page
  .xts-story-grid {
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }


  .xh-attendee-stories-page
  .xts-governance-grid {
    grid-template-columns:
      1fr;
  }

}


/* --------------------------------------------------------------------------
   MOBILE
   -------------------------------------------------------------------------- */

@media (max-width: 680px) {

  .xh-attendee-stories-page
  .xts-hero {
    padding:
      34px 0 32px;
  }


  .xh-attendee-stories-page
  .xts-hero-grid {
    grid-template-columns:
      1fr;
  }


  .xh-attendee-stories-page
  .xts-hero h1 {
    font-size:
      clamp(39px,10.5vw,47px);

    line-height:
      1;

    letter-spacing:
      -1.7px;
  }


  .xh-attendee-stories-page
  .xts-verification-card {
    padding:
      20px;
  }


  .xh-attendee-stories-page
  .xts-section-head {
    align-items:
      flex-start;

    flex-direction:
      column;

    gap:
      10px;
  }


  .xh-attendee-stories-page
  .xts-story-grid {
    grid-template-columns:
      1fr;
  }


  .xh-attendee-stories-page
  .xts-result-summary {
    justify-items:
      start;
  }


  .xh-attendee-stories-page
  .xts-story-footer {
    grid-template-columns:
      1fr;
  }


  .xh-attendee-stories-page
  .xts-story-event {
    text-align:
      left;
  }


  .xh-attendee-stories-page
  .xts-pagination {
    grid-template-columns:
      1fr 1fr;
  }


  .xh-attendee-stories-page
  .xts-pagination-pages {
    grid-column:
      1 / -1;

    grid-row:
      1;

    order:
      -1;

    overflow-x:
      auto;
  }


  .xh-attendee-stories-page
  .xts-pagination-nav:last-of-type {
    justify-self:
      end;
  }


  .xh-attendee-stories-page
  .xts-governance {
    padding:
      40px 0;
  }


  .xh-attendee-stories-page
  .xts-governance h2 {
    font-size:
      34px;
  }


  .xh-attendee-stories-page
  .xts-governance-flow {
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }


  .xh-attendee-stories-page
  .xts-final-cta-inner {
    grid-template-columns:
      1fr;

    gap:
      22px;
  }


  .xh-attendee-stories-page
  .xts-final-cta h2 {
    font-size:
      37px;
  }

}


@media (max-width: 440px) {

  .xh-attendee-stories-page
  .xts-metric-grid {
    grid-template-columns:
      1fr 1fr;
  }


  .xh-attendee-stories-page
  .xts-metric-grid article {
    padding:
      12px 14px;
  }


  .xh-attendee-stories-page
  .xts-governance-flow {
    grid-template-columns:
      1fr;
  }

}










/* ==========================================================================
   XTRIBE V60.8.5.41 — ATTENDEE STORIES

   Append to the VERY END of:
   assets/css/xtribe-public.css
   ========================================================================== */


/* --------------------------------------------------------------------------
   HERO
   -------------------------------------------------------------------------- */

.xh-attendee-stories-page
.xts-hero {
  padding:
    52px 0 48px;

  background:
    linear-gradient(
      135deg,
      #E3ECE5 0%,
      #FAF7F1 70%
    );
}


.xh-attendee-stories-page
.xts-hero-grid {
  display:
    grid;

  grid-template-columns:
    minmax(0,1.25fr)
    minmax(300px,.75fr);

  gap:
    56px;

  align-items:
    center;
}


.xh-attendee-stories-page
.xts-hero h1 {
  max-width:
    760px;

  margin:
    10px 0 15px;

  color:
    #0A3434;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    clamp(48px,4.8vw,64px);

  font-weight:
    500;

  line-height:
    .98;

  letter-spacing:
    -2.45px;
}


.xh-attendee-stories-page
.xts-hero h1 em {
  display:
    block;

  color:
    #E47D6B;

  font-style:
    italic;

  font-weight:
    500;
}


.xh-attendee-stories-page
.xts-hero-lead {
  max-width:
    720px;

  margin:
    0;

  color:
    #6D7671;

  font-size:
    14px;

  line-height:
    1.68;
}


.xh-attendee-stories-page
.xts-hero-assurances {
  display:
    grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:
    8px;

  max-width:
    790px;

  margin-top:
    23px;
}


.xh-attendee-stories-page
.xts-hero-assurances > span {
  display:
    grid;

  gap:
    3px;

  padding:
    11px 12px;

  border:
    1px solid rgba(10,52,52,.08);

  border-radius:
    11px;

  background:
    rgba(255,255,255,.50);

  color:
    #747770;

  font-size:
    8.7px;

  line-height:
    1.45;
}


.xh-attendee-stories-page
.xts-hero-assurances b {
  color:
    #0A3434;

  font-size:
    9.5px;
}


/* --------------------------------------------------------------------------
   VERIFICATION CARD
   -------------------------------------------------------------------------- */

.xh-attendee-stories-page
.xts-verification-card {
  padding:
    24px;

  border-radius:
    20px;

  background:
    #0A3434;

  color:
    #FAF7F1;

  box-shadow:
    0 18px 42px rgba(10,52,52,.10);
}


.xh-attendee-stories-page
.xts-verification-card h2 {
  margin:
    8px 0 16px;

  color:
    #FAF7F1;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    28px;

  font-weight:
    500;

  line-height:
    1.06;

  letter-spacing:
    -.8px;
}


.xh-attendee-stories-page
.xts-verification-card h2 em {
  display:
    block;

  color:
    #E47D6B;

  font-style:
    italic;

  font-weight:
    500;
}


.xh-attendee-stories-page
.xts-verification-card ol {
  display:
    grid;

  margin:
    0;

  padding:
    0;

  list-style:
    none;
}


.xh-attendee-stories-page
.xts-verification-card li {
  display:
    grid;

  grid-template-columns:
    29px minmax(0,1fr);

  gap:
    9px;

  align-items:
    center;

  padding:
    9px 0;

  border-top:
    1px solid rgba(255,255,255,.11);
}


.xh-attendee-stories-page
.xts-verification-card li b {
  display:
    grid;

  width:
    26px;

  height:
    26px;

  place-items:
    center;

  border-radius:
    50%;

  background:
    rgba(255,255,255,.08);

  color:
    #E47D6B;

  font-size:
    8px;
}


.xh-attendee-stories-page
.xts-verification-card li span {
  color:
    rgba(250,247,241,.74);

  font-size:
    9.5px;

  line-height:
    1.46;
}


/* --------------------------------------------------------------------------
   METRICS
   -------------------------------------------------------------------------- */

.xh-attendee-stories-page
.xts-metrics {
  border-top:
    1px solid #E6DFD3;

  border-bottom:
    1px solid #E6DFD3;

  background:
    #FFFFFF;
}


.xh-attendee-stories-page
.xts-metric-grid {
  display:
    grid;

  grid-template-columns:
    repeat(4,minmax(0,1fr));
}


.xh-attendee-stories-page
.xts-metric-grid article {
  display:
    grid;

  gap:
    2px;

  min-height:
    82px;

  align-content:
    center;

  padding:
    14px 22px;

  border-right:
    1px solid #E6DFD3;
}


.xh-attendee-stories-page
.xts-metric-grid article:last-child {
  border-right:
    0;
}


.xh-attendee-stories-page
.xts-metric-grid strong {
  color:
    #0A3434;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    27px;

  font-weight:
    500;

  line-height:
    1;
}


.xh-attendee-stories-page
.xts-metric-grid span {
  color:
    #747770;

  font-size:
    8.5px;

  font-weight:
    750;
}


/* --------------------------------------------------------------------------
   SHARED SECTION HEAD
   -------------------------------------------------------------------------- */

.xh-attendee-stories-page
.xts-section-head {
  display:
    flex;

  align-items:
    end;

  justify-content:
    space-between;

  gap:
    28px;
}


.xh-attendee-stories-page
.xts-section-head h2 {
  max-width:
    700px;

  margin:
    6px 0 0;

  color:
    #0A3434;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    clamp(34px,3.7vw,48px);

  font-weight:
    500;

  line-height:
    1.02;

  letter-spacing:
    -1.55px;
}


.xh-attendee-stories-page
.xts-section-head h2 em {
  color:
    #E47D6B;

  font-style:
    italic;

  font-weight:
    500;
}


.xh-attendee-stories-page
.xts-section-head p {
  max-width:
    650px;

  margin:
    7px 0 0;

  color:
    #747770;

  font-size:
    10.5px;

  line-height:
    1.52;
}


/* --------------------------------------------------------------------------
   EVENT FILTER
   -------------------------------------------------------------------------- */

.xh-attendee-stories-page
.xts-event-filter {
  padding:
    38px 0 20px;
}


.xh-attendee-stories-page
.xts-event-chips {
  display:
    flex;

  gap:
    7px;

  overflow-x:
    auto;

  margin-top:
    16px;

  padding-bottom:
    4px;

  scrollbar-width:
    thin;
}


.xh-attendee-stories-page
.xts-event-chips a {
  display:
    flex;

  flex:
    0 0 auto;

  align-items:
    center;

  gap:
    9px;

  max-width:
    310px;

  min-height:
    38px;

  padding:
    8px 10px 8px 12px;

  border:
    1px solid #E6DFD3;

  border-radius:
    999px;

  background:
    #FFFFFF;

  color:
    #0A3434;

  text-decoration:
    none;

  transition:
    border-color .15s ease,
    background .15s ease,
    color .15s ease;
}


.xh-attendee-stories-page
.xts-event-chips a > span {
  overflow:
    hidden;

  font-size:
    8.5px;

  font-weight:
    800;

  text-overflow:
    ellipsis;

  white-space:
    nowrap;
}


.xh-attendee-stories-page
.xts-event-chips a > small {
  display:
    grid;

  min-width:
    22px;

  height:
    22px;

  place-items:
    center;

  border-radius:
    50%;

  background:
    #F2EEE6;

  color:
    #6F7470;

  font-size:
    7.5px;

  font-weight:
    900;
}


.xh-attendee-stories-page
.xts-event-chips a:hover,
.xh-attendee-stories-page
.xts-event-chips a:focus-visible {
  border-color:
    #E47D6B;
}


.xh-attendee-stories-page
.xts-event-chips a.is-active {
  border-color:
    #0A3434;

  background:
    #0A3434;

  color:
    #FAF7F1;
}


.xh-attendee-stories-page
.xts-event-chips a.is-active > small {
  background:
    rgba(255,255,255,.12);

  color:
    #FAF7F1;
}


/* --------------------------------------------------------------------------
   STORY RESULTS
   -------------------------------------------------------------------------- */

.xh-attendee-stories-page
.xts-stories {
  padding:
    24px 0 66px;
}


.xh-attendee-stories-page
.xts-stories-head {
  margin-bottom:
    20px;
}


.xh-attendee-stories-page
.xts-result-summary {
  display:
    grid;

  justify-items:
    end;
}


.xh-attendee-stories-page
.xts-result-summary strong {
  color:
    #0A3434;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    30px;

  font-weight:
    500;

  line-height:
    1;
}


.xh-attendee-stories-page
.xts-result-summary span,
.xh-attendee-stories-page
.xts-result-summary small {
  color:
    #747770;

  font-size:
    8px;
}


.xh-attendee-stories-page
.xts-story-grid {
  display:
    grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:
    14px;
}


.xh-attendee-stories-page
.xts-story-card {
  overflow:
    hidden;

  border:
    1px solid #E6DFD3;

  border-radius:
    18px;

  background:
    #FFFFFF;

  box-shadow:
    0 9px 30px rgba(24,57,52,.045);

  transition:
    transform .16s ease,
    box-shadow .16s ease;
}


.xh-attendee-stories-page
.xts-story-card:hover {
  transform:
    translateY(-2px);

  box-shadow:
    0 14px 36px rgba(24,57,52,.08);
}


.xh-attendee-stories-page
.xts-story-media {
  aspect-ratio:
    16 / 9;

  overflow:
    hidden;

  background:
    #0A3434;
}


.xh-attendee-stories-page
.xts-story-media iframe,
.xh-attendee-stories-page
.xts-story-media video {
  display:
    block;

  width:
    100%;

  height:
    100%;

  border:
    0;

  object-fit:
    cover;
}


.xh-attendee-stories-page
.xts-story-body {
  display:
    flex;

  min-height:
    100%;

  flex-direction:
    column;

  padding:
    18px;
}


.xh-attendee-stories-page
.xts-story-card.has-video
.xts-story-body {
  min-height:
    auto;
}


.xh-attendee-stories-page
.xts-story-rating {
  display:
    flex;

  align-items:
    center;

  justify-content:
    space-between;

  gap:
    10px;
}


.xh-attendee-stories-page
.xts-story-rating > span {
  display:
    grid;

  gap:
    2px;
}


.xh-attendee-stories-page
.xts-story-rating i {
  color:
    #B97846;

  font-size:
    12px;

  font-style:
    normal;

  letter-spacing:
    1px;
}


.xh-attendee-stories-page
.xts-story-rating small {
  color:
    #747770;

  font-size:
    7.5px;
}


.xh-attendee-stories-page
.xts-story-rating em {
  padding:
    4px 7px;

  border-radius:
    999px;

  background:
    #E3ECE5;

  color:
    #2D655B;

  font-size:
    7px;

  font-style:
    normal;

  font-weight:
    900;

  white-space:
    nowrap;
}


.xh-attendee-stories-page
.xts-quote-mark {
  height:
    27px;

  margin-top:
    13px;

  color:
    #E47D6B;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    46px;

  line-height:
    .8;
}


.xh-attendee-stories-page
.xts-story-card blockquote {
  margin:
    2px 0 17px;

  color:
    #354943;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    17px;

  font-weight:
    500;

  line-height:
    1.48;
}


.xh-attendee-stories-page
.xts-video-caption {
  margin:
    -7px 0 15px;

  color:
    #747770;

  font-size:
    8.5px;

  line-height:
    1.45;
}


.xh-attendee-stories-page
.xts-story-footer {
  display:
    grid;

  grid-template-columns:
    minmax(0,.8fr)
    minmax(0,1.2fr);

  gap:
    12px;

  align-items:
    end;

  margin-top:
    auto;

  padding-top:
    14px;

  border-top:
    1px solid #E6DFD3;
}


.xh-attendee-stories-page
.xts-story-person {
  display:
    grid;

  grid-template-columns:
    31px minmax(0,1fr);

  gap:
    8px;

  align-items:
    center;
}


.xh-attendee-stories-page
.xts-story-initial {
  display:
    grid;

  width:
    31px;

  height:
    31px;

  place-items:
    center;

  border-radius:
    50%;

  background:
    #0A3434;

  color:
    #FAF7F1;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    13px;
}


.xh-attendee-stories-page
.xts-story-person strong {
  display:
    block;

  overflow:
    hidden;

  color:
    #0A3434;

  font-size:
    8.5px;

  font-weight:
    850;

  line-height:
    1.25;

  text-overflow:
    ellipsis;
}


.xh-attendee-stories-page
.xts-story-person small {
  display:
    block;

  margin-top:
    2px;

  color:
    #8A8B84;

  font-size:
    7px;
}


.xh-attendee-stories-page
.xts-story-event {
  min-width:
    0;

  text-align:
    right;
}


.xh-attendee-stories-page
.xts-story-event > span {
  display:
    block;

  color:
    #E47D6B;

  font-size:
    6.5px;

  font-weight:
    900;

  letter-spacing:
    .08em;
}


.xh-attendee-stories-page
.xts-story-event a,
.xh-attendee-stories-page
.xts-story-event strong {
  display:
    block;

  overflow:
    hidden;

  margin-top:
    2px;

  color:
    #0A3434;

  font-size:
    8px;

  font-weight:
    800;

  line-height:
    1.3;

  text-decoration:
    none;

  text-overflow:
    ellipsis;

  white-space:
    nowrap;
}


.xh-attendee-stories-page
.xts-story-event a:hover {
  color:
    #E47D6B;
}


.xh-attendee-stories-page
.xts-story-event a i {
  font-style:
    normal;
}


.xh-attendee-stories-page
.xts-story-event small {
  display:
    block;

  margin-top:
    2px;

  color:
    #8A8B84;

  font-size:
    7px;
}


/* --------------------------------------------------------------------------
   PAGINATION
   -------------------------------------------------------------------------- */

.xh-attendee-stories-page
.xts-pagination {
  display:
    grid;

  grid-template-columns:
    auto 1fr auto;

  gap:
    14px;

  align-items:
    center;

  margin-top:
    27px;

  padding:
    14px 0 0;

  border-top:
    1px solid #E6DFD3;
}


.xh-attendee-stories-page
.xts-pagination-pages {
  display:
    flex;

  justify-content:
    center;

  gap:
    5px;
}


.xh-attendee-stories-page
.xts-pagination-nav,
.xh-attendee-stories-page
.xts-pagination-page {
  display:
    inline-grid;

  min-height:
    32px;

  place-items:
    center;

  border:
    1px solid #E6DFD3;

  border-radius:
    9px;

  background:
    #FFFFFF;

  color:
    #0A3434;

  font-size:
    8.5px;

  font-weight:
    850;

  text-decoration:
    none;
}


.xh-attendee-stories-page
.xts-pagination-nav {
  padding:
    0 11px;
}


.xh-attendee-stories-page
.xts-pagination-page {
  width:
    32px;
}


.xh-attendee-stories-page
.xts-pagination-page.is-active {
  border-color:
    #0A3434;

  background:
    #0A3434;

  color:
    #FAF7F1;
}


.xh-attendee-stories-page
.xts-pagination-nav.is-disabled {
  opacity:
    .35;
}


.xh-attendee-stories-page
.xts-pagination-ellipsis {
  display:
    grid;

  width:
    24px;

  place-items:
    center;

  color:
    #8A8B84;
}


.xh-attendee-stories-page
.xts-pagination-summary {
  grid-column:
    1 / -1;

  justify-self:
    center;

  color:
    #8A8B84;

  font-size:
    7.5px;
}


/* --------------------------------------------------------------------------
   EMPTY
   -------------------------------------------------------------------------- */

.xh-attendee-stories-page
.xts-empty {
  padding:
    44px;

  border:
    1px solid #E6DFD3;

  border-radius:
    18px;

  background:
    #FFFFFF;

  text-align:
    center;
}


.xh-attendee-stories-page
.xts-empty h3 {
  max-width:
    720px;

  margin:
    8px auto 10px;

  color:
    #0A3434;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    32px;

  font-weight:
    500;

  line-height:
    1.05;
}


.xh-attendee-stories-page
.xts-empty p {
  max-width:
    640px;

  margin:
    0 auto 18px;

  color:
    #747770;

  font-size:
    10.5px;

  line-height:
    1.55;
}


/* --------------------------------------------------------------------------
   GOVERNANCE
   -------------------------------------------------------------------------- */

.xh-attendee-stories-page
.xts-governance {
  padding:
    54px 0;

  background:
    #E3ECE5;
}


.xh-attendee-stories-page
.xts-governance-grid {
  display:
    grid;

  grid-template-columns:
    minmax(280px,.72fr)
    minmax(0,1.28fr);

  gap:
    52px;

  align-items:
    center;
}


.xh-attendee-stories-page
.xts-governance h2 {
  max-width:
    540px;

  margin:
    7px 0 10px;

  color:
    #0A3434;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    39px;

  font-weight:
    500;

  line-height:
    1.01;

  letter-spacing:
    -1.3px;
}


.xh-attendee-stories-page
.xts-governance h2 em {
  color:
    #E47D6B;

  font-style:
    italic;

  font-weight:
    500;
}


.xh-attendee-stories-page
.xts-governance > .xh-container > div:first-child > p {
  max-width:
    520px;

  margin:
    0;

  color:
    #65716C;

  font-size:
    10.5px;

  line-height:
    1.6;
}


.xh-attendee-stories-page
.xts-governance-flow {
  display:
    grid;

  grid-template-columns:
    repeat(4,minmax(0,1fr));

  gap:
    8px;
}


.xh-attendee-stories-page
.xts-governance-flow article {
  min-height:
    150px;

  padding:
    13px;

  border:
    1px solid rgba(10,52,52,.08);

  border-radius:
    13px;

  background:
    rgba(255,255,255,.58);
}


.xh-attendee-stories-page
.xts-governance-flow b {
  display:
    grid;

  width:
    26px;

  height:
    26px;

  place-items:
    center;

  margin-bottom:
    19px;

  border-radius:
    50%;

  background:
    #0A3434;

  color:
    #FAF7F1;

  font-size:
    7.5px;
}


.xh-attendee-stories-page
.xts-governance-flow span {
  color:
    #0A3434;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    16px;
}


.xh-attendee-stories-page
.xts-governance-flow p {
  margin:
    6px 0 0;

  color:
    #65716C;

  font-size:
    8px;

  line-height:
    1.48;
}


/* --------------------------------------------------------------------------
   FINAL CTA
   -------------------------------------------------------------------------- */

.xh-attendee-stories-page
.xts-final-cta {
  padding:
    48px 0;

  background:
    #0A3434;

  color:
    #FAF7F1;
}


.xh-attendee-stories-page
.xts-final-cta-inner {
  display:
    grid;

  grid-template-columns:
    minmax(0,1.15fr)
    minmax(280px,.85fr);

  gap:
    58px;

  align-items:
    end;
}


.xh-attendee-stories-page
.xts-final-cta h2 {
  max-width:
    650px;

  margin:
    7px 0 0;

  color:
    #FAF7F1;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    43px;

  font-weight:
    500;

  line-height:
    1;

  letter-spacing:
    -1.5px;
}


.xh-attendee-stories-page
.xts-final-cta h2 em {
  display:
    block;

  color:
    #E47D6B;

  font-style:
    italic;

  font-weight:
    500;
}


.xh-attendee-stories-page
.xts-final-cta p {
  max-width:
    500px;

  margin:
    0 0 16px;

  color:
    rgba(250,247,241,.68);

  font-size:
    10.5px;

  line-height:
    1.58;
}


/* --------------------------------------------------------------------------
   TABLET
   -------------------------------------------------------------------------- */

@media (max-width: 960px) {

  .xh-attendee-stories-page
  .xts-hero-grid {
    grid-template-columns:
      minmax(0,1fr) 300px;

    gap:
      28px;
  }


  .xh-attendee-stories-page
  .xts-hero-assurances {
    grid-template-columns:
      1fr;
  }


  .xh-attendee-stories-page
  .xts-metric-grid {
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }


  .xh-attendee-stories-page
  .xts-metric-grid article:nth-child(2) {
    border-right:
      0;
  }


  .xh-attendee-stories-page
  .xts-metric-grid article:nth-child(-n+2) {
    border-bottom:
      1px solid #E6DFD3;
  }


  .xh-attendee-stories-page
  .xts-story-grid {
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }


  .xh-attendee-stories-page
  .xts-governance-grid {
    grid-template-columns:
      1fr;
  }

}


/* --------------------------------------------------------------------------
   MOBILE
   -------------------------------------------------------------------------- */

@media (max-width: 680px) {

  .xh-attendee-stories-page
  .xts-hero {
    padding:
      34px 0 32px;
  }


  .xh-attendee-stories-page
  .xts-hero-grid {
    grid-template-columns:
      1fr;
  }


  .xh-attendee-stories-page
  .xts-hero h1 {
    font-size:
      clamp(39px,10.5vw,47px);

    line-height:
      1;

    letter-spacing:
      -1.7px;
  }


  .xh-attendee-stories-page
  .xts-verification-card {
    padding:
      20px;
  }


  .xh-attendee-stories-page
  .xts-section-head {
    align-items:
      flex-start;

    flex-direction:
      column;

    gap:
      10px;
  }


  .xh-attendee-stories-page
  .xts-story-grid {
    grid-template-columns:
      1fr;
  }


  .xh-attendee-stories-page
  .xts-result-summary {
    justify-items:
      start;
  }


  .xh-attendee-stories-page
  .xts-story-footer {
    grid-template-columns:
      1fr;
  }


  .xh-attendee-stories-page
  .xts-story-event {
    text-align:
      left;
  }


  .xh-attendee-stories-page
  .xts-pagination {
    grid-template-columns:
      1fr 1fr;
  }


  .xh-attendee-stories-page
  .xts-pagination-pages {
    grid-column:
      1 / -1;

    grid-row:
      1;

    order:
      -1;

    overflow-x:
      auto;
  }


  .xh-attendee-stories-page
  .xts-pagination-nav:last-of-type {
    justify-self:
      end;
  }


  .xh-attendee-stories-page
  .xts-governance {
    padding:
      40px 0;
  }


  .xh-attendee-stories-page
  .xts-governance h2 {
    font-size:
      34px;
  }


  .xh-attendee-stories-page
  .xts-governance-flow {
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }


  .xh-attendee-stories-page
  .xts-final-cta-inner {
    grid-template-columns:
      1fr;

    gap:
      22px;
  }


  .xh-attendee-stories-page
  .xts-final-cta h2 {
    font-size:
      37px;
  }

}


@media (max-width: 440px) {

  .xh-attendee-stories-page
  .xts-metric-grid {
    grid-template-columns:
      1fr 1fr;
  }


  .xh-attendee-stories-page
  .xts-metric-grid article {
    padding:
      12px 14px;
  }


  .xh-attendee-stories-page
  .xts-governance-flow {
    grid-template-columns:
      1fr;
  }

}










/* ==========================================================================
   XTRIBE V60.8.5.43 — HOW XTRIBE WORKS + TRANSPARENT VISUAL

   Baseline:
   xtribe(10).zip

   Append this file to the VERY END of:
   assets/css/xtribe-public.css
   ========================================================================== */


/* --------------------------------------------------------------------------
   SECTION RHYTHM
   -------------------------------------------------------------------------- */

.xh-home-page
.xh-how-premium-v2 {
  padding:
    clamp(70px,6.5vw,96px) 0 !important;
}


.xh-home-page
.xh-how-shell-v2 {
  padding:
    clamp(35px,4vw,54px)
    clamp(30px,4.3vw,58px) !important;
}


/* --------------------------------------------------------------------------
   INTRO — COPY + TRANSPARENT IMAGE
   -------------------------------------------------------------------------- */

.xh-home-page
.xh-how-intro-v2 {
  display:
    grid;

  grid-template-columns:
    minmax(0,1.08fr)
    minmax(390px,.92fr) !important;

  gap:
    clamp(34px,5vw,68px) !important;

  align-items:
    center !important;

  padding-bottom:
    clamp(28px,3vw,38px) !important;

  margin-bottom:
    clamp(24px,2.6vw,32px) !important;
}


.xh-home-page
.xh-how-intro-content-v2 {
  position:
    relative;

  z-index:
    3;

  min-width:
    0;
}


.xh-home-page
.xh-how-intro-content-v2 h2 {
  max-width:
    700px;

  margin:
    11px 0 16px;

  color:
    var(--xh-cream);

  font-family:
    var(--xh-serif);

  font-size:
    clamp(42px,4.25vw,61px);

  font-weight:
    500;

  line-height:
    1;

  letter-spacing:
    -2.5px;

  text-wrap:
    balance;
}


.xh-home-page
.xh-how-intro-content-v2 h2 span {
  display:
    block;

  color:
    var(--xh-coral);
}


.xh-home-page
.xh-how-lead-v2 {
  max-width:
    650px;

  margin:
    0;

  color:
    rgba(250,247,241,.76);

  font-size:
    clamp(14px,1.05vw,16px);

  line-height:
    1.7;
}


.xh-home-page
.xh-how-lead-v2 strong {
  color:
    #FFFFFF;

  font-weight:
    800;
}


/* --------------------------------------------------------------------------
   CONTEXT INTRODUCTION FRAMEWORK
   -------------------------------------------------------------------------- */

.xh-home-page
.xh-how-context-framework-v2 {
  max-width:
    660px;

  margin-top:
    21px;

  padding:
    15px;

  border:
    1px solid rgba(255,255,255,.12);

  border-radius:
    16px;

  background:
    rgba(255,255,255,.052);
}


.xh-home-page
.xh-how-context-framework-head-v2 {
  display:
    grid;

  grid-template-columns:
    32px minmax(0,1fr);

  gap:
    11px;

  align-items:
    start;
}


.xh-home-page
.xh-how-context-framework-head-v2 > span {
  display:
    grid;

  width:
    31px;

  height:
    31px;

  place-items:
    center;

  border-radius:
    50%;

  background:
    var(--xh-coral);

  color:
    #FFFFFF;

  font-size:
    11px;
}


.xh-home-page
.xh-how-context-framework-head-v2 strong,
.xh-home-page
.xh-how-context-framework-head-v2 small {
  display:
    block;
}


.xh-home-page
.xh-how-context-framework-head-v2 strong {
  color:
    #FFFFFF;

  font-size:
    11px;

  font-weight:
    850;
}


.xh-home-page
.xh-how-context-framework-head-v2 small {
  margin-top:
    3px;

  color:
    rgba(250,247,241,.61);

  font-size:
    9px;

  line-height:
    1.45;
}


.xh-home-page
.xh-how-context-chips-v2 {
  display:
    grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:
    6px;

  margin-top:
    12px;
}


.xh-home-page
.xh-how-context-chips-v2 > span {
  display:
    flex;

  min-width:
    0;

  min-height:
    34px;

  align-items:
    center;

  gap:
    7px;

  padding:
    7px 9px;

  border:
    1px solid rgba(255,255,255,.10);

  border-radius:
    9px;

  background:
    rgba(255,255,255,.045);

  color:
    rgba(250,247,241,.86);

  font-size:
    8.5px;

  font-weight:
    800;

  white-space:
    nowrap;
}


.xh-home-page
.xh-how-context-chips-v2 small {
  color:
    var(--xh-coral);

  font-size:
    7px;

  font-weight:
    900;
}


/* --------------------------------------------------------------------------
   TRANSPARENT ILLUSTRATION
   -------------------------------------------------------------------------- */

.xh-home-page
.xh-how-visual-v2 {
  position:
    relative;

  z-index:
    2;

  min-width:
    0;

  min-height:
    395px;

  display:
    flex;

  align-items:
    center;

  justify-content:
    center;
}


.xh-home-page
.xh-how-image-wrap-v2 {
  position:
    relative;

  width:
    min(100%,520px);

  margin:
    0 auto;

  transform:
    translateY(7px);
}


.xh-home-page
.xh-how-image-wrap-v2::before {
  content:
    "";

  position:
    absolute;

  z-index:
    -1;

  left:
    8%;

  right:
    8%;

  bottom:
    4%;

  height:
    20%;

  border-radius:
    50%;

  background:
    rgba(0,0,0,.16);

  filter:
    blur(24px);
}


.xh-home-page
.xh-how-image-wrap-v2 img {
  display:
    block;

  width:
    100%;

  height:
    auto;

  object-fit:
    contain;

  filter:
    drop-shadow(0 18px 22px rgba(0,0,0,.09));
}


.xh-home-page
.xh-how-visual-note-v2 {
  position:
    absolute;

  z-index:
    4;

  right:
    0;

  bottom:
    11px;

  width:
    min(235px,58%);

  padding:
    11px 13px;

  border:
    1px solid rgba(255,255,255,.13);

  border-radius:
    12px;

  background:
    rgba(10,52,52,.84);

  box-shadow:
    0 14px 30px rgba(0,0,0,.12);

  backdrop-filter:
    blur(8px);
}


.xh-home-page
.xh-how-visual-note-v2 span,
.xh-home-page
.xh-how-visual-note-v2 strong {
  display:
    block;
}


.xh-home-page
.xh-how-visual-note-v2 span {
  color:
    var(--xh-coral);

  font-size:
    6.5px;

  font-weight:
    900;

  letter-spacing:
    .1em;
}


.xh-home-page
.xh-how-visual-note-v2 strong {
  margin-top:
    3px;

  color:
    var(--xh-cream);

  font-family:
    var(--xh-serif);

  font-size:
    14px;

  font-weight:
    500;

  line-height:
    1.18;
}


/* --------------------------------------------------------------------------
   JOURNEY
   -------------------------------------------------------------------------- */

.xh-home-page
.xh-how-journey-v2 {
  gap:
    11px !important;
}


.xh-home-page
.xh-how-step-v2 {
  padding:
    21px !important;

  border-radius:
    17px !important;
}


.xh-home-page
.xh-how-step-v2 .xh-how-step-top {
  margin-bottom:
    14px;
}


.xh-home-page
.xh-how-step-v2 .xh-how-icon {
  width:
    39px;

  height:
    39px;

  margin-bottom:
    14px;

  font-size:
    18px;
}


.xh-home-page
.xh-how-step-v2 h3 {
  margin-bottom:
    8px;

  font-size:
    clamp(20px,1.55vw,24px);
}


.xh-home-page
.xh-how-step-v2 p {
  font-size:
    11.5px;

  line-height:
    1.62;
}


.xh-home-page
.xh-how-step-v2 small {
  padding-top:
    16px;

  font-size:
    9.5px;
}


/* --------------------------------------------------------------------------
   BOTTOM PRINCIPLE
   -------------------------------------------------------------------------- */

.xh-home-page
.xh-how-footer-v2 {
  margin-top:
    12px !important;

  padding:
    19px 21px !important;

  grid-template-columns:
    minmax(0,.82fr)
    minmax(0,1.18fr) !important;
}


.xh-home-page
.xh-how-footer-v2
.xh-how-footer-copy p {
  max-width:
    520px;

  font-size:
    11.5px;
}


.xh-home-page
.xh-how-footer-v2
.xh-how-footer-copy p strong {
  display:
    block;

  margin-bottom:
    4px;

  color:
    #FFFFFF;

  font-weight:
    800;
}


.xh-home-page
.xh-how-equation-v2 {
  gap:
    7px !important;

  flex-wrap:
    nowrap !important;
}


.xh-home-page
.xh-how-equation-v2 span {
  min-height:
    30px !important;

  padding:
    0 10px !important;

  font-size:
    8.3px !important;
}


.xh-home-page
.xh-how-equation-v2 b {
  font-size:
    11px !important;
}


/* --------------------------------------------------------------------------
   TABLET
   -------------------------------------------------------------------------- */

@media (max-width: 1080px) {

  .xh-home-page
  .xh-how-intro-v2 {
    grid-template-columns:
      minmax(0,1fr)
      minmax(320px,.78fr) !important;

    gap:
      26px !important;
  }


  .xh-home-page
  .xh-how-visual-v2 {
    min-height:
      340px;
  }


  .xh-home-page
  .xh-how-image-wrap-v2 {
    width:
      min(100%,430px);
  }


  .xh-home-page
  .xh-how-context-chips-v2 {
    grid-template-columns:
      1fr;
  }


  .xh-home-page
  .xh-how-context-chips-v2 > span {
    white-space:
      normal;
  }


  .xh-home-page
  .xh-how-footer-v2 {
    grid-template-columns:
      1fr !important;
  }


  .xh-home-page
  .xh-how-equation-v2 {
    justify-content:
      flex-start !important;
  }

}


/* --------------------------------------------------------------------------
   MOBILE
   -------------------------------------------------------------------------- */

@media (max-width: 760px) {

  .xh-home-page
  .xh-how-premium-v2 {
    padding:
      58px 0 !important;
  }


  .xh-home-page
  .xh-how-shell-v2 {
    padding:
      27px 18px !important;

    border-radius:
      23px !important;
  }


  .xh-home-page
  .xh-how-intro-v2 {
    grid-template-columns:
      1fr !important;

    gap:
      18px !important;

    padding-bottom:
      24px !important;

    margin-bottom:
      21px !important;
  }


  .xh-home-page
  .xh-how-intro-content-v2 h2 {
    font-size:
      clamp(38px,10vw,47px);

    letter-spacing:
      -1.8px;
  }


  .xh-home-page
  .xh-how-visual-v2 {
    min-height:
      auto;

    margin-top:
      -6px;
  }


  .xh-home-page
  .xh-how-image-wrap-v2 {
    width:
      min(100%,460px);
  }


  .xh-home-page
  .xh-how-visual-note-v2 {
    right:
      0;

    bottom:
      0;

    width:
      min(220px,68%);
  }


  .xh-home-page
  .xh-how-journey-v2 {
    grid-template-columns:
      1fr !important;
  }


  .xh-home-page
  .xh-how-step-v2 {
    min-height:
      0;
  }


  .xh-home-page
  .xh-how-footer-v2 {
    padding:
      18px !important;
  }


  .xh-home-page
  .xh-how-footer-actions {
    align-items:
      flex-start !important;
  }


  .xh-home-page
  .xh-how-equation-v2 {
    width:
      100%;

    display:
      grid !important;

    grid-template-columns:
      1fr auto 1fr;

    gap:
      6px !important;
  }


  .xh-home-page
  .xh-how-equation-v2 span {
    justify-content:
      center;

    text-align:
      center;

    white-space:
      normal !important;
  }


  .xh-home-page
  .xh-how-equation-v2 span:nth-of-type(3),
  .xh-home-page
  .xh-how-equation-v2 span:nth-of-type(4) {
    margin-top:
      1px;
  }

}


/* Very small phones: keep the operating model readable instead of cramped. */
@media (max-width: 430px) {

  .xh-home-page
  .xh-how-equation-v2 {
    display:
      flex !important;

    flex-wrap:
      wrap !important;

    justify-content:
      flex-start !important;
  }


  .xh-home-page
  .xh-how-equation-v2 span {
    flex:
      0 0 auto;
  }

}










/* ==========================================================================
   XTRIBE V60.8.5.44 — INTRODUCTION / CONTEXT VISUAL

   Baseline:
   xtribe(10).zip

   Append this file to the VERY END of:
   assets/css/xtribe-public.css
   ========================================================================== */


/* --------------------------------------------------------------------------
   SECTION
   -------------------------------------------------------------------------- */

.xh-home-page
.xh-context-section-v2 {
  padding:
    clamp(72px,6.6vw,98px) 0 !important;

  background:
    linear-gradient(
      180deg,
      #FFFFFF 0%,
      #FAF7F1 100%
    ) !important;
}


.xh-home-page
.xh-context-section-v2::before {
  left:
    -230px !important;

  top:
    -250px !important;

  width:
    500px !important;

  height:
    500px !important;

  background:
    rgba(227,236,229,.54) !important;
}


.xh-home-page
.xh-context-section-v2::after {
  content:
    "";

  position:
    absolute;

  right:
    -160px;

  bottom:
    -210px;

  width:
    390px;

  height:
    390px;

  border-radius:
    50%;

  background:
    rgba(228,125,107,.065);

  pointer-events:
    none;
}


/* --------------------------------------------------------------------------
   INTRO
   -------------------------------------------------------------------------- */

.xh-home-page
.xh-context-header-v2 {
  grid-template-columns:
    minmax(0,1.08fr)
    minmax(340px,.92fr) !important;

  gap:
    clamp(38px,5vw,72px) !important;

  padding-bottom:
    clamp(27px,3vw,38px) !important;

  margin-bottom:
    clamp(28px,3vw,40px) !important;
}


.xh-home-page
.xh-context-header-v2
.xh-context-title h2 {
  max-width:
    760px;

  font-size:
    clamp(40px,4.05vw,54px);

  line-height:
    1.015;

  letter-spacing:
    -2px;
}


.xh-home-page
.xh-context-header-v2
.xh-context-header-copy > p {
  font-size:
    clamp(14px,1vw,16px) !important;

  line-height:
    1.7 !important;
}


.xh-home-page
.xh-context-header-v2
.xh-context-header-note {
  margin-top:
    15px !important;

  padding-left:
    15px;

  font-size:
    11.5px !important;
}


/* --------------------------------------------------------------------------
   MAIN LAYOUT
   -------------------------------------------------------------------------- */

.xh-home-page
.xh-context-layout-v2 {
  grid-template-columns:
    minmax(360px,.88fr)
    minmax(0,1.12fr) !important;

  gap:
    clamp(42px,6vw,82px) !important;

  align-items:
    center !important;
}


/* --------------------------------------------------------------------------
   TRANSPARENT ILLUSTRATION
   -------------------------------------------------------------------------- */

.xh-home-page
.xh-context-visual-v2 {
  position:
    relative;

  min-width:
    0;

  min-height:
    520px;

  display:
    flex;

  align-items:
    center;

  justify-content:
    center;

  padding:
    20px 10px 26px;
}


.xh-home-page
.xh-context-visual-v2::before {
  content:
    "";

  position:
    absolute;

  z-index:
    0;

  width:
    min(96%,470px);

  aspect-ratio:
    1 / 1;

  border-radius:
    50%;

  background:
    radial-gradient(
      circle,
      rgba(227,236,229,.82) 0%,
      rgba(227,236,229,.42) 57%,
      rgba(227,236,229,0) 72%
    );
}


.xh-home-page
.xh-context-image-wrap-v2 {
  position:
    relative;

  z-index:
    1;

  width:
    min(100%,445px);

  margin:
    0 auto;
}


.xh-home-page
.xh-context-image-wrap-v2::after {
  content:
    "";

  position:
    absolute;

  z-index:
    -1;

  left:
    13%;

  right:
    13%;

  bottom:
    3%;

  height:
    10%;

  border-radius:
    50%;

  background:
    rgba(10,52,52,.11);

  filter:
    blur(21px);
}


.xh-home-page
.xh-context-image-wrap-v2 img {
  display:
    block;

  width:
    100%;

  height:
    auto;

  object-fit:
    contain;

  filter:
    drop-shadow(0 16px 20px rgba(10,52,52,.075));
}


.xh-home-page
.xh-context-visual-note-v2 {
  position:
    absolute;

  z-index:
    3;

  left:
    3px;

  bottom:
    5px;

  width:
    min(255px,70%);

  padding:
    13px 15px;

  border:
    1px solid rgba(10,52,52,.10);

  border-radius:
    13px;

  background:
    rgba(250,247,241,.91);

  box-shadow:
    0 14px 34px rgba(10,52,52,.08);

  backdrop-filter:
    blur(8px);
}


.xh-home-page
.xh-context-visual-note-v2 strong {
  display:
    block;

  margin-top:
    4px;

  color:
    var(--xh-ink);

  font-family:
    var(--xh-serif);

  font-size:
    16px;

  font-weight:
    500;

  line-height:
    1.2;
}


/* --------------------------------------------------------------------------
   CONTEXT FRAMEWORK — 2x2 INSTEAD OF A LONG LIST
   -------------------------------------------------------------------------- */

.xh-home-page
.xh-context-points-v2 {
  display:
    grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:
    10px;

  border-top:
    0 !important;
}


.xh-home-page
.xh-context-points-v2 article {
  display:
    grid !important;

  grid-template-columns:
    38px minmax(0,1fr) !important;

  gap:
    11px !important;

  min-height:
    176px;

  align-content:
    start;

  padding:
    18px !important;

  border:
    1px solid var(--xh-line) !important;

  border-radius:
    15px;

  background:
    rgba(255,255,255,.86);

  transition:
    transform .16s ease,
    border-color .16s ease,
    box-shadow .16s ease;
}


.xh-home-page
.xh-context-points-v2 article:hover {
  transform:
    translateY(-2px);

  border-color:
    rgba(228,125,107,.34) !important;

  box-shadow:
    0 12px 28px rgba(10,52,52,.055);
}


.xh-home-page
.xh-context-points-v2
.xh-context-number {
  width:
    34px !important;

  height:
    25px !important;

  margin-top:
    0 !important;

  font-size:
    8px !important;
}


.xh-home-page
.xh-context-points-v2 h3 {
  margin:
    0 0 6px !important;

  font-size:
    clamp(19px,1.45vw,23px) !important;

  line-height:
    1.08 !important;
}


.xh-home-page
.xh-context-points-v2 p {
  margin:
    0 !important;

  color:
    var(--xh-muted);

  font-size:
    10.5px !important;

  line-height:
    1.58 !important;
}


.xh-home-page
.xh-context-standard-v2 {
  grid-column:
    1 / -1;

  display:
    grid;

  grid-template-columns:
    32px minmax(0,1fr);

  gap:
    11px;

  align-items:
    start;

  padding:
    14px 16px;

  border-radius:
    13px;

  background:
    var(--xh-green);
}


.xh-home-page
.xh-context-standard-v2 > span {
  display:
    grid;

  width:
    31px;

  height:
    31px;

  place-items:
    center;

  border-radius:
    50%;

  background:
    var(--xh-coral);

  color:
    #FFFFFF;

  font-size:
    11px;
}


.xh-home-page
.xh-context-standard-v2 p {
  max-width:
    none !important;

  margin:
    0 !important;

  color:
    rgba(250,247,241,.72) !important;

  font-size:
    10px !important;

  line-height:
    1.52 !important;
}


.xh-home-page
.xh-context-standard-v2 strong {
  display:
    block;

  margin-bottom:
    3px;

  color:
    #FFFFFF;

  font-size:
    10.5px;
}


/* --------------------------------------------------------------------------
   OUTCOME STRIP
   -------------------------------------------------------------------------- */

.xh-home-page
.xh-context-outcome-v2 {
  max-width:
    none !important;

  grid-template-columns:
    42px
    minmax(0,1fr)
    auto !important;

  gap:
    16px !important;

  margin:
    clamp(30px,3.2vw,42px) 0 0 !important;

  padding:
    18px 20px !important;

  background:
    rgba(227,236,229,.54) !important;
}


.xh-home-page
.xh-context-outcome-v2 p {
  max-width:
    680px;

  margin:
    5px 0 0 !important;

  font-size:
    11px !important;

  line-height:
    1.58 !important;
}


.xh-home-page
.xh-context-outcome-flow-v2 {
  display:
    flex;

  align-items:
    center;

  justify-content:
    flex-end;

  gap:
    6px;
}


.xh-home-page
.xh-context-outcome-flow-v2 span {
  display:
    inline-flex;

  min-height:
    30px;

  align-items:
    center;

  justify-content:
    center;

  padding:
    0 9px;

  border:
    1px solid rgba(10,52,52,.10);

  border-radius:
    999px;

  background:
    rgba(255,255,255,.72);

  color:
    var(--xh-ink);

  font-size:
    7.5px;

  font-weight:
    850;

  white-space:
    nowrap;
}


.xh-home-page
.xh-context-outcome-flow-v2 b {
  color:
    var(--xh-coral);

  font-size:
    10px;
}


/* --------------------------------------------------------------------------
   TABLET
   -------------------------------------------------------------------------- */

@media (max-width: 1024px) {

  .xh-home-page
  .xh-context-header-v2 {
    grid-template-columns:
      1fr !important;
  }


  .xh-home-page
  .xh-context-layout-v2 {
    grid-template-columns:
      minmax(300px,.8fr)
      minmax(0,1.2fr) !important;

    gap:
      30px !important;
  }


  .xh-home-page
  .xh-context-visual-v2 {
    min-height:
      470px;
  }


  .xh-home-page
  .xh-context-image-wrap-v2 {
    width:
      min(100%,390px);
  }


  .xh-home-page
  .xh-context-points-v2 {
    grid-template-columns:
      1fr;
  }


  .xh-home-page
  .xh-context-points-v2 article {
    min-height:
      0;
  }


  .xh-home-page
  .xh-context-outcome-v2 {
    grid-template-columns:
      42px minmax(0,1fr) !important;
  }


  .xh-home-page
  .xh-context-outcome-flow-v2 {
    grid-column:
      2;

    justify-content:
      flex-start;

    flex-wrap:
      wrap;

    margin-top:
      3px;
  }

}


/* --------------------------------------------------------------------------
   MOBILE
   -------------------------------------------------------------------------- */

@media (max-width: 720px) {

  .xh-home-page
  .xh-context-section-v2 {
    padding:
      58px 0 !important;
  }


  .xh-home-page
  .xh-context-header-v2 {
    margin-bottom:
      20px !important;

    padding-bottom:
      23px !important;
  }


  .xh-home-page
  .xh-context-header-v2
  .xh-context-title h2 {
    font-size:
      clamp(36px,9.7vw,44px);

    line-height:
      1.02;

    letter-spacing:
      -1.6px;
  }


  .xh-home-page
  .xh-context-layout-v2 {
    grid-template-columns:
      1fr !important;

    gap:
      20px !important;
  }


  .xh-home-page
  .xh-context-visual-v2 {
    min-height:
      auto;

    padding:
      4px 0 28px;
  }


  .xh-home-page
  .xh-context-image-wrap-v2 {
    width:
      min(100%,420px);
  }


  .xh-home-page
  .xh-context-visual-note-v2 {
    left:
      0;

    bottom:
      0;

    width:
      min(230px,72%);
  }


  .xh-home-page
  .xh-context-points-v2 {
    grid-template-columns:
      1fr;
  }


  .xh-home-page
  .xh-context-points-v2 article {
    min-height:
      0;

    padding:
      16px !important;
  }


  .xh-home-page
  .xh-context-standard-v2 {
    grid-column:
      auto;
  }


  .xh-home-page
  .xh-context-outcome-v2 {
    grid-template-columns:
      38px minmax(0,1fr) !important;

    padding:
      17px !important;
  }


  .xh-home-page
  .xh-context-outcome-flow-v2 {
    grid-column:
      1 / -1;

    margin-top:
      2px;
  }

}


@media (max-width: 430px) {

  .xh-home-page
  .xh-context-outcome-flow-v2 {
    display:
      grid;

    grid-template-columns:
      1fr auto 1fr;
  }


  .xh-home-page
  .xh-context-outcome-flow-v2 span:last-of-type {
    grid-column:
      1 / -1;

    justify-self:
      center;
  }


  .xh-home-page
  .xh-context-outcome-flow-v2 b:last-of-type {
    display:
      none;
  }

}










/* ==========================================================================
   XTRIBE V60.8.5.45 — BEYOND THE ROOM / COMMUNITY CONTINUITY VISUAL

   Baseline:
   xtribe(10).zip

   Append this file to the VERY END of:
   assets/css/xtribe-public.css
   ========================================================================== */


/* --------------------------------------------------------------------------
   SECTION
   -------------------------------------------------------------------------- */

.xh-home-page
.xh-continuity-v2 {
  padding:
    clamp(72px,6.5vw,98px) 0 !important;

  background:
    linear-gradient(
      180deg,
      var(--xh-cream) 0%,
      #FFFFFF 100%
    ) !important;
}


.xh-home-page
.xh-continuity-v2::before {
  right:
    -175px !important;

  top:
    -200px !important;

  width:
    440px !important;

  height:
    440px !important;

  background:
    rgba(227,236,229,.68) !important;
}


.xh-home-page
.xh-continuity-v2::after {
  content:
    "";

  position:
    absolute;

  left:
    -180px;

  bottom:
    -220px;

  width:
    420px;

  height:
    420px;

  border-radius:
    50%;

  background:
    rgba(228,125,107,.055);

  pointer-events:
    none;
}


/* --------------------------------------------------------------------------
   INTRO — COPY + TRANSPARENT COMMUNITY VISUAL
   -------------------------------------------------------------------------- */

.xh-home-page
.xh-continuity-intro-v2 {
  grid-template-columns:
    minmax(0,1.08fr)
    minmax(390px,.92fr) !important;

  gap:
    clamp(38px,5vw,72px) !important;

  align-items:
    center !important;

  padding-bottom:
    clamp(30px,3.4vw,42px) !important;

  margin-bottom:
    clamp(27px,3vw,38px) !important;
}


.xh-home-page
.xh-continuity-heading-v2 h2 {
  max-width:
    770px;

  font-size:
    clamp(40px,4.1vw,55px) !important;

  line-height:
    1.015 !important;

  letter-spacing:
    -2px !important;
}


.xh-home-page
.xh-continuity-lead-v2 {
  max-width:
    690px;

  margin:
    17px 0 0;

  color:
    rgba(10,52,52,.72);

  font-size:
    clamp(14px,1.05vw,16px);

  line-height:
    1.7;
}


.xh-home-page
.xh-continuity-flow-v2 {
  margin-top:
    20px !important;

  gap:
    7px !important;
}


.xh-home-page
.xh-continuity-flow-v2 span {
  min-height:
    31px !important;

  padding:
    0 11px !important;

  background:
    rgba(255,255,255,.80) !important;

  font-size:
    8.5px !important;
}


.xh-home-page
.xh-continuity-flow-v2 b {
  font-size:
    10px !important;
}


/* --------------------------------------------------------------------------
   COMMUNITY VISUAL
   -------------------------------------------------------------------------- */

.xh-home-page
.xh-continuity-visual-v2 {
  position:
    relative;

  min-width:
    0;

  min-height:
    455px;

  display:
    flex;

  align-items:
    center;

  justify-content:
    center;

  padding:
    4px 8px 24px;
}


.xh-home-page
.xh-continuity-visual-v2::before {
  content:
    "";

  position:
    absolute;

  z-index:
    0;

  width:
    min(95%,470px);

  aspect-ratio:
    1 / 1;

  border-radius:
    50%;

  background:
    radial-gradient(
      circle,
      rgba(227,236,229,.82) 0%,
      rgba(227,236,229,.40) 58%,
      rgba(227,236,229,0) 74%
    );
}


.xh-home-page
.xh-continuity-image-wrap-v2 {
  position:
    relative;

  z-index:
    1;

  width:
    min(100%,455px);

  margin:
    0 auto;
}


.xh-home-page
.xh-continuity-image-wrap-v2::after {
  content:
    "";

  position:
    absolute;

  z-index:
    -1;

  left:
    12%;

  right:
    12%;

  bottom:
    3%;

  height:
    9%;

  border-radius:
    50%;

  background:
    rgba(10,52,52,.10);

  filter:
    blur(22px);
}


.xh-home-page
.xh-continuity-image-wrap-v2 img {
  display:
    block;

  width:
    100%;

  height:
    auto;

  object-fit:
    contain;

  filter:
    drop-shadow(0 16px 23px rgba(10,52,52,.07));
}


.xh-home-page
.xh-continuity-visual-note-v2 {
  position:
    absolute;

  z-index:
    3;

  left:
    0;

  bottom:
    5px;

  width:
    min(270px,66%);

  padding:
    13px 15px;

  border:
    1px solid rgba(10,52,52,.09);

  border-radius:
    13px;

  background:
    rgba(250,247,241,.92);

  box-shadow:
    0 14px 34px rgba(10,52,52,.075);

  backdrop-filter:
    blur(8px);
}


.xh-home-page
.xh-continuity-visual-note-v2 strong {
  display:
    block;

  margin-top:
    4px;

  color:
    var(--xh-ink);

  font-family:
    var(--xh-serif);

  font-size:
    16px;

  font-weight:
    500;

  line-height:
    1.18;
}


/* --------------------------------------------------------------------------
   THREE CONTINUITY CARDS
   -------------------------------------------------------------------------- */

.xh-home-page
.xh-continuity-grid-v2 {
  gap:
    12px !important;
}


.xh-home-page
.xh-continuity-card-v2 {
  padding:
    clamp(21px,2.2vw,28px) !important;

  border-radius:
    18px !important;

  box-shadow:
    0 10px 29px rgba(10,52,52,.045) !important;

  transition:
    transform .16s ease,
    border-color .16s ease,
    box-shadow .16s ease;
}


.xh-home-page
.xh-continuity-card-v2:hover {
  transform:
    translateY(-2px);

  border-color:
    rgba(228,125,107,.30);

  box-shadow:
    0 14px 34px rgba(10,52,52,.07) !important;
}


.xh-home-page
.xh-continuity-card-v2
.xh-continuity-card-top {
  margin-bottom:
    17px !important;
}


.xh-home-page
.xh-continuity-card-v2 h3 {
  margin-bottom:
    10px !important;

  font-size:
    clamp(22px,1.82vw,27px) !important;

  line-height:
    1.08 !important;
}


.xh-home-page
.xh-continuity-card-v2 > p {
  font-size:
    11.5px !important;

  line-height:
    1.63 !important;
}


.xh-home-page
.xh-continuity-card-v2
.xh-continuity-points {
  gap:
    7px !important;

  padding-top:
    17px !important;
}


.xh-home-page
.xh-continuity-card-v2
.xh-continuity-points li {
  font-size:
    9.5px !important;
}


/* --------------------------------------------------------------------------
   CONTINUITY / ACCESS STRIP
   -------------------------------------------------------------------------- */

.xh-home-page
.xh-continuity-access-v2 {
  margin-top:
    14px !important;

  padding:
    clamp(22px,2.5vw,30px) !important;

  border-radius:
    18px !important;
}


.xh-home-page
.xh-continuity-access-v2
.xh-continuity-access-copy {
  max-width:
    780px;
}


.xh-home-page
.xh-continuity-access-v2 h3 {
  max-width:
    720px;

  font-size:
    clamp(25px,2.15vw,32px) !important;
}


.xh-home-page
.xh-continuity-access-v2 p {
  max-width:
    730px !important;

  font-size:
    11px !important;

  line-height:
    1.58 !important;
}


.xh-home-page
.xh-continuity-access-actions-v2 {
  display:
    grid;

  gap:
    8px;

  flex:
    0 0 auto;

  justify-items:
    end;
}


.xh-home-page
.xh-continuity-access-actions-v2 small {
  max-width:
    255px;

  color:
    rgba(255,255,255,.56);

  font-size:
    7.5px;

  line-height:
    1.4;

  text-align:
    right;
}


/* --------------------------------------------------------------------------
   TABLET
   -------------------------------------------------------------------------- */

@media (max-width: 1000px) {

  .xh-home-page
  .xh-continuity-intro-v2 {
    grid-template-columns:
      minmax(0,1fr)
      minmax(320px,.72fr) !important;

    gap:
      28px !important;
  }


  .xh-home-page
  .xh-continuity-visual-v2 {
    min-height:
      390px;
  }


  .xh-home-page
  .xh-continuity-image-wrap-v2 {
    width:
      min(100%,390px);
  }


  .xh-home-page
  .xh-continuity-grid-v2 {
    grid-template-columns:
      repeat(3,minmax(0,1fr)) !important;
  }


  .xh-home-page
  .xh-continuity-card-v2 {
    padding:
      19px !important;
  }


  .xh-home-page
  .xh-continuity-access-v2 {
    flex-direction:
      row !important;

    align-items:
      center !important;
  }

}


/* --------------------------------------------------------------------------
   NARROW TABLET
   -------------------------------------------------------------------------- */

@media (max-width: 820px) {

  .xh-home-page
  .xh-continuity-intro-v2 {
    grid-template-columns:
      1fr !important;
  }


  .xh-home-page
  .xh-continuity-visual-v2 {
    min-height:
      auto;

    padding-top:
      0;
  }


  .xh-home-page
  .xh-continuity-image-wrap-v2 {
    width:
      min(100%,480px);
  }


  .xh-home-page
  .xh-continuity-grid-v2 {
    grid-template-columns:
      1fr !important;
  }


  .xh-home-page
  .xh-continuity-card-v2 {
    min-height:
      0;
  }


  .xh-home-page
  .xh-continuity-access-v2 {
    align-items:
      flex-start !important;

    flex-direction:
      column !important;
  }


  .xh-home-page
  .xh-continuity-access-actions-v2 {
    justify-items:
      start;
  }


  .xh-home-page
  .xh-continuity-access-actions-v2 small {
    text-align:
      left;
  }

}


/* --------------------------------------------------------------------------
   MOBILE
   -------------------------------------------------------------------------- */

@media (max-width: 640px) {

  .xh-home-page
  .xh-continuity-v2 {
    padding:
      58px 0 !important;
  }


  .xh-home-page
  .xh-continuity-heading-v2 h2 {
    font-size:
      clamp(36px,9.5vw,44px) !important;

    letter-spacing:
      -1.55px !important;
  }


  .xh-home-page
  .xh-continuity-heading-v2 h2 span {
    display:
      block !important;
  }


  .xh-home-page
  .xh-continuity-flow-v2 {
    gap:
      5px !important;
  }


  .xh-home-page
  .xh-continuity-flow-v2 span {
    padding:
      0 9px !important;

    font-size:
      7.5px !important;
  }


  .xh-home-page
  .xh-continuity-visual-v2 {
    padding-bottom:
      29px;
  }


  .xh-home-page
  .xh-continuity-image-wrap-v2 {
    width:
      min(100%,430px);
  }


  .xh-home-page
  .xh-continuity-visual-note-v2 {
    left:
      0;

    bottom:
      0;

    width:
      min(235px,72%);
  }


  .xh-home-page
  .xh-continuity-card-v2 {
    padding:
      21px 19px !important;
  }


  .xh-home-page
  .xh-continuity-access-v2 {
    padding:
      22px 20px !important;
  }


  .xh-home-page
  .xh-continuity-access-actions-v2,
  .xh-home-page
  .xh-continuity-access-actions-v2
  .xh-button {
    width:
      100%;
  }

}










/* ==========================================================================
   XTRIBE V60.8.5.46 — FAQ / BEFORE YOUR FIRST EXPERIENCE

   Baseline:
   xtribe(10).zip

   Append this file to the VERY END of:
   assets/css/xtribe-public.css
   ========================================================================== */


/* --------------------------------------------------------------------------
   SECTION
   -------------------------------------------------------------------------- */

.xh-home-page
.xh-faq-compact-v2 {
  padding:
    clamp(72px,6.5vw,98px) 0 !important;

  background:
    linear-gradient(
      180deg,
      #FAF7F1 0%,
      #FFFFFF 100%
    ) !important;
}


.xh-home-page
.xh-faq-compact-v2::before {
  right:
    -180px !important;

  top:
    -220px !important;

  width:
    460px !important;

  height:
    460px !important;

  background:
    rgba(227,236,229,.72) !important;
}


.xh-home-page
.xh-faq-compact-v2::after {
  content:
    "";

  position:
    absolute;

  left:
    -180px;

  bottom:
    -220px;

  width:
    410px;

  height:
    410px;

  border-radius:
    50%;

  background:
    rgba(228,125,107,.055);

  pointer-events:
    none;
}


/* --------------------------------------------------------------------------
   TWO-COLUMN STRUCTURE
   -------------------------------------------------------------------------- */

.xh-home-page
.xh-faq-compact-grid-v2 {
  grid-template-columns:
    minmax(350px,.82fr)
    minmax(0,1.18fr) !important;

  gap:
    clamp(44px,6vw,84px) !important;
}


/* --------------------------------------------------------------------------
   INTRO
   -------------------------------------------------------------------------- */

.xh-home-page
.xh-faq-compact-intro-v2 {
  top:
    104px !important;
}


.xh-home-page
.xh-faq-compact-intro-v2 h2 {
  max-width:
    590px;

  margin:
    11px 0 17px !important;

  font-size:
    clamp(40px,4vw,54px) !important;

  line-height:
    1.015 !important;

  letter-spacing:
    -1.95px !important;
}


.xh-home-page
.xh-faq-compact-intro-v2 > p {
  max-width:
    560px !important;

  font-size:
    14px !important;

  line-height:
    1.7 !important;
}


.xh-home-page
.xh-faq-assurance-v2 {
  gap:
    6px !important;

  margin:
    20px 0 15px !important;
}


.xh-home-page
.xh-faq-assurance-v2 span {
  min-height:
    30px !important;

  padding:
    0 10px !important;

  background:
    rgba(255,255,255,.78) !important;

  font-size:
    8px !important;
}


/* --------------------------------------------------------------------------
   REASSURANCE IMAGE
   -------------------------------------------------------------------------- */

.xh-home-page
.xh-faq-visual-v2 {
  position:
    relative;

  width:
    min(100%,540px);

  margin:
    5px 0 12px;

  padding:
    4px;

  border-radius:
    18px;

  background:
    rgba(255,255,255,.30);
}


.xh-home-page
.xh-faq-visual-v2::before {
  content:
    "";

  position:
    absolute;

  z-index:
    0;

  inset:
    12% 8% 7%;

  border-radius:
    50%;

  background:
    radial-gradient(
      circle,
      rgba(227,236,229,.66) 0%,
      rgba(227,236,229,.28) 58%,
      rgba(227,236,229,0) 74%
    );
}


.xh-home-page
.xh-faq-visual-v2 img {
  position:
    relative;

  z-index:
    1;

  display:
    block;

  width:
    100%;

  height:
    auto;

  object-fit:
    contain;

  filter:
    drop-shadow(0 14px 22px rgba(10,52,52,.075));
}


.xh-home-page
.xh-faq-visual-note-v2 {
  position:
    absolute;

  z-index:
    3;

  left:
    5px;

  bottom:
    1px;

  width:
    min(260px,66%);

  padding:
    11px 13px;

  border:
    1px solid rgba(10,52,52,.09);

  border-radius:
    12px;

  background:
    rgba(250,247,241,.92);

  box-shadow:
    0 12px 30px rgba(10,52,52,.07);

  backdrop-filter:
    blur(8px);
}


.xh-home-page
.xh-faq-visual-note-v2 strong {
  display:
    block;

  margin-top:
    4px;

  color:
    var(--xh-ink);

  font-family:
    var(--xh-serif);

  font-size:
    14px;

  font-weight:
    500;

  line-height:
    1.2;
}


.xh-home-page
.xh-faq-events-link-v2 {
  margin-top:
    10px;
}


/* --------------------------------------------------------------------------
   FAQ LIST
   -------------------------------------------------------------------------- */

.xh-home-page
.xh-faq-compact-list-v2 {
  border-top:
    0 !important;
}


.xh-home-page
.xh-faq-list-heading-v2 {
  display:
    flex;

  align-items:
    end;

  justify-content:
    space-between;

  gap:
    24px;

  margin-bottom:
    7px;

  padding-bottom:
    13px;

  border-bottom:
    1px solid rgba(10,52,52,.15);
}


.xh-home-page
.xh-faq-list-heading-v2 > p {
  max-width:
    430px;

  margin:
    0;

  color:
    rgba(10,52,52,.59);

  font-size:
    9px;

  line-height:
    1.48;

  text-align:
    right;
}


.xh-home-page
.xh-faq-item-v2 summary {
  min-height:
    69px !important;

  padding:
    12px 0 !important;
}


.xh-home-page
.xh-faq-item-v2 summary strong {
  font-size:
    clamp(19px,1.55vw,23px) !important;

  line-height:
    1.16 !important;
}


.xh-home-page
.xh-faq-item-v2
.xh-faq-answer {
  max-width:
    760px;

  padding-bottom:
    20px !important;
}


.xh-home-page
.xh-faq-item-v2
.xh-faq-answer p {
  font-size:
    12.5px !important;

  line-height:
    1.68 !important;
}


/* --------------------------------------------------------------------------
   DECISION STRIP
   -------------------------------------------------------------------------- */

.xh-home-page
.xh-faq-bottom-v2 {
  margin-top:
    clamp(31px,3.5vw,44px) !important;

  padding:
    20px 22px !important;

  border-radius:
    17px !important;

  background:
    rgba(227,236,229,.48) !important;
}


.xh-home-page
.xh-faq-bottom-copy-v2 {
  max-width:
    770px;
}


.xh-home-page
.xh-faq-bottom-copy-v2 p {
  max-width:
    760px !important;

  margin:
    5px 0 0 !important;

  font-size:
    11px !important;

  line-height:
    1.58 !important;
}


.xh-home-page
.xh-faq-bottom-actions-v2 {
  display:
    grid;

  gap:
    8px;

  flex:
    0 0 auto;

  justify-items:
    end;
}


.xh-home-page
.xh-faq-bottom-actions-v2
.xh-text-link {
  font-size:
    9px;
}


/* --------------------------------------------------------------------------
   TABLET
   -------------------------------------------------------------------------- */

@media (max-width: 960px) {

  .xh-home-page
  .xh-faq-compact-grid-v2 {
    grid-template-columns:
      1fr !important;

    gap:
      32px !important;
  }


  .xh-home-page
  .xh-faq-compact-intro-v2 {
    position:
      static !important;

    max-width:
      none !important;

    display:
      grid;

    grid-template-columns:
      minmax(0,1fr)
      minmax(300px,.78fr);

    column-gap:
      30px;
  }


  .xh-home-page
  .xh-faq-compact-intro-v2
  > .xh-eyebrow,
  .xh-home-page
  .xh-faq-compact-intro-v2
  > h2,
  .xh-home-page
  .xh-faq-compact-intro-v2
  > p,
  .xh-home-page
  .xh-faq-compact-intro-v2
  > .xh-faq-assurance,
  .xh-home-page
  .xh-faq-compact-intro-v2
  > .xh-faq-events-link-v2 {
    grid-column:
      1;
  }


  .xh-home-page
  .xh-faq-visual-v2 {
    grid-column:
      2;

    grid-row:
      1 / span 5;

    align-self:
      center;

    margin:
      0;
  }


  .xh-home-page
  .xh-faq-list-heading-v2 {
    margin-top:
      6px;
  }

}


/* --------------------------------------------------------------------------
   MOBILE
   -------------------------------------------------------------------------- */

@media (max-width: 700px) {

  .xh-home-page
  .xh-faq-compact-v2 {
    padding:
      58px 0 62px !important;
  }


  .xh-home-page
  .xh-faq-compact-intro-v2 {
    display:
      block;
  }


  .xh-home-page
  .xh-faq-compact-intro-v2 h2 {
    font-size:
      clamp(36px,9.7vw,44px) !important;

    line-height:
      1.02 !important;

    letter-spacing:
      -1.55px !important;
  }


  .xh-home-page
  .xh-faq-visual-v2 {
    width:
      min(100%,500px);

    margin:
      11px 0 12px;
  }


  .xh-home-page
  .xh-faq-visual-note-v2 {
    width:
      min(225px,72%);
  }


  .xh-home-page
  .xh-faq-list-heading-v2 {
    align-items:
      flex-start;

    flex-direction:
      column;

    gap:
      6px;
  }


  .xh-home-page
  .xh-faq-list-heading-v2 > p {
    max-width:
      600px;

    text-align:
      left;
  }


  .xh-home-page
  .xh-faq-item-v2 summary {
    grid-template-columns:
      28px minmax(0,1fr) 29px !important;

    gap:
      9px !important;
  }


  .xh-home-page
  .xh-faq-item-v2 summary strong {
    font-size:
      19px !important;
  }


  .xh-home-page
  .xh-faq-item-v2
  .xh-faq-answer {
    padding:
      0 0 19px 37px !important;
  }


  .xh-home-page
  .xh-faq-bottom-v2 {
    align-items:
      flex-start !important;

    flex-direction:
      column !important;

    padding:
      19px !important;
  }


  .xh-home-page
  .xh-faq-bottom-actions-v2 {
    width:
      100%;

    justify-items:
      start;
  }


  .xh-home-page
  .xh-faq-bottom-actions-v2
  .xh-button {
    width:
      100%;
  }

}


/* ==========================================================================
   XTRIBE — HOMEPAGE HERO TRANSPARENT IMAGE FIT
   Final authoritative override

   Purpose:
   The new homepage hero PNG is portrait/vertical and contains important
   artwork above and below the central conversation. Older CSS forces it into
   a landscape 1.32:1 frame with object-fit:cover, which crops the artwork.

   Keep this block at the VERY END of assets/css/xtribe-public.css.
   ========================================================================== */


/* DESKTOP --------------------------------------------------------------- */
@media (min-width: 901px) {

  .xh-home-page .xh-hero-visual {
    display: flex;
    min-width: 0;
    min-height: 570px;
    align-items: center;
    justify-content: center;
    overflow: visible;
  }

  .xh-home-page .xh-hero-visual > img {
    display: block;

    /*
     * IMPORTANT:
     * Do not force a landscape aspect ratio here.
     * The transparent hero artwork is intentionally vertical.
     */
    width: 100% !important;
    max-width: 500px !important;
    height: auto !important;
    max-height: 630px;

    aspect-ratio: auto !important;
    object-fit: contain !important;
    object-position: center center !important;

    margin: 0 auto;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

}


/* MEDIUM DESKTOP -------------------------------------------------------- */
@media (min-width: 901px) and (max-width: 1100px) {

  .xh-home-page .xh-hero-visual {
    min-height: 500px;
  }

  .xh-home-page .xh-hero-visual > img {
    max-width: 430px !important;
    max-height: 550px;
  }

}


/* TABLET --------------------------------------------------------------- */
@media (max-width: 900px) {

  .xh-home-page .xh-hero-visual {
    display: flex;
    width: 100%;
    max-width: 680px !important;
    min-height: 0;
    align-items: center;
    justify-content: center;
    overflow: visible;
  }

  .xh-home-page .xh-hero-visual > img {
    display: block;
    width: min(100%, 520px) !important;
    height: auto !important;

    aspect-ratio: auto !important;
    object-fit: contain !important;
    object-position: center !important;

    margin: 0 auto;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

}


/* MOBILE --------------------------------------------------------------- */
@media (max-width: 640px) {

  .xh-home-page .xh-hero-visual {
    margin-top: 4px;
  }

  .xh-home-page .xh-hero-visual > img {
    width: min(100%, 430px) !important;
    height: auto !important;
    max-height: none;

    aspect-ratio: auto !important;
    object-fit: contain !important;
  }

}










/* ==========================================================================
   XTRIBE V60.8.5.47 — EVENT DETAIL EXPERIENCE UPGRADE

   Baseline:
   xtribe(10).zip

   Append to the VERY END of:
   assets/css/xtribe-public.css
   ========================================================================== */


/* --------------------------------------------------------------------------
   PAGE FOUNDATION
   -------------------------------------------------------------------------- */

.xp-event-detail-page {
  background:
    #FAF7F1;
}


.xp-event-detail-page
.xp-main {
  overflow:
    visible;
}


/* --------------------------------------------------------------------------
   HERO
   -------------------------------------------------------------------------- */

.xp-event-detail-page
.xe-detail-hero {
  position:
    relative;

  overflow:
    hidden;

  padding:
    46px 0 24px;

  background:
    #0A3434;
}


.xp-event-detail-page
.xe-detail-hero::before {
  content:
    "";

  position:
    absolute;

  width:
    420px;

  height:
    420px;

  right:
    -190px;

  top:
    -230px;

  border:
    1px solid rgba(250,247,241,.12);

  border-radius:
    50%;
}


.xp-event-detail-page
.xe-detail-hero::after {
  content:
    "";

  position:
    absolute;

  width:
    280px;

  height:
    280px;

  left:
    -165px;

  bottom:
    -205px;

  border-radius:
    50%;

  background:
    rgba(228,125,107,.11);
}


.xp-event-detail-page
.xe-detail-shell {
  position:
    relative;

  z-index:
    2;

  display:
    grid;

  width:
    min(1240px,calc(100% - 44px));

  margin:
    0 auto;

  grid-template-columns:
    minmax(0,58fr)
    minmax(390px,42fr);

  gap:
    clamp(40px,5vw,72px);

  align-items:
    center;
}


.xp-event-detail-page
.xe-detail-hero-copy {
  min-width:
    0;

  padding:
    14px 0 18px;
}


.xp-event-detail-page
.xe-back-link {
  display:
    inline-flex;

  margin-bottom:
    22px;

  color:
    rgba(250,247,241,.72);

  font-size:
    11px;

  font-weight:
    800;
}


.xp-event-detail-page
.xe-back-link:hover,
.xp-event-detail-page
.xe-back-link:focus-visible {
  color:
    #FFFFFF;
}


.xp-event-detail-page
.xe-eyebrow {
  display:
    inline-block;

  color:
    #E47D6B;

  font-size:
    9px;

  font-weight:
    900;

  line-height:
    1.2;

  letter-spacing:
    .13em;

  text-transform:
    uppercase;
}


.xp-event-detail-page
.xe-detail-hero h1 {
  max-width:
    760px;

  margin:
    11px 0 15px;

  color:
    #FAF7F1;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    clamp(43px,4.25vw,59px) !important;

  font-weight:
    500;

  line-height:
    .99 !important;

  letter-spacing:
    -2.25px !important;

  text-wrap:
    balance;
}


.xp-event-detail-page
.xe-detail-hero-question {
  max-width:
    690px;

  margin:
    0;

  color:
    rgba(250,247,241,.74);

  font-size:
    15px;

  line-height:
    1.58;
}


.xp-event-detail-page
.xe-detail-hero-facts {
  display:
    flex;

  flex-wrap:
    wrap;

  gap:
    7px;

  margin-top:
    21px;
}


.xp-event-detail-page
.xe-detail-hero-facts > span {
  display:
    inline-flex;

  min-height:
    35px;

  align-items:
    center;

  gap:
    7px;

  padding:
    0 11px;

  border:
    1px solid rgba(255,255,255,.14);

  border-radius:
    999px;

  background:
    rgba(255,255,255,.055);

  color:
    rgba(250,247,241,.86);

  font-size:
    9px;

  font-weight:
    800;
}


.xp-event-detail-page
.xe-detail-hero-facts small {
  color:
    #E7B66E;

  font-size:
    6.5px;

  font-weight:
    900;

  letter-spacing:
    .08em;
}


.xp-event-detail-page
.xe-detail-hero-principle {
  display:
    grid;

  max-width:
    650px;

  grid-template-columns:
    30px minmax(0,1fr);

  gap:
    10px;

  align-items:
    start;

  margin-top:
    19px;
}


.xp-event-detail-page
.xe-detail-hero-principle > span {
  display:
    grid;

  width:
    28px;

  height:
    28px;

  place-items:
    center;

  border-radius:
    50%;

  background:
    #E47D6B;

  color:
    #FFFFFF;

  font-size:
    10px;
}


.xp-event-detail-page
.xe-detail-hero-principle p {
  margin:
    0;

  color:
    rgba(250,247,241,.63);

  font-size:
    9.5px;

  line-height:
    1.48;
}


.xp-event-detail-page
.xe-detail-hero-principle strong {
  display:
    block;

  margin-bottom:
    2px;

  color:
    #FFFFFF;

  font-size:
    10px;
}


/* --------------------------------------------------------------------------
   HERO VISUAL
   -------------------------------------------------------------------------- */

.xp-event-detail-page
.xe-detail-hero-visual {
  position:
    relative;

  min-width:
    0;

  padding:
    0 0 25px;
}


.xp-event-detail-page
.xe-detail-image-frame {
  position:
    relative;

  overflow:
    hidden;

  aspect-ratio:
    1.04 / 1;

  border:
    1px solid rgba(255,255,255,.11);

  border-radius:
    22px;

  background:
    #E3ECE5;

  box-shadow:
    0 24px 58px rgba(0,0,0,.18);
}


.xp-event-detail-page
.xe-detail-image-frame::after {
  content:
    "";

  position:
    absolute;

  inset:
    0;

  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.06);

  pointer-events:
    none;
}


.xp-event-detail-page
.xe-detail-image-frame img {
  display:
    block;

  width:
    100%;

  height:
    100%;

  object-fit:
    cover;

  object-position:
    center;
}


.xp-event-detail-page
.xe-detail-hero-visual.is-fallback
.xe-detail-image-frame {
  background:
    linear-gradient(
      145deg,
      #F5F0E7,
      #E3ECE5
    );
}


.xp-event-detail-page
.xe-detail-hero-visual.is-fallback
.xe-detail-image-frame img {
  padding:
    15px;

  object-fit:
    contain;
}


.xp-event-detail-page
.xe-detail-visual-note {
  position:
    absolute;

  z-index:
    4;

  left:
    -18px;

  bottom:
    0;

  width:
    min(285px,75%);

  padding:
    13px 15px;

  border:
    1px solid rgba(10,52,52,.10);

  border-radius:
    13px;

  background:
    #FAF7F1;

  box-shadow:
    0 16px 36px rgba(0,0,0,.13);
}


.xp-event-detail-page
.xe-detail-visual-note span,
.xp-event-detail-page
.xe-detail-visual-note strong,
.xp-event-detail-page
.xe-detail-visual-note small {
  display:
    block;
}


.xp-event-detail-page
.xe-detail-visual-note span {
  color:
    #E47D6B;

  font-size:
    6.5px;

  font-weight:
    900;

  letter-spacing:
    .10em;
}


.xp-event-detail-page
.xe-detail-visual-note strong {
  margin-top:
    4px;

  color:
    #0A3434;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    16px;

  font-weight:
    500;

  line-height:
    1.12;
}


.xp-event-detail-page
.xe-detail-visual-note small {
  margin-top:
    3px;

  color:
    rgba(10,52,52,.58);

  font-size:
    8px;

  line-height:
    1.38;
}


/* --------------------------------------------------------------------------
   GLANCE STRIP
   -------------------------------------------------------------------------- */

.xp-event-detail-page
.xe-detail-glance {
  position:
    relative;

  z-index:
    5;

  width:
    min(1240px,calc(100% - 44px));

  margin:
    -1px auto 0;

  transform:
    translateY(20px);
}


.xp-event-detail-page
.xe-detail-glance-grid {
  display:
    grid;

  grid-template-columns:
    repeat(4,minmax(0,1fr));

  overflow:
    hidden;

  border:
    1px solid #E6DFD3;

  border-radius:
    16px;

  background:
    #FFFFFF;

  box-shadow:
    0 15px 34px rgba(10,52,52,.07);
}


.xp-event-detail-page
.xe-detail-glance-grid article {
  min-width:
    0;

  padding:
    14px 17px;

  border-right:
    1px solid #E6DFD3;
}


.xp-event-detail-page
.xe-detail-glance-grid article:last-child {
  border-right:
    0;
}


.xp-event-detail-page
.xe-detail-glance-grid span,
.xp-event-detail-page
.xe-detail-glance-grid strong {
  display:
    block;
}


.xp-event-detail-page
.xe-detail-glance-grid span {
  color:
    #B78943;

  font-size:
    6.5px;

  font-weight:
    900;

  letter-spacing:
    .11em;
}


.xp-event-detail-page
.xe-detail-glance-grid strong {
  overflow:
    hidden;

  margin-top:
    4px;

  color:
    #0A3434;

  font-size:
    10px;

  line-height:
    1.35;

  text-overflow:
    ellipsis;
}


/* --------------------------------------------------------------------------
   TABS
   -------------------------------------------------------------------------- */

.xp-event-detail-page
.xe-detail-tabs {
  display:
    flex;

  width:
    min(1240px,calc(100% - 44px));

  gap:
    6px;

  overflow-x:
    auto;

  margin:
    35px auto 0;

  padding:
    0;

  scrollbar-width:
    none;
}


.xp-event-detail-page
.xe-detail-tabs::-webkit-scrollbar {
  display:
    none;
}


.xp-event-detail-page
.xe-detail-tabs a {
  flex:
    0 0 auto;

  min-height:
    34px;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  padding:
    0 12px;

  border:
    1px solid #E6DFD3;

  border-radius:
    999px;

  background:
    #FFFFFF;

  color:
    #0A3434;

  font-size:
    8.5px;

  font-weight:
    850;
}


.xp-event-detail-page
.xe-detail-tabs a:hover,
.xp-event-detail-page
.xe-detail-tabs a:focus-visible {
  border-color:
    #E47D6B;

  color:
    #E47D6B;
}


/* --------------------------------------------------------------------------
   MAIN GRID
   -------------------------------------------------------------------------- */

.xp-event-detail-page
.xe-detail-layout {
  display:
    grid;

  width:
    min(1240px,calc(100% - 44px));

  grid-template-columns:
    minmax(0,1fr)
    350px;

  gap:
    20px;

  align-items:
    start;

  margin:
    14px auto 0;

  padding-bottom:
    76px;
}


.xp-event-detail-page
.xe-detail-main {
  display:
    grid;

  min-width:
    0;

  gap:
    14px;
}


.xp-event-detail-page
.xe-detail-card {
  scroll-margin-top:
    110px;

  padding:
    clamp(24px,2.5vw,31px);

  border:
    1px solid #E6DFD3;

  border-radius:
    18px;

  background:
    #FFFFFF;

  box-shadow:
    0 9px 30px rgba(10,52,52,.035);
}


.xp-event-detail-page
.xe-detail-card h2 {
  max-width:
    760px;

  margin:
    7px 0 12px;

  color:
    #0A3434;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    clamp(30px,3vw,40px);

  font-weight:
    500;

  line-height:
    1.03;

  letter-spacing:
    -1.2px;
}


.xp-event-detail-page
.xe-detail-card h2 em {
  display:
    block;

  color:
    #E47D6B;

  font-style:
    italic;

  font-weight:
    500;
}


.xp-event-detail-page
.xe-detail-lead {
  max-width:
    800px;

  margin:
    0;

  color:
    #58615D;

  font-size:
    13px;

  line-height:
    1.68;
}


.xp-event-detail-page
.xe-detail-prose {
  max-width:
    800px;

  margin-top:
    11px;

  padding-top:
    11px;

  border-top:
    1px solid #EEE8DE;

  color:
    #6A716D;

  font-size:
    11px;

  line-height:
    1.64;
}


/* --------------------------------------------------------------------------
   ROOM CONTEXT
   -------------------------------------------------------------------------- */

.xp-event-detail-page
.xe-room-context-grid {
  display:
    grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:
    8px;

  margin-top:
    21px;
}


.xp-event-detail-page
.xe-room-context-grid section {
  display:
    grid;

  grid-template-columns:
    31px minmax(0,1fr);

  gap:
    10px;

  min-height:
    126px;

  align-content:
    start;

  padding:
    14px;

  border:
    1px solid #E8E1D6;

  border-radius:
    13px;

  background:
    #FBF8F3;
}


.xp-event-detail-page
.xe-room-context-number {
  display:
    grid;

  width:
    29px;

  height:
    29px;

  place-items:
    center;

  border-radius:
    50%;

  background:
    #E3ECE5;

  color:
    #0A3434;

  font-size:
    7px;

  font-weight:
    900;
}


.xp-event-detail-page
.xe-room-context-grid strong {
  display:
    block;

  color:
    #0A3434;

  font-size:
    10.5px;
}


.xp-event-detail-page
.xe-room-context-grid p {
  margin:
    4px 0 0;

  color:
    #717772;

  font-size:
    9px;

  line-height:
    1.52;
}


.xp-event-detail-page
.xe-operating-model {
  display:
    flex;

  flex-wrap:
    wrap;

  align-items:
    center;

  gap:
    6px;

  margin-top:
    13px;

  padding:
    12px 14px;

  border-radius:
    12px;

  background:
    #0A3434;
}


.xp-event-detail-page
.xe-operating-model span {
  display:
    inline-flex;

  min-height:
    27px;

  align-items:
    center;

  padding:
    0 9px;

  border:
    1px solid rgba(255,255,255,.10);

  border-radius:
    999px;

  color:
    #FAF7F1;

  font-size:
    7.5px;

  font-weight:
    800;
}


.xp-event-detail-page
.xe-operating-model b {
  color:
    #E47D6B;

  font-size:
    10px;
}


/* --------------------------------------------------------------------------
   EXPERIENCE FLOW
   -------------------------------------------------------------------------- */

.xp-event-detail-page
.xe-flow-note {
  max-width:
    760px;

  margin:
    0 0 14px;

  color:
    #727873;

  font-size:
    10px;

  line-height:
    1.55;
}


.xp-event-detail-page
.xe-default-flow {
  display:
    grid;

  grid-template-columns:
    repeat(4,minmax(0,1fr));

  gap:
    7px;
}


.xp-event-detail-page
.xe-default-flow section {
  min-height:
    145px;

  padding:
    13px;

  border:
    1px solid #E6DFD3;

  border-radius:
    12px;

  background:
    #FBF8F3;
}


.xp-event-detail-page
.xe-default-flow section > span {
  display:
    grid;

  width:
    27px;

  height:
    27px;

  place-items:
    center;

  margin-bottom:
    20px;

  border-radius:
    50%;

  background:
    #0A3434;

  color:
    #FAF7F1;

  font-size:
    7px;

  font-weight:
    900;
}


.xp-event-detail-page
.xe-default-flow strong {
  color:
    #0A3434;

  font-size:
    10px;
}


.xp-event-detail-page
.xe-default-flow p {
  margin:
    5px 0 0;

  color:
    #747A76;

  font-size:
    8px;

  line-height:
    1.48;
}


.xp-event-detail-page
.xe-agenda {
  display:
    grid;
}


.xp-event-detail-page
.xe-agenda-row {
  display:
    grid;

  grid-template-columns:
    88px minmax(0,1fr);

  gap:
    16px;

  padding:
    15px 0;

  border-bottom:
    1px solid #ECE5DA;
}


.xp-event-detail-page
.xe-agenda-row:last-child {
  border-bottom:
    0;
}


.xp-event-detail-page
.xe-agenda-row time {
  color:
    #B78943;

  font-size:
    9px;

  font-weight:
    900;
}


.xp-event-detail-page
.xe-agenda-row strong {
  color:
    #0A3434;

  font-size:
    11px;
}


.xp-event-detail-page
.xe-agenda-row p {
  margin:
    4px 0 0;

  color:
    #747A76;

  font-size:
    9.5px;

  line-height:
    1.5;
}


/* --------------------------------------------------------------------------
   CONTINUITY CARD
   -------------------------------------------------------------------------- */

.xp-event-detail-page
.xe-continuity-card {
  display:
    grid;

  grid-template-columns:
    minmax(0,1fr)
    auto;

  gap:
    28px;

  align-items:
    center;

  padding:
    24px 26px;

  border-radius:
    17px;

  background:
    #0A3434;

  color:
    #FAF7F1;
}


.xp-event-detail-page
.xe-continuity-card h2 {
  max-width:
    640px;

  margin:
    6px 0 7px;

  color:
    #FAF7F1;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    27px;

  font-weight:
    500;

  line-height:
    1.04;
}


.xp-event-detail-page
.xe-continuity-card p {
  max-width:
    700px;

  margin:
    0;

  color:
    rgba(250,247,241,.66);

  font-size:
    9.5px;

  line-height:
    1.55;
}


.xp-event-detail-page
.xe-light-button {
  display:
    inline-flex;

  min-height:
    38px;

  align-items:
    center;

  justify-content:
    center;

  gap:
    8px;

  padding:
    0 14px;

  border-radius:
    999px;

  background:
    #FAF7F1;

  color:
    #0A3434;

  font-size:
    8px;

  font-weight:
    850;

  white-space:
    nowrap;
}


/* --------------------------------------------------------------------------
   VENUE
   -------------------------------------------------------------------------- */

.xp-event-detail-page
.xe-venue-address {
  max-width:
    760px;

  margin:
    0;

  color:
    #737975;

  font-size:
    11px;

  line-height:
    1.55;
}


.xp-event-detail-page
.xe-practical-grid {
  display:
    grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:
    7px;

  margin-top:
    18px;
}


.xp-event-detail-page
.xe-practical-grid > div {
  min-height:
    70px;

  padding:
    12px;

  border-radius:
    11px;

  background:
    #F8F5EF;
}


.xp-event-detail-page
.xe-practical-grid span,
.xp-event-detail-page
.xe-practical-grid strong {
  display:
    block;
}


.xp-event-detail-page
.xe-practical-grid span {
  color:
    #B78943;

  font-size:
    6.5px;

  font-weight:
    900;

  letter-spacing:
    .09em;
}


.xp-event-detail-page
.xe-practical-grid strong {
  margin-top:
    5px;

  color:
    #4A514E;

  font-size:
    9px;

  line-height:
    1.38;
}


.xp-event-detail-page
.xe-action-row {
  display:
    flex;

  flex-wrap:
    wrap;

  gap:
    7px;

  margin:
    16px 0 5px;
}


.xp-event-detail-page
.xe-secondary-button {
  display:
    inline-flex;

  min-height:
    34px;

  align-items:
    center;

  justify-content:
    center;

  padding:
    0 11px;

  border:
    1px solid #DCD5CA;

  border-radius:
    9px;

  background:
    #F3EFE8;

  color:
    #0A3434;

  font-size:
    8px;

  font-weight:
    850;

  cursor:
    pointer;
}


.xp-event-detail-page
.xe-policy-accordion {
  margin-top:
    10px;

  border-top:
    1px solid #E6DFD3;
}


.xp-event-detail-page
.xe-policy-accordion details {
  padding:
    11px 0;

  border-bottom:
    1px solid #E6DFD3;
}


.xp-event-detail-page
.xe-policy-accordion summary {
  cursor:
    pointer;

  color:
    #0A3434;

  font-size:
    9.5px;

  font-weight:
    850;
}


.xp-event-detail-page
.xe-policy-accordion details p {
  max-width:
    760px;

  margin:
    9px 0 1px;

  color:
    #737975;

  font-size:
    9.5px;

  line-height:
    1.58;
}


/* --------------------------------------------------------------------------
   BOOKING CARD
   -------------------------------------------------------------------------- */

.xp-event-detail-page
.xe-booking-card {
  position:
    sticky;

  top:
    98px;

  scroll-margin-top:
    110px;

  padding:
    19px;

  border:
    1px solid #E6DFD3;

  border-radius:
    18px;

  background:
    #FFFFFF;

  box-shadow:
    0 12px 36px rgba(10,52,52,.055);
}


.xp-event-detail-page
.xe-booking-context {
  padding-bottom:
    13px;

  border-bottom:
    1px solid #ECE5DA;
}


.xp-event-detail-page
.xe-booking-context > strong {
  display:
    block;

  margin-top:
    5px;

  color:
    #0A3434;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    18px;

  font-weight:
    500;

  line-height:
    1.12;
}


.xp-event-detail-page
.xe-booking-context p {
  margin:
    5px 0 0;

  color:
    #7A7E79;

  font-size:
    8px;

  line-height:
    1.45;
}


.xp-event-detail-page
.xe-booking-price {
  display:
    flex;

  align-items:
    baseline;

  gap:
    6px;

  padding:
    15px 0 13px;

  border-bottom:
    1px solid #ECE5DA;
}


.xp-event-detail-page
.xe-booking-price span,
.xp-event-detail-page
.xe-booking-price small {
  color:
    #858983;

  font-size:
    8px;
}


.xp-event-detail-page
.xe-booking-price strong {
  color:
    #0A3434;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    29px;

  font-weight:
    500;

  line-height:
    1;
}


.xp-event-detail-page
.xe-booking-meta {
  display:
    grid;

  gap:
    0;

  padding:
    10px 0 12px;
}


.xp-event-detail-page
.xe-booking-meta > div {
  display:
    grid;

  grid-template-columns:
    58px minmax(0,1fr);

  gap:
    8px;

  padding:
    5px 0;
}


.xp-event-detail-page
.xe-booking-meta span {
  color:
    #8A8D88;

  font-size:
    7px;
}


.xp-event-detail-page
.xe-booking-meta strong {
  color:
    #4B514E;

  font-size:
    8.5px;

  line-height:
    1.38;
}


.xp-event-detail-page
.xe-no-fee-note {
  display:
    grid;

  grid-template-columns:
    24px minmax(0,1fr);

  gap:
    8px;

  align-items:
    start;

  margin-bottom:
    12px;

  padding:
    10px;

  border-radius:
    10px;

  background:
    #E3ECE5;
}


.xp-event-detail-page
.xe-no-fee-note > span {
  display:
    grid;

  width:
    22px;

  height:
    22px;

  place-items:
    center;

  border-radius:
    50%;

  background:
    #0A3434;

  color:
    #FFFFFF;

  font-size:
    8px;
}


.xp-event-detail-page
.xe-no-fee-note p {
  margin:
    0;

  color:
    #5D6964;

  font-size:
    7.5px;

  line-height:
    1.45;
}


.xp-event-detail-page
.xe-no-fee-note strong {
  display:
    block;

  color:
    #0A3434;

  font-size:
    8px;
}


.xp-event-detail-page
.xe-ticket-heading {
  display:
    block;

  margin:
    3px 0 7px;

  color:
    #B78943;

  font-size:
    6.5px;

  font-weight:
    900;

  letter-spacing:
    .11em;
}


.xp-event-detail-page
.xe-ticket-option {
  margin-bottom:
    7px;

  padding:
    11px;

  border-radius:
    11px;
}


.xp-event-detail-page
.xe-ticket-option:has(input:checked) {
  border-color:
    #0A3434;

  box-shadow:
    0 0 0 2px rgba(10,52,52,.06);
}


.xp-event-detail-page
.xe-ticket-option input {
  width:
    auto;
}


.xp-event-detail-page
.xe-ticket-option strong {
  color:
    #0A3434;

  font-size:
    8.5px;
}


.xp-event-detail-page
.xe-ticket-option small {
  margin-top:
    2px;

  color:
    #7E827D;

  font-size:
    7px;
}


.xp-event-detail-page
.xe-ticket-option em {
  display:
    block;

  margin-top:
    4px;

  color:
    #2F6D4F;

  font-size:
    6.8px;

  font-style:
    normal;

  font-weight:
    800;
}


.xp-event-detail-page
.xe-ticket-option b {
  color:
    #0A3434;

  font-size:
    9px;
}


.xp-event-detail-page
.xe-quantity-label {
  margin-top:
    10px;

  color:
    #0A3434;

  font-size:
    8px;

  font-weight:
    850;
}


.xp-event-detail-page
.xe-quantity-label select {
  min-height:
    39px;

  margin-top:
    6px;

  padding:
    8px 10px;

  border-radius:
    9px;

  font-size:
    8.5px;
}


.xp-event-detail-page
.xe-booking-live-summary {
  margin:
    11px 0;

  padding:
    10px;

  border-radius:
    10px;
}


.xp-event-detail-page
.xe-booking-live-summary span,
.xp-event-detail-page
.xe-booking-live-summary strong {
  font-size:
    7.5px;
}


.xp-event-detail-page
.xe-booking-primary {
  min-height:
    42px;

  margin-top:
    2px;

  border-radius:
    10px;

  background:
    #0A3434;

  font-size:
    9px;
}


.xp-event-detail-page
.xe-booking-primary:hover,
.xp-event-detail-page
.xe-booking-primary:focus-visible {
  background:
    #164E49;
}


.xp-event-detail-page
.xe-booking-trust {
  margin:
    8px 0 0;

  color:
    #898B86;

  font-size:
    6.8px;

  line-height:
    1.5;
}


.xp-event-detail-page
.xe-booking-assurances {
  display:
    grid;

  gap:
    7px;

  margin-top:
    13px;

  padding-top:
    12px;

  border-top:
    1px solid #ECE5DA;
}


.xp-event-detail-page
.xe-booking-assurances span {
  display:
    grid;

  gap:
    1px;

  padding-left:
    10px;

  border-left:
    2px solid #E3ECE5;

  color:
    #858983;

  font-size:
    7px;

  line-height:
    1.4;
}


.xp-event-detail-page
.xe-booking-assurances b {
  color:
    #0A3434;

  font-size:
    7.5px;
}


.xp-event-detail-page
.xe-booking-actions {
  display:
    flex;

  justify-content:
    space-between;

  gap:
    10px;

  margin-top:
    13px;

  padding-top:
    11px;

  border-top:
    1px solid #ECE5DA;
}


.xp-event-detail-page
.xe-booking-actions a,
.xp-event-detail-page
.xe-booking-actions button {
  border:
    0;

  background:
    transparent;

  color:
    #0A3434;

  font-size:
    7.5px;

  font-weight:
    850;

  cursor:
    pointer;
}


/* --------------------------------------------------------------------------
   TABLET
   -------------------------------------------------------------------------- */

@media (max-width: 980px) {

  .xp-event-detail-page
  .xe-detail-shell {
    grid-template-columns:
      minmax(0,1fr)
      minmax(320px,.72fr);

    gap:
      28px;
  }


  .xp-event-detail-page
  .xe-detail-hero h1 {
    font-size:
      clamp(42px,5.6vw,54px)
      !important;
  }


  .xp-event-detail-page
  .xe-detail-glance-grid {
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }


  .xp-event-detail-page
  .xe-detail-glance-grid article:nth-child(2) {
    border-right:
      0;
  }


  .xp-event-detail-page
  .xe-detail-glance-grid article:nth-child(-n+2) {
    border-bottom:
      1px solid #E6DFD3;
  }


  .xp-event-detail-page
  .xe-detail-layout {
    grid-template-columns:
      1fr;
  }


  .xp-event-detail-page
  .xe-booking-card {
    position:
      static;

    order:
      -1;
  }


  .xp-event-detail-page
  .xe-default-flow {
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

}


/* --------------------------------------------------------------------------
   NARROW TABLET / MOBILE
   -------------------------------------------------------------------------- */

@media (max-width: 760px) {

  .xp-event-detail-page
  .xe-detail-hero {
    padding:
      32px 0 18px;
  }


  .xp-event-detail-page
  .xe-detail-shell {
    width:
      min(100% - 28px,1240px);

    grid-template-columns:
      1fr;

    gap:
      24px;
  }


  .xp-event-detail-page
  .xe-detail-hero h1 {
    font-size:
      clamp(38px,10.8vw,48px)
      !important;

    line-height:
      1 !important;

    letter-spacing:
      -1.8px !important;
  }


  .xp-event-detail-page
  .xe-detail-hero-question {
    font-size:
      14px;
  }


  .xp-event-detail-page
  .xe-detail-image-frame {
    aspect-ratio:
      1.2 / 1;
  }


  .xp-event-detail-page
  .xe-detail-visual-note {
    left:
      10px;

    width:
      min(265px,76%);
  }


  .xp-event-detail-page
  .xe-detail-glance,
  .xp-event-detail-page
  .xe-detail-tabs,
  .xp-event-detail-page
  .xe-detail-layout {
    width:
      min(100% - 28px,1240px);
  }


  .xp-event-detail-page
  .xe-detail-glance {
    transform:
      translateY(14px);
  }


  .xp-event-detail-page
  .xe-detail-tabs {
    margin-top:
      28px;
  }


  .xp-event-detail-page
  .xe-detail-layout {
    margin-top:
      12px;

    padding-bottom:
      58px;
  }


  .xp-event-detail-page
  .xe-room-context-grid {
    grid-template-columns:
      1fr;
  }


  .xp-event-detail-page
  .xe-room-context-grid section {
    min-height:
      0;
  }


  .xp-event-detail-page
  .xe-continuity-card {
    grid-template-columns:
      1fr;

    gap:
      15px;
  }


  .xp-event-detail-page
  .xe-light-button {
    width:
      100%;
  }


  .xp-event-detail-page
  .xe-practical-grid {
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

}


/* --------------------------------------------------------------------------
   SMALL MOBILE
   -------------------------------------------------------------------------- */

@media (max-width: 520px) {

  .xp-event-detail-page
  .xe-detail-glance-grid {
    grid-template-columns:
      1fr;
  }


  .xp-event-detail-page
  .xe-detail-glance-grid article {
    border-right:
      0 !important;

    border-bottom:
      1px solid #E6DFD3;
  }


  .xp-event-detail-page
  .xe-detail-glance-grid article:last-child {
    border-bottom:
      0;
  }


  .xp-event-detail-page
  .xe-detail-hero-facts {
    display:
      grid;

    grid-template-columns:
      1fr 1fr;
  }


  .xp-event-detail-page
  .xe-detail-hero-facts > span {
    justify-content:
      center;
  }


  .xp-event-detail-page
  .xe-default-flow {
    grid-template-columns:
      1fr;
  }


  .xp-event-detail-page
  .xe-default-flow section {
    min-height:
      0;
  }


  .xp-event-detail-page
  .xe-practical-grid {
    grid-template-columns:
      1fr;
  }


  .xp-event-detail-page
  .xe-operating-model {
    display:
      grid;

    grid-template-columns:
      1fr auto 1fr;

    text-align:
      center;
  }


  .xp-event-detail-page
  .xe-operating-model span:nth-of-type(3),
  .xp-event-detail-page
  .xe-operating-model span:nth-of-type(4) {
    grid-column:
      auto;
  }

}










/* ==========================================================================
   XTRIBE V60.8.5.48 — EVENT DETAIL READABILITY UPGRADE

   Purpose:
   Keep the V47 layout and H1 scale, but increase supporting text sizes
   throughout the event-detail page for comfortable desktop/tablet reading.

   Append this file to the VERY END of:
   assets/css/xtribe-public.css
   ========================================================================== */


/* --------------------------------------------------------------------------
   HERO SUPPORTING COPY
   -------------------------------------------------------------------------- */

.xp-event-detail-page
.xe-back-link {
  font-size:
    12px !important;
}


.xp-event-detail-page
.xe-eyebrow {
  font-size:
    10px !important;
}


.xp-event-detail-page
.xe-detail-hero-question {
  font-size:
    16px !important;

  line-height:
    1.62 !important;
}


.xp-event-detail-page
.xe-detail-hero-facts > span {
  min-height:
    38px !important;

  padding:
    0 13px !important;

  font-size:
    10.5px !important;
}


.xp-event-detail-page
.xe-detail-hero-facts small {
  font-size:
    7.5px !important;
}


.xp-event-detail-page
.xe-detail-hero-principle p {
  font-size:
    11.5px !important;

  line-height:
    1.55 !important;
}


.xp-event-detail-page
.xe-detail-hero-principle strong {
  font-size:
    12px !important;
}


/* --------------------------------------------------------------------------
   HERO VISUAL NOTE
   -------------------------------------------------------------------------- */

.xp-event-detail-page
.xe-detail-visual-note span {
  font-size:
    7.5px !important;
}


.xp-event-detail-page
.xe-detail-visual-note strong {
  font-size:
    18px !important;
}


.xp-event-detail-page
.xe-detail-visual-note small {
  font-size:
    9.5px !important;

  line-height:
    1.45 !important;
}


/* --------------------------------------------------------------------------
   GLANCE STRIP
   -------------------------------------------------------------------------- */

.xp-event-detail-page
.xe-detail-glance-grid span {
  font-size:
    7.5px !important;
}


.xp-event-detail-page
.xe-detail-glance-grid strong {
  font-size:
    11.5px !important;

  line-height:
    1.42 !important;
}


/* --------------------------------------------------------------------------
   SECTION TABS
   -------------------------------------------------------------------------- */

.xp-event-detail-page
.xe-detail-tabs a {
  min-height:
    37px !important;

  padding:
    0 14px !important;

  font-size:
    10px !important;
}


/* --------------------------------------------------------------------------
   MAIN CONTENT
   -------------------------------------------------------------------------- */

.xp-event-detail-page
.xe-detail-lead {
  font-size:
    14px !important;

  line-height:
    1.72 !important;
}


.xp-event-detail-page
.xe-detail-prose {
  font-size:
    12.5px !important;

  line-height:
    1.68 !important;
}


/* --------------------------------------------------------------------------
   ROOM CONTEXT CARDS
   -------------------------------------------------------------------------- */

.xp-event-detail-page
.xe-room-context-number {
  font-size:
    8px !important;
}


.xp-event-detail-page
.xe-room-context-grid strong {
  font-size:
    12px !important;
}


.xp-event-detail-page
.xe-room-context-grid p {
  margin-top:
    5px !important;

  font-size:
    10.5px !important;

  line-height:
    1.58 !important;
}


.xp-event-detail-page
.xe-operating-model span {
  min-height:
    30px !important;

  padding:
    0 10px !important;

  font-size:
    9px !important;
}


.xp-event-detail-page
.xe-operating-model b {
  font-size:
    12px !important;
}


/* --------------------------------------------------------------------------
   EXPERIENCE FLOW
   -------------------------------------------------------------------------- */

.xp-event-detail-page
.xe-flow-note {
  font-size:
    11.5px !important;

  line-height:
    1.62 !important;
}


.xp-event-detail-page
.xe-default-flow section > span {
  font-size:
    8px !important;
}


.xp-event-detail-page
.xe-default-flow strong {
  font-size:
    11.5px !important;
}


.xp-event-detail-page
.xe-default-flow p {
  font-size:
    10px !important;

  line-height:
    1.55 !important;
}


.xp-event-detail-page
.xe-agenda-row time {
  font-size:
    10.5px !important;
}


.xp-event-detail-page
.xe-agenda-row strong {
  font-size:
    12px !important;
}


.xp-event-detail-page
.xe-agenda-row p {
  font-size:
    10.5px !important;

  line-height:
    1.58 !important;
}


/* --------------------------------------------------------------------------
   CONTINUITY CARD
   -------------------------------------------------------------------------- */

.xp-event-detail-page
.xe-continuity-card p {
  font-size:
    11px !important;

  line-height:
    1.62 !important;
}


.xp-event-detail-page
.xe-light-button {
  min-height:
    41px !important;

  padding:
    0 16px !important;

  font-size:
    9.5px !important;
}


/* --------------------------------------------------------------------------
   VENUE & PRACTICAL DETAILS
   -------------------------------------------------------------------------- */

.xp-event-detail-page
.xe-venue-address {
  font-size:
    12.5px !important;

  line-height:
    1.6 !important;
}


.xp-event-detail-page
.xe-practical-grid span {
  font-size:
    7.5px !important;
}


.xp-event-detail-page
.xe-practical-grid strong {
  font-size:
    10.5px !important;

  line-height:
    1.45 !important;
}


.xp-event-detail-page
.xe-secondary-button {
  min-height:
    37px !important;

  padding:
    0 13px !important;

  font-size:
    9.5px !important;
}


.xp-event-detail-page
.xe-policy-accordion summary {
  font-size:
    11px !important;
}


.xp-event-detail-page
.xe-policy-accordion details p {
  font-size:
    11px !important;

  line-height:
    1.64 !important;
}


/* --------------------------------------------------------------------------
   BOOKING SIDEBAR
   -------------------------------------------------------------------------- */

.xp-event-detail-page
.xe-booking-context > strong {
  font-size:
    19px !important;
}


.xp-event-detail-page
.xe-booking-context p {
  font-size:
    10px !important;

  line-height:
    1.52 !important;
}


.xp-event-detail-page
.xe-booking-price span,
.xp-event-detail-page
.xe-booking-price small {
  font-size:
    9.5px !important;
}


.xp-event-detail-page
.xe-booking-meta span {
  font-size:
    8px !important;
}


.xp-event-detail-page
.xe-booking-meta strong {
  font-size:
    10px !important;

  line-height:
    1.45 !important;
}


.xp-event-detail-page
.xe-no-fee-note p {
  font-size:
    9px !important;

  line-height:
    1.52 !important;
}


.xp-event-detail-page
.xe-no-fee-note strong {
  font-size:
    9.5px !important;
}


.xp-event-detail-page
.xe-ticket-heading {
  font-size:
    7.5px !important;
}


.xp-event-detail-page
.xe-ticket-option strong {
  font-size:
    10px !important;
}


.xp-event-detail-page
.xe-ticket-option small {
  font-size:
    8.5px !important;

  line-height:
    1.45 !important;
}


.xp-event-detail-page
.xe-ticket-option em {
  font-size:
    8px !important;
}


.xp-event-detail-page
.xe-ticket-option b {
  font-size:
    10.5px !important;
}


.xp-event-detail-page
.xe-quantity-label {
  font-size:
    9.5px !important;
}


.xp-event-detail-page
.xe-quantity-label select {
  min-height:
    41px !important;

  font-size:
    10px !important;
}


.xp-event-detail-page
.xe-booking-live-summary span,
.xp-event-detail-page
.xe-booking-live-summary strong {
  font-size:
    9px !important;
}


.xp-event-detail-page
.xe-booking-primary {
  min-height:
    44px !important;

  font-size:
    10.5px !important;
}


.xp-event-detail-page
.xe-booking-trust {
  font-size:
    8.5px !important;

  line-height:
    1.55 !important;
}


.xp-event-detail-page
.xe-booking-assurances span {
  font-size:
    8.5px !important;

  line-height:
    1.48 !important;
}


.xp-event-detail-page
.xe-booking-assurances b {
  font-size:
    9px !important;
}


.xp-event-detail-page
.xe-booking-actions a,
.xp-event-detail-page
.xe-booking-actions button {
  font-size:
    9px !important;
}


/* --------------------------------------------------------------------------
   MOBILE — retain compactness but never become tiny
   -------------------------------------------------------------------------- */

@media (max-width: 760px) {

  .xp-event-detail-page
  .xe-detail-hero-question {
    font-size:
      15px !important;
  }


  .xp-event-detail-page
  .xe-detail-lead {
    font-size:
      13.5px !important;
  }


  .xp-event-detail-page
  .xe-room-context-grid p,
  .xp-event-detail-page
  .xe-default-flow p,
  .xp-event-detail-page
  .xe-policy-accordion details p {
    font-size:
      11px !important;
  }


  .xp-event-detail-page
  .xe-booking-context p,
  .xp-event-detail-page
  .xe-booking-trust,
  .xp-event-detail-page
  .xe-booking-assurances span {
    font-size:
      9.5px !important;
  }

}


/* ==========================================================================
   XTRIBE V60.8.5.54 — EVENTS NOMENCLATURE & SEMANTIC ALIGNMENT

   Append this to the VERY END of:
       assets/css/xtribe-public.css

   This intentionally leaves the older V38 selectors in place. The updated
   view no longer uses <em> or .xp-kicker for the Events listing, and these
   selectors provide the site-wide XTribe heading/eyebrow treatment.
   ========================================================================== */


/* --------------------------------------------------------------------------
   SITE-WIDE EYEBROW CONVENTION
   -------------------------------------------------------------------------- */

.xp-events-list-page
.xp-events-eyebrow {
  display:
    inline-block;

  color:
    #E47D6B;

  font-size:
    10px;

  font-weight:
    900;

  line-height:
    1.2;

  letter-spacing:
    .13em;

  text-transform:
    uppercase;
}


.xp-events-list-page
.xp-events-format-card
.xp-events-eyebrow,
.xp-events-list-page
.xp-events-trust-v2
.xp-events-eyebrow {
  color:
    #E7B66E;
}


/* --------------------------------------------------------------------------
   HEADING ACCENT CONVENTION
   Other refined XTribe pages use a child <span>, not <em>, for the coral
   continuation line.
   -------------------------------------------------------------------------- */

.xp-events-list-page
.xp-events-hero-copy h1 > span {
  display:
    block;

  color:
    #E47D6B;

  font-style:
    normal;

  font-weight:
    500;
}


.xp-events-list-page
.xp-events-results-head h2 > span {
  display:
    block;

  color:
    #E47D6B;

  font-style:
    normal;

  font-weight:
    500;
}


/* --------------------------------------------------------------------------
   SEMANTIC STRONG LABELS
   -------------------------------------------------------------------------- */

.xp-events-list-page
.xp-events-promise strong {
  display:
    block;

  color:
    #0A3434;

  font-size:
    9.5px;

  font-weight:
    850;
}


.xp-events-list-page
.xp-events-format-card
.xp-events-format-number {
  display:
    grid;

  width:
    25px;

  height:
    25px;

  place-items:
    center;

  border-radius:
    50%;

  background:
    rgba(255,255,255,.08);

  color:
    #E47D6B;

  font-size:
    8px;

  font-weight:
    900;
}


.xp-events-list-page
.xp-event-facts strong {
  display:
    block;

  margin-bottom:
    2px;

  color:
    #A97736;

  font-size:
    7px;

  font-weight:
    900;

  letter-spacing:
    .07em;

  text-transform:
    uppercase;
}


.xp-events-list-page
.xp-events-trust-points strong {
  display:
    block;

  margin-bottom:
    3px;

  color:
    #FAF7F1;

  font-size:
    9.5px;

  font-weight:
    850;
}


/* --------------------------------------------------------------------------
   SMALL RHYTHM REFINEMENTS
   -------------------------------------------------------------------------- */

.xp-events-list-page
.xp-events-filter-intro
.xp-events-eyebrow {
  margin-bottom:
    1px;
}


.xp-events-list-page
.xp-events-results-head
.xp-events-eyebrow {
  margin-bottom:
    2px;
}


.xp-events-list-page
.xp-events-format-card
.xp-events-eyebrow {
  margin-bottom:
    2px;
}


/* Keep the participant-facing four-step format readable after copy refinement. */
.xp-events-list-page
.xp-events-format-card li {
  align-items:
    start;
}


.xp-events-list-page
.xp-events-format-card li > span:last-child {
  padding-top:
    3px;
}


/* --------------------------------------------------------------------------
   MOBILE
   -------------------------------------------------------------------------- */

@media (max-width: 700px) {

  .xp-events-list-page
  .xp-events-eyebrow {
    font-size:
      9px;
  }


  .xp-events-list-page
  .xp-events-results-head h2 > span {
    display:
      block;
  }

}


/* ==========================================================================
   XTRIBE V60.8.5.55 — PUBLIC HERO HEADING STANDARD

   PURPOSE
   -------
   One typography contract for the five principal public landing-page heroes:
     - Homepage
     - Experiences
     - Community
     - How XTribe Works
     - Our Story

   Append to the VERY END of:
       assets/css/xtribe-public.css

   IMPORTANT
   ---------
   <em> is no longer used as a visual styling hook for these headings.
   Visual accent lines use:
       .xh-public-hero-accent
   ========================================================================== */


/* --------------------------------------------------------------------------
   DESIGN TOKENS
   Homepage V59.2.5 is the reference scale.
   -------------------------------------------------------------------------- */

:root {
  --xh-public-hero-h1-size:
    clamp(52px, 4.9vw, 72px);

  --xh-public-hero-h1-line-height:
    .98;

  --xh-public-hero-h1-letter-spacing:
    -3.2px;

  --xh-public-hero-accent:
    #E47D6B;
}


/* --------------------------------------------------------------------------
   SHARED HERO H1
   -------------------------------------------------------------------------- */

.xh-public-hero-title {
  font-family:
    var(--xh-serif, Georgia, "Times New Roman", serif) !important;

  font-size:
    var(--xh-public-hero-h1-size) !important;

  font-weight:
    500 !important;

  line-height:
    var(--xh-public-hero-h1-line-height) !important;

  letter-spacing:
    var(--xh-public-hero-h1-letter-spacing) !important;

  text-wrap:
    balance;

  overflow-wrap:
    normal;

  word-break:
    normal;
}


/* Every deliberate hero line is explicit in markup. */
.xh-public-hero-title
.xh-public-hero-line {
  display:
    block;
}


/* Visual emphasis is a presentation class, not semantic <em>. */
.xh-public-hero-title
.xh-public-hero-accent {
  color:
    var(--xh-public-hero-accent) !important;

  font-style:
    normal !important;

  font-weight:
    500 !important;
}


/* Shared accent treatment for non-H1 section continuation lines. */
.xh-heading-accent {
  color:
    var(--xh-public-hero-accent) !important;

  font-style:
    normal !important;
}


/* Community principles previously used <em> as a block accent. */
.xc-principles-intro
.xh-heading-accent {
  display:
    block;
}


/* --------------------------------------------------------------------------
   PAGE-SPECIFIC WIDTHS / MARGINS
   Width is intentionally allowed to vary with sentence length.
   Typography does not.
   -------------------------------------------------------------------------- */

.xh-home-page
.xh-hero
.xh-public-hero-title {
  max-width:
    650px;
}


.xp-events-list-page
.xp-events-hero-copy
.xh-public-hero-title {
  max-width:
    780px;
}


.xc-community-page
.xc-hero
.xh-public-hero-title {
  max-width:
    760px;
}


.xh-how-page
.xhw-hero
.xh-public-hero-title {
  max-width:
    820px;
}


.xh-our-story-page
.xs-hero
.xh-public-hero-title {
  max-width:
    790px;
}


/* --------------------------------------------------------------------------
   NEUTRALISE OLD PAGE-SPECIFIC ACCENT RULES
   These older selectors can remain in the large historical stylesheet.
   V55 is the final authority because this patch is appended last.
   -------------------------------------------------------------------------- */

.xhw-hero
.xh-public-hero-title
.xh-public-hero-accent {
  font-style:
    normal !important;
}


.xc-hero
.xh-public-hero-title
.xh-public-hero-accent {
  font-style:
    normal !important;
}


.xp-events-hero-copy
.xh-public-hero-title
.xh-public-hero-accent {
  font-style:
    normal !important;
}


/* --------------------------------------------------------------------------
   TABLET
   -------------------------------------------------------------------------- */

@media (max-width: 1024px) {

  :root {
    --xh-public-hero-h1-size:
      clamp(48px, 6.2vw, 62px);

    --xh-public-hero-h1-letter-spacing:
      -2.8px;
  }

}


/* --------------------------------------------------------------------------
   MOBILE
   -------------------------------------------------------------------------- */

@media (max-width: 760px) {

  :root {
    --xh-public-hero-h1-size:
      clamp(41px, 11.5vw, 50px);

    --xh-public-hero-h1-line-height:
      1;

    --xh-public-hero-h1-letter-spacing:
      -2.25px;
  }


  .xh-public-hero-title {
    text-wrap:
      balance;
  }

}


/* --------------------------------------------------------------------------
   SMALL MOBILE
   -------------------------------------------------------------------------- */

@media (max-width: 420px) {

  :root {
    --xh-public-hero-h1-size:
      clamp(39px, 11vw, 46px);

    --xh-public-hero-h1-letter-spacing:
      -2px;
  }

}










/* ==========================================================================
   XTRIBE V60.8.5.56 — HERO H1 + HEADER THEME CASCADE FIX

   Install AFTER V60.8.5.55.
   Append this file to the VERY END of:
       assets/css/xtribe-public.css

   Do not replace header.php.
   The header problem is CSS cascade, not header markup.
   ========================================================================== */


/* ==========================================================================
   1. GLOBAL HEADER / ANNOUNCEMENT PALETTE
   Restore the established XTribe navigation colours and prevent page-specific
   hero/accent rules from leaking into the site header.
   ========================================================================== */

html body .xh-announcement {
  background:
    #0A3434 !important;

  color:
    #FFFFFF !important;
}


html body .xh-announcement a {
  color:
    #EFBD70 !important;
}


html body .xp-site-header {
  background:
    rgba(250, 247, 241, .96) !important;

  border-bottom:
    1px solid rgba(10, 52, 52, .09) !important;
}


html body .xp-site-header
.xp-primary-navigation a,
html body .xp-site-header
.xp-header-login {
  color:
    #0A3434 !important;
}


html body .xp-site-header
.xp-primary-navigation a:hover,
html body .xp-site-header
.xp-primary-navigation a:focus-visible,
html body .xp-site-header
.xp-header-login:hover,
html body .xp-site-header
.xp-header-login:focus-visible {
  color:
    #E47D6B !important;
}


html body .xp-site-header
.xp-header-cta {
  border-color:
    #E47D6B !important;

  background:
    #E47D6B !important;

  color:
    #FFFFFF !important;
}


html body .xp-site-header
.xp-header-cta:hover,
html body .xp-site-header
.xp-header-cta:focus-visible {
  border-color:
    #D96F5D !important;

  background:
    #D96F5D !important;

  color:
    #FFFFFF !important;
}


/* ==========================================================================
   2. ONE H1 SIZE FOR PRIMARY PUBLIC MARKETING PAGES

   A fixed desktop value is deliberate.
   Using different vw-based clamps could still render different apparent sizes
   at different desktop widths.

   Covered:
   - Homepage
   - Experiences
   - Community
   - How XTribe Works
   - Our Story
   ========================================================================== */

:root {
  --xh-primary-public-h1:
    64px;

  --xh-primary-public-h1-line-height:
    .98;

  --xh-primary-public-h1-letter-spacing:
    -2.8px;
}


html body
.xh-public-hero-title {
  font-family:
    var(--xh-serif, Georgia, "Times New Roman", serif)
    !important;

  font-size:
    var(--xh-primary-public-h1)
    !important;

  font-weight:
    500 !important;

  line-height:
    var(--xh-primary-public-h1-line-height)
    !important;

  letter-spacing:
    var(--xh-primary-public-h1-letter-spacing)
    !important;

  font-style:
    normal !important;

  text-wrap:
    balance;

  overflow-wrap:
    normal;

  word-break:
    normal;
}


/* Explicit page selectors ensure old page-specific !important rules
   cannot regain control. */

html body.xh-home-page
.xh-hero
.xh-public-hero-title,

html body.xp-events-list-page
.xp-events-hero-copy
.xh-public-hero-title,

html body.xc-community-page
.xc-hero
.xh-public-hero-title,

html body.xh-how-page
.xhw-hero
.xh-public-hero-title,

html body.xh-our-story-page
.xs-hero
.xh-public-hero-title {
  font-size:
    var(--xh-primary-public-h1)
    !important;

  line-height:
    var(--xh-primary-public-h1-line-height)
    !important;

  letter-spacing:
    var(--xh-primary-public-h1-letter-spacing)
    !important;

  font-weight:
    500 !important;
}


/* ==========================================================================
   3. HERO COLOUR CONTRACT

   PRIMARY LINE:
   inherits the correct hero H1 colour.

   ACCENT LINE:
   coral.

   This is intentionally stronger than historical selectors such as:
     .xh-home-page .xh-hero h1 span
     .xhw-hero h1 span
     .xp-events-hero-copy h1 > span
     #xs-story-title span
   ========================================================================== */


/* Every deliberate line is a block and is NEVER automatically coral. */
html body
.xh-public-hero-title
> .xh-public-hero-line {
  display:
    block !important;

  color:
    inherit !important;

  font-style:
    normal !important;

  font-weight:
    500 !important;
}


/* Only an explicitly marked accent line becomes coral. */
html body
.xh-public-hero-title
> .xh-public-hero-line.xh-public-hero-accent {
  color:
    #E47D6B !important;

  font-style:
    normal !important;

  font-weight:
    500 !important;
}


/* Light-background hero H1 base colour. */
html body.xh-home-page
.xh-public-hero-title,

html body.xp-events-list-page
.xh-public-hero-title,

html body.xc-community-page
.xh-public-hero-title,

html body.xh-how-page
.xh-public-hero-title {
  color:
    #0A3434 !important;
}


/* Dark-background Our Story hero base colour. */
html body.xh-our-story-page
.xs-hero
.xh-public-hero-title {
  color:
    #FAF7F1 !important;
}


/* ==========================================================================
   4. NON-H1 VISUAL ACCENT STANDARD

   Use .xh-heading-accent instead of <em> when the purpose is purely visual.
   ========================================================================== */

html body
.xh-heading-accent {
  color:
    #E47D6B !important;

  font-style:
    normal !important;

  font-weight:
    inherit;
}


/* ==========================================================================
   5. BREAKPOINTS — STILL IDENTICAL ACROSS THE FIVE PAGES
   ========================================================================== */


/* Compact desktop / tablet landscape */
@media (max-width: 1199px) {

  :root {
    --xh-primary-public-h1:
      58px;

    --xh-primary-public-h1-letter-spacing:
      -2.5px;
  }

}


/* Tablet */
@media (max-width: 900px) {

  :root {
    --xh-primary-public-h1:
      52px;

    --xh-primary-public-h1-letter-spacing:
      -2.25px;
  }

}


/* Mobile */
@media (max-width: 640px) {

  :root {
    --xh-primary-public-h1:
      44px;

    --xh-primary-public-h1-line-height:
      1;

    --xh-primary-public-h1-letter-spacing:
      -1.9px;
  }

}


/* Small mobile */
@media (max-width: 420px) {

  :root {
    --xh-primary-public-h1:
      40px;

    --xh-primary-public-h1-letter-spacing:
      -1.7px;
  }

}










/* ==========================================================================
   XTRIBE V60.8.5.57 — OUR STORY H1 SIZE SPECIFICITY FIX

   Install AFTER V60.8.5.56.
   Append to the VERY END of:
       assets/css/xtribe-public.css

   Why this is needed:
   Historical Our Story CSS uses #xs-story-title with !important.
   An ID selector outranks the shared V56 class selector, so the page could
   still render at up to 72px on desktop instead of the 64px site standard.
   ========================================================================== */


/* DESKTOP — same as all other primary public-page H1s */
html body.xh-our-story-page
.xs-hero
#xs-story-title.xh-public-hero-title {
  font-size:
    64px !important;

  line-height:
    .98 !important;

  letter-spacing:
    -2.8px !important;

  font-weight:
    500 !important;
}


/* COMPACT DESKTOP */
@media (max-width: 1199px) {

  html body.xh-our-story-page
  .xs-hero
  #xs-story-title.xh-public-hero-title {
    font-size:
      58px !important;

    line-height:
      .98 !important;

    letter-spacing:
      -2.5px !important;
  }

}


/* TABLET */
@media (max-width: 900px) {

  html body.xh-our-story-page
  .xs-hero
  #xs-story-title.xh-public-hero-title {
    font-size:
      52px !important;

    line-height:
      .98 !important;

    letter-spacing:
      -2.25px !important;
  }

}


/* MOBILE */
@media (max-width: 640px) {

  html body.xh-our-story-page
  .xs-hero
  #xs-story-title.xh-public-hero-title {
    font-size:
      44px !important;

    line-height:
      1 !important;

    letter-spacing:
      -1.9px !important;
  }

}


/* SMALL MOBILE */
@media (max-width: 420px) {

  html body.xh-our-story-page
  .xs-hero
  #xs-story-title.xh-public-hero-title {
    font-size:
      40px !important;

    line-height:
      1 !important;

    letter-spacing:
      -1.7px !important;
  }

}


/* Preserve the intended colour system. */
html body.xh-our-story-page
.xs-hero
#xs-story-title.xh-public-hero-title
> .xh-public-hero-line {
  color:
    #FAF7F1 !important;

  font-style:
    normal !important;
}


html body.xh-our-story-page
.xs-hero
#xs-story-title.xh-public-hero-title
> .xh-public-hero-line.xh-public-hero-accent {
  color:
    #E47D6B !important;

  font-style:
    normal !important;
}










/* ==========================================================================
   XTRIBE V60.8.5.58 — GLOBAL PUBLIC H1 DESIGN SYSTEM

   Append to the VERY END of:
       assets/css/xtribe-public.css

   This replaces arbitrary page-by-page H1 sizing with three sanctioned
   typography roles.

   PRIMARY HERO       64px desktop
   EDITORIAL DETAIL   56px desktop
   UTILITY / ACTION   48px desktop
   ========================================================================== */

:root {
  --xh-h1-primary: 64px;
  --xh-h1-editorial: 56px;
  --xh-h1-utility: 48px;

  --xh-h1-primary-lh: .98;
  --xh-h1-editorial-lh: .99;
  --xh-h1-utility-lh: 1.02;

  --xh-h1-primary-track: -2.8px;
  --xh-h1-editorial-track: -2.2px;
  --xh-h1-utility-track: -1.55px;
}


/* ==========================================================================
   1. DEFAULT H1 = UTILITY / ACTION

   This is intentionally stronger than the historical:
       .xp-main h1 { ... 80px !important; }

   It fixes auth/account/checkout/support and any unclassified functional
   public page without requiring a separate rule for every view.
   ========================================================================== */

html body
.xp-main.xp-main
h1 {
  font-family:
    var(--xh-serif, Georgia, "Times New Roman", serif) !important;

  font-size:
    var(--xh-h1-utility) !important;

  font-weight:
    500 !important;

  line-height:
    var(--xh-h1-utility-lh) !important;

  letter-spacing:
    var(--xh-h1-utility-track) !important;

  font-style:
    normal !important;

  text-wrap:
    balance;

  overflow-wrap:
    normal;

  word-break:
    normal;
}


/* ==========================================================================
   2. PRIMARY PUBLIC / MARKETING HERO H1 = 64PX
   ========================================================================== */

html body .xp-main.xp-main .xh-hero h1,
html body .xp-main.xp-main .xp-events-hero-copy h1,
html body .xp-main.xp-main .xc-hero h1,
html body .xp-main.xp-main .xhw-hero h1,
html body .xp-main.xp-main .xs-hero h1,
html body .xp-main.xp-main .xh-contact-page .xc-hero h1,
html body .xp-main.xp-main .xh-help-hero h1,
html body .xp-main.xp-main .xh-legal-hero h1,
html body .xp-main.xp-main .xh-sitemap-hero h1,
html body .xp-main.xp-main .xbi-hero h1,
html body .xp-main.xp-main .xp-blog-hero h1,
html body .xp-main.xp-main .xp-hero h1,
html body .xp-main.xp-main .xts-hero h1,
html body .xp-main.xp-main .xp-event-showcase__copy h1 {
  font-family:
    var(--xh-serif, Georgia, "Times New Roman", serif) !important;

  font-size:
    var(--xh-h1-primary) !important;

  font-weight:
    500 !important;

  line-height:
    var(--xh-h1-primary-lh) !important;

  letter-spacing:
    var(--xh-h1-primary-track) !important;

  font-style:
    normal !important;
}


/* Historical Our Story ID selector used !important and therefore requires
   an ID-specific final authority. */
html body
.xp-main.xp-main
#xs-story-title {
  font-size:
    var(--xh-h1-primary) !important;

  line-height:
    var(--xh-h1-primary-lh) !important;

  letter-spacing:
    var(--xh-h1-primary-track) !important;

  font-weight:
    500 !important;
}


/* Generic database/CMS content heroes are also primary-page heroes. */
html body
.xp-main.xp-main
.xp-content-hero h1,
html body
.xp-main.xp-main
.xh-trust-hero h1 {
  font-size:
    var(--xh-h1-primary) !important;

  line-height:
    var(--xh-h1-primary-lh) !important;

  letter-spacing:
    var(--xh-h1-primary-track) !important;

  font-weight:
    500 !important;
}


/* ==========================================================================
   3. EDITORIAL / DETAIL H1 = 56PX
   ========================================================================== */

html body
.xp-main.xp-main
.xp-event-detail-page
.xe-detail-hero h1,

html body
.xp-main.xp-main
.xp-article-head h1,

html body
.xp-main.xp-main
.xp-help-detail > header h1 {
  font-family:
    var(--xh-serif, Georgia, "Times New Roman", serif) !important;

  font-size:
    var(--xh-h1-editorial) !important;

  font-weight:
    500 !important;

  line-height:
    var(--xh-h1-editorial-lh) !important;

  letter-spacing:
    var(--xh-h1-editorial-track) !important;
}


/* ==========================================================================
   4. UTILITY / ACCOUNT / AUTH H1 = 48PX

   These selectors make the intent explicit even though the default H1 rule
   already uses the utility token.
   ========================================================================== */

html body .xp-main.xp-main .xp-auth-copy h1,
html body .xp-main.xp-main .xp-account-head h1,
html body .xp-main.xp-main .xp-account-head-v2 h1,
html body .xp-main.xp-main .xp-account-head-v3 h1,
html body .xp-main.xp-main .xp-checkout-head h1,
html body .xp-main.xp-main .xp-checkout-head--enhanced h1,
html body .xp-main.xp-main .xp-payment-review-card h1,
html body .xp-main.xp-main .xp-ticket-event h1,
html body .xp-main.xp-main .xp-auth-card h1 {
  font-family:
    var(--xh-serif, Georgia, "Times New Roman", serif) !important;

  font-size:
    var(--xh-h1-utility) !important;

  font-weight:
    500 !important;

  line-height:
    var(--xh-h1-utility-lh) !important;

  letter-spacing:
    var(--xh-h1-utility-track) !important;
}


/* ==========================================================================
   5. VISUAL ACCENT STANDARD
   ========================================================================== */

html body
h1
.xh-heading-accent,
html body
h1
.xh-public-hero-accent {
  color:
    #E47D6B !important;

  font-style:
    normal !important;

  font-weight:
    500 !important;
}


/* A visual heading continuation should be a block when explicitly marked. */
html body
h1
.xh-heading-accent {
  display:
    block;
}


/* Do not let historical broad `h1 span` selectors colour ordinary lines. */
html body
.xh-public-hero-title
> .xh-public-hero-line {
  color:
    inherit !important;

  font-style:
    normal !important;
}


html body
.xh-public-hero-title
> .xh-public-hero-line.xh-public-hero-accent {
  color:
    #E47D6B !important;
}


/* ==========================================================================
   6. RESPONSIVE TOKENS
   ========================================================================== */

@media (max-width: 1199px) {
  :root {
    --xh-h1-primary: 58px;
    --xh-h1-editorial: 52px;
    --xh-h1-utility: 46px;

    --xh-h1-primary-track: -2.5px;
    --xh-h1-editorial-track: -2px;
    --xh-h1-utility-track: -1.4px;
  }
}


@media (max-width: 900px) {
  :root {
    --xh-h1-primary: 52px;
    --xh-h1-editorial: 48px;
    --xh-h1-utility: 44px;
  }
}


@media (max-width: 640px) {
  :root {
    --xh-h1-primary: 44px;
    --xh-h1-editorial: 40px;
    --xh-h1-utility: 38px;

    --xh-h1-primary-lh: 1;
    --xh-h1-editorial-lh: 1.01;
    --xh-h1-utility-lh: 1.03;

    --xh-h1-primary-track: -1.9px;
    --xh-h1-editorial-track: -1.55px;
    --xh-h1-utility-track: -1.2px;
  }
}


@media (max-width: 420px) {
  :root {
    --xh-h1-primary: 40px;
    --xh-h1-editorial: 38px;
    --xh-h1-utility: 36px;
  }
}










/* ==========================================================================
   XTRIBE V60.8.5.59 — AUTH EYEBROW COLOUR FIX

   Append to the VERY END of:
       assets/css/xtribe-public.css

   The historical .xp-kicker uses the gold token globally.
   On light authentication pages, the XTribe eyebrow convention is coral.
   ========================================================================== */


/* Sign in / Register / Forgot password / Reset password */
html body
.xp-main.xp-main
.xp-auth-shell
.xp-auth-copy
> .xp-kicker {
  color:
    #E47D6B !important;
}


/* Preserve the established small uppercase eyebrow treatment. */
html body
.xp-main.xp-main
.xp-auth-shell
.xp-auth-copy
> .xp-kicker {
  font-size:
    11px !important;

  font-weight:
    900 !important;

  line-height:
    1.2;

  letter-spacing:
    .12em !important;

  text-transform:
    uppercase;
}










/* ==========================================================================
   XTRIBE V60.8.5.60 — AUTH EYEBROW STANDARD

   Append to the VERY END of:
       assets/css/xtribe-public.css

   Light authentication pages use the XTribe coral eyebrow treatment.
   ========================================================================== */

html body
.xp-main.xp-main
.xp-auth-shell
.xp-auth-copy
.xp-kicker {
  color:
    #E47D6B !important;

  font-size:
    11px !important;

  font-weight:
    900 !important;

  line-height:
    1.2 !important;

  letter-spacing:
    .12em !important;

  text-transform:
    uppercase !important;
}


/* Safety override for page-specific or historical gold kicker rules. */
html body
.xp-main.xp-main
.xp-auth-shell
.xp-auth-copy
> span.xp-kicker {
  color:
    #E47D6B !important;
}










/* ==========================================================================
   XTRIBE V60.8.5.63 — EVENTS CURATED RELEVANCE ALIGNMENT

   Append to the VERY END of:
       assets/css/xtribe-public.css
   ========================================================================== */


/* --------------------------------------------------------------------------
   HERO: REDUCE DECORATION, MAKE THE CURATION MECHANISM THE PROOF
   -------------------------------------------------------------------------- */

.xp-events-list-page
.xp-events-hero-copy > p {
  max-width: 680px;
  font-size: 15px;
  line-height: 1.62;
}


.xp-events-list-page
.xp-events-hero-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 22px;
  color: #0A3434;
  font-size: 12px;
  font-weight: 850;
  text-decoration: none;
}


.xp-events-list-page
.xp-events-hero-cta:hover {
  color: #E47D6B;
}


.xp-events-list-page
.xp-events-curation-card h2 {
  max-width: 330px;
}


.xp-events-list-page
.xp-events-curation-card li {
  align-items: start;
}


.xp-events-list-page
.xp-events-curation-card li > span:last-child {
  display: grid;
  gap: 3px;
}


.xp-events-list-page
.xp-events-curation-card li strong {
  color: #FAF7F1;
  font-size: 10.5px;
  font-weight: 800;
}


.xp-events-list-page
.xp-events-curation-card li small {
  color: rgba(250,247,241,.68);
  font-size: 9px;
  line-height: 1.45;
}


/* --------------------------------------------------------------------------
   FILTERS: DISCOVERY SUPPORT, NOT THE HERO OF THE PAGE
   -------------------------------------------------------------------------- */

.xp-events-list-page
.xp-events-filter-section {
  padding-top: 20px;
}


.xp-events-list-page
.xp-events-filter-disclosure {
  overflow: hidden;
  border: 1px solid #E6DFD3;
  border-radius: 15px;
  background: #FFFFFF;
  box-shadow: 0 8px 24px rgba(25,54,51,.035);
}


.xp-events-list-page
.xp-events-filter-disclosure > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 14px 16px;
  cursor: pointer;
  list-style: none;
}


.xp-events-list-page
.xp-events-filter-disclosure > summary::-webkit-details-marker {
  display: none;
}


.xp-events-list-page
.xp-events-filter-summary-copy {
  display: grid;
  gap: 3px;
}


.xp-events-list-page
.xp-events-filter-summary-copy > strong {
  color: #214E4B;
  font-family: var(--xh-serif,Georgia,"Times New Roman",serif);
  font-size: 16px;
  font-weight: 500;
}


.xp-events-list-page
.xp-events-filter-summary-action {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: #214E4B;
  font-size: 10px;
  font-weight: 850;
}


.xp-events-list-page
.xp-events-filter-summary-action b {
  display: grid;
  width: 25px;
  height: 25px;
  place-items: center;
  border-radius: 50%;
  background: #E3ECE5;
  color: #0A3434;
  font-size: 17px;
  font-weight: 500;
  transition: transform .18s ease;
}


.xp-events-list-page
.xp-events-filter-disclosure[open]
.xp-events-filter-summary-action b {
  transform: rotate(45deg);
}


.xp-events-list-page
.xp-events-filter-v3 {
  grid-template-columns:
    minmax(230px,1.45fr)
    minmax(130px,.65fr)
    minmax(165px,.8fr)
    minmax(140px,.64fr)
    auto;

  padding: 13px 16px 16px;
  border: 0;
  border-top: 1px solid #EEE8DE;
  border-radius: 0;
  box-shadow: none;
}


/* --------------------------------------------------------------------------
   RESULTS: THE QUESTION COMES BEFORE THE CALENDAR
   -------------------------------------------------------------------------- */

.xp-events-list-page
.xp-events-results-head {
  padding-top: 34px;
}


.xp-events-list-page
.xp-events-results-head h2 {
  max-width: 760px;
  font-size: 42px;
}


.xp-events-list-page
.xp-events-results-head p {
  max-width: 720px;
  font-size: 11px;
  line-height: 1.58;
}


/* --------------------------------------------------------------------------
   CARDS: RELEVANCE-FIRST INFORMATION ARCHITECTURE
   -------------------------------------------------------------------------- */

.xp-events-list-page
.xp-event-card-v3 h3 {
  margin-bottom: 10px !important;
}


.xp-events-list-page
.xp-event-room-reason {
  display: grid;
  gap: 4px;
  min-height: 65px;
}


.xp-events-list-page
.xp-event-room-reason > span {
  color: #E47D6B;
  font-size: 7px;
  font-weight: 900;
  letter-spacing: .08em;
}


.xp-events-list-page
.xp-event-room-reason p {
  display: -webkit-box;
  overflow: hidden;
  margin: 0 !important;
  color: #5F6965 !important;
  font-size: 10px !important;
  font-weight: 600;
  line-height: 1.48 !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}


.xp-events-list-page
.xp-event-facts-v3 {
  grid-template-columns: repeat(2,minmax(0,1fr));
  margin-top: 13px;
}


.xp-events-list-page
.xp-event-facts-v3 > span {
  white-space: normal;
  line-height: 1.35;
}


.xp-events-list-page
.xp-event-facts-v3 strong {
  color: #214E4B;
  font-size: 7px;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}


/* --------------------------------------------------------------------------
   FINAL STRIP: POSITIVE PROOF, NOT A LIST OF DEFENSIVE DISCLAIMERS
   -------------------------------------------------------------------------- */

.xp-events-list-page
.xp-events-curation-strip-intro {
  max-width: 430px;
  margin: 10px 0 0;
  color: rgba(250,247,241,.65);
  font-size: 10px;
  line-height: 1.5;
}


.xp-events-list-page
.xp-events-curation-points {
  grid-template-columns: repeat(2,minmax(0,1fr));
}


.xp-events-list-page
.xp-events-curation-points > span {
  min-height: 86px;
  font-size: 9px;
}


.xp-events-list-page
.xp-events-curation-points strong {
  color: #FAF7F1;
  font-size: 10px;
}


/* --------------------------------------------------------------------------
   RESPONSIVE
   -------------------------------------------------------------------------- */

@media (max-width: 1050px) {

  .xp-events-list-page
  .xp-events-filter-v3 {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .xp-events-list-page
  .xp-events-filter-actions {
    grid-column: 2;
  }

}


@media (max-width: 700px) {

  .xp-events-list-page
  .xp-events-filter-disclosure > summary {
    align-items: flex-start;
  }

  .xp-events-list-page
  .xp-events-filter-summary-action {
    flex: 0 0 auto;
  }

  .xp-events-list-page
  .xp-events-filter-v3 {
    grid-template-columns: 1fr;
  }

  .xp-events-list-page
  .xp-events-filter-actions {
    grid-column: auto;
  }

  .xp-events-list-page
  .xp-events-results-head h2 {
    font-size: 36px;
  }

  .xp-events-list-page
  .xp-events-curation-points {
    grid-template-columns: 1fr;
  }

}


@media (max-width: 460px) {

  .xp-events-list-page
  .xp-events-filter-disclosure > summary {
    gap: 12px;
    padding: 13px;
  }

  .xp-events-list-page
  .xp-events-filter-summary-copy > strong {
    font-size: 14px;
  }

  .xp-events-list-page
  .xp-events-filter-summary-action {
    font-size: 0;
  }

  .xp-events-list-page
  .xp-events-filter-v3 {
    padding-inline: 13px;
  }

}










/* ==========================================================================
   XTRIBE V60.8.5.64 — HOW IT WORKS CURATED RELEVANCE ALIGNMENT

   Append to the VERY END of:
       assets/css/xtribe-public.css
   ========================================================================== */


/* --------------------------------------------------------------------------
   HERO
   -------------------------------------------------------------------------- */

.xh-how-page
.xhw-hero-v3
.xhw-hero-lead {
  max-width: 700px;
}


.xh-how-page
.xhw-operating-card-v3 h2 {
  max-width: 360px;
}


.xh-how-page
.xhw-operating-flow-v3 span {
  display: grid;
  gap: 3px;
}


.xh-how-page
.xhw-operating-flow-v3 span strong {
  color: #FAF7F1;
  font-size: 10px;
  font-weight: 800;
}


.xh-how-page
.xhw-operating-flow-v3 span small {
  color: rgba(250,247,241,.66);
  font-size: 9px;
  line-height: 1.35;
}


/* --------------------------------------------------------------------------
   DESIGN RULE
   -------------------------------------------------------------------------- */

.xh-how-page
.xhw-belief-v3 h2 span {
  color: #E47D6B;
  font-style: normal;
}


/* --------------------------------------------------------------------------
   INTRODUCTION FRAMEWORK
   -------------------------------------------------------------------------- */

.xh-how-page
.xhw-introduction-v3 {
  padding: 70px 0 74px;
  background: #F5F0E7;
}


.xh-how-page
.xhw-introduction-heading-v3 h2 span {
  display: block;
  color: #E47D6B;
  font-style: normal;
}


.xh-how-page
.xhw-introduction-grid-v3 {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 12px;
}


.xh-how-page
.xhw-introduction-grid-v3 article {
  min-height: 190px;
  padding: 22px;
  border: 1px solid rgba(10,52,52,.09);
  border-radius: 16px;
  background: #FFFFFF;
}


.xh-how-page
.xhw-introduction-grid-v3 article > span {
  color: #E47D6B;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .1em;
}


.xh-how-page
.xhw-introduction-grid-v3 h3 {
  margin: 15px 0 8px;
  color: #0A3434;
  font-family: var(--xh-serif,Georgia,"Times New Roman",serif);
  font-size: 24px;
  font-weight: 500;
  line-height: 1.04;
}


.xh-how-page
.xhw-introduction-grid-v3 p {
  margin: 0;
  color: #68716D;
  font-size: 10px;
  line-height: 1.6;
}


/* --------------------------------------------------------------------------
   ONE FOUR-PART OPERATING MODEL
   -------------------------------------------------------------------------- */

.xh-how-page
.xhw-step-list-v3 {
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 12px;
}


.xh-how-page
.xhw-step-v3 {
  min-height: 285px;
}


/* --------------------------------------------------------------------------
   CURATION PROOF
   -------------------------------------------------------------------------- */

.xh-how-page
.xhw-curation-v3 {
  padding: 68px 0 72px;
  background: #0A3434;
}


.xh-how-page
.xhw-curation-grid-v3 {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 12px;
}


.xh-how-page
.xhw-curation-grid-v3 article {
  min-height: 205px;
  padding: 22px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 16px;
  background: rgba(255,255,255,.045);
}


.xh-how-page
.xhw-curation-grid-v3 article > span {
  color: #E47D6B;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .1em;
}


.xh-how-page
.xhw-curation-grid-v3 h3 {
  margin: 14px 0 8px;
  color: #FAF7F1;
  font-family: var(--xh-serif,Georgia,"Times New Roman",serif);
  font-size: 23px;
  font-weight: 500;
  line-height: 1.06;
}


.xh-how-page
.xhw-curation-grid-v3 p {
  margin: 0;
  color: rgba(250,247,241,.66);
  font-size: 10px;
  line-height: 1.6;
}


.xh-how-page
.xhw-curation-rule-v3 {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 28px;
  margin-top: 22px;
  padding-top: 20px;
  border-top: 1px solid rgba(255,255,255,.12);
}


.xh-how-page
.xhw-curation-rule-v3 strong {
  color: #FAF7F1;
  font-family: var(--xh-serif,Georgia,"Times New Roman",serif);
  font-size: 24px;
  font-weight: 500;
}


.xh-how-page
.xhw-curation-rule-v3 span {
  max-width: 500px;
  color: rgba(250,247,241,.66);
  font-size: 10px;
  line-height: 1.5;
}


/* --------------------------------------------------------------------------
   CONTINUITY / FINAL
   -------------------------------------------------------------------------- */

.xh-how-page
.xhw-community-v3 {
  padding-block: 50px;
}


.xh-how-page
.xhw-final-v3 {
  padding-block: 52px;
}


/* --------------------------------------------------------------------------
   RESPONSIVE
   -------------------------------------------------------------------------- */

@media (max-width: 1050px) {

  .xh-how-page
  .xhw-introduction-grid-v3,

  .xh-how-page
  .xhw-step-list-v3,

  .xh-how-page
  .xhw-curation-grid-v3 {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

}


@media (max-width: 700px) {

  .xh-how-page
  .xhw-introduction-v3,

  .xh-how-page
  .xhw-curation-v3 {
    padding-block: 52px;
  }

  .xh-how-page
  .xhw-introduction-grid-v3,

  .xh-how-page
  .xhw-step-list-v3,

  .xh-how-page
  .xhw-curation-grid-v3 {
    grid-template-columns: 1fr;
  }

  .xh-how-page
  .xhw-introduction-grid-v3 article,

  .xh-how-page
  .xhw-step-v3,

  .xh-how-page
  .xhw-curation-grid-v3 article {
    min-height: 0;
  }

  .xh-how-page
  .xhw-curation-rule-v3 {
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
  }

}










/* ==========================================================================
   XTRIBE V60.8.5.67 — ACCOUNT PARTICIPANT JOURNEY ALIGNMENT

   Append to the VERY END of:
       assets/css/xtribe-public.css

   Account priority:
   Next room -> Context -> Contribution -> Continuity -> Bookings -> Benefits
   ========================================================================== */


/* ==========================================================================
   1. HEADER
   ========================================================================== */

.xp-account-dashboard-v4 {
  padding-top:
    26px;
}


.xp-account-dashboard-v4
.xp-account-head-v4 {
  padding-bottom:
    15px !important;
}


.xp-account-dashboard-v4
.xp-account-head-v4 h1 {
  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif) !important;

  font-size:
    var(--xh-h1-utility,48px) !important;

  font-weight:
    500 !important;

  line-height:
    1.01 !important;

  letter-spacing:
    -1.55px !important;
}


.xp-account-dashboard-v4
.xp-account-head-v4 p {
  max-width:
    720px;
}


/* Use XTribe coral for light-page eyebrow labels rather than legacy gold. */
.xp-account-dashboard-v4
.xp-kicker {
  color:
    #E47D6B !important;
}


/* ==========================================================================
   2. OVERVIEW
   ========================================================================== */

.xp-account-dashboard-v4
.xp-account-overview-v4 {
  margin-bottom:
    34px !important;
}


.xp-account-dashboard-v4
.xp-account-overview-v4 > div {
  padding:
    14px 17px !important;
}


/* ==========================================================================
   3. PRIMARY PRIORITY
   ========================================================================== */

.xp-account-dashboard-v4
.xp-account-section-heading-v4 h2 span {
  display:
    block;

  color:
    #E47D6B;

  font-style:
    normal;
}


.xp-account-dashboard-v4
.xp-account-priority-v4 {
  margin-top:
    0;
}


.xp-account-dashboard-v4
.xp-account-priority-grid-v4 {
  display:
    grid;

  grid-template-columns:
    minmax(300px,.82fr)
    minmax(0,1.18fr);

  gap:
    14px;

  align-items:
    stretch;
}


/* NEXT ROOM */
.xp-account-dashboard-v4
.xp-account-next-v4 {
  display:
    block;
}


.xp-account-dashboard-v4
.xp-account-next-card-v4 {
  height:
    100%;

  padding:
    20px;

  border:
    1px solid rgba(10,52,52,.13);

  border-radius:
    17px;

  background:
    #FFFFFF;

  box-shadow:
    0 10px 30px rgba(10,52,52,.055);
}


.xp-account-dashboard-v4
.xp-account-next-label-v4 {
  display:
    flex;

  align-items:
    center;

  justify-content:
    space-between;

  gap:
    12px;
}


.xp-account-dashboard-v4
.xp-account-next-main-v4 {
  display:
    grid;

  grid-template-columns:
    58px minmax(0,1fr);

  gap:
    14px;

  align-items:
    start;

  margin-top:
    14px;
}


.xp-account-dashboard-v4
.xp-account-next-main-v4
.xp-account-next-date {
  margin:
    0;
}


.xp-account-dashboard-v4
.xp-account-next-card-v4 h3 {
  margin:
    1px 0 7px;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    25px;

  font-weight:
    500;

  line-height:
    1.04;
}


.xp-account-dashboard-v4
.xp-account-next-meta-v4 {
  align-items:
    baseline;
}


.xp-account-dashboard-v4
.xp-account-next-meta-v4 > span {
  max-width:
    260px;

  color:
    var(--xp-muted);

  font-size:
    9px;

  line-height:
    1.45;
}


/* CONTINUITY */
.xp-account-dashboard-v4
.xp-account-continuity-v4 {
  padding:
    21px;

  border:
    1px solid rgba(10,52,52,.10);

  border-radius:
    17px;

  background:
    #F5F0E7;
}


.xp-account-dashboard-v4
.xp-account-continuity-v4 > h3 {
  max-width:
    560px;

  margin:
    7px 0 8px;

  color:
    #0A3434;

  font-family:
    var(--xh-serif,Georgia,"Times New Roman",serif);

  font-size:
    27px;

  font-weight:
    500;

  line-height:
    1.03;

  letter-spacing:
    -.8px;
}


.xp-account-dashboard-v4
.xp-account-continuity-v4 > p {
  max-width:
    600px;

  margin:
    0 0 15px;

  color:
    #68716D;

  font-size:
    10px;

  line-height:
    1.58;
}


.xp-account-dashboard-v4
.xp-account-continuity-links-v4 {
  display:
    grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:
    8px;
}


.xp-account-dashboard-v4
.xp-account-continuity-links-v4 > a {
  display:
    flex;

  align-items:
    center;

  justify-content:
    space-between;

  gap:
    12px;

  min-height:
    74px;

  padding:
    11px 12px;

  border:
    1px solid rgba(10,52,52,.09);

  border-radius:
    11px;

  background:
    rgba(255,255,255,.78);

  text-decoration:
    none;
}


.xp-account-dashboard-v4
.xp-account-continuity-links-v4 > a:hover {
  border-color:
    rgba(228,125,107,.45);

  background:
    #FFFFFF;
}


.xp-account-dashboard-v4
.xp-account-continuity-links-v4 span {
  display:
    grid;

  gap:
    3px;
}


.xp-account-dashboard-v4
.xp-account-continuity-links-v4 small {
  color:
    #E47D6B;

  font-size:
    7px;

  font-weight:
    900;

  letter-spacing:
    .08em;
}


.xp-account-dashboard-v4
.xp-account-continuity-links-v4 strong {
  color:
    #214E4B;

  font-size:
    10px;

  font-weight:
    750;

  line-height:
    1.35;
}


.xp-account-dashboard-v4
.xp-account-continuity-links-v4 b {
  color:
    #E47D6B;

  font-size:
    14px;

  font-weight:
    500;
}


/* ==========================================================================
   4. BOOKINGS
   ========================================================================== */

.xp-account-dashboard-v4
.xp-account-bookings {
  margin-top:
    38px;
}


.xp-account-dashboard-v4
.xp-account-empty-v4 {
  max-width:
    none;
}


/* ==========================================================================
   5. SECONDARY ACCOUNT UTILITIES
   ========================================================================== */

.xp-account-dashboard-v4
.xp-account-secondary-v4 {
  margin-top:
    38px;
}


.xp-account-dashboard-v4
.xp-account-tools-v4 {
  display:
    grid !important;

  grid-template-columns:
    repeat(5,minmax(0,1fr)) !important;

  gap:
    9px !important;

  max-width:
    none !important;

  margin:
    0 !important;

  padding:
    0 !important;
}


.xp-account-dashboard-v4
.xp-account-tool-v4 {
  display:
    grid !important;

  grid-template-columns:
    27px minmax(0,1fr) 16px !important;

  gap:
    8px !important;

  align-items:
    start !important;

  min-height:
    115px !important;

  padding:
    13px !important;

  border-radius:
    13px !important;

  box-shadow:
    none !important;
}


.xp-account-dashboard-v4
.xp-account-tool-v4 h3 {
  font-size:
    13px !important;
}


.xp-account-dashboard-v4
.xp-account-tool-v4 p {
  font-size:
    9px !important;
}


/* ==========================================================================
   6. RESPONSIVE
   ========================================================================== */

@media (max-width: 1100px) {

  .xp-account-dashboard-v4
  .xp-account-priority-grid-v4 {
    grid-template-columns:
      1fr;
  }

  .xp-account-dashboard-v4
  .xp-account-tools-v4 {
    grid-template-columns:
      repeat(3,minmax(0,1fr)) !important;
  }

}


@media (max-width: 760px) {

  .xp-account-dashboard-v4
  .xp-account-continuity-links-v4 {
    grid-template-columns:
      1fr;
  }

  .xp-account-dashboard-v4
  .xp-account-tools-v4 {
    grid-template-columns:
      repeat(2,minmax(0,1fr)) !important;
  }

}


@media (max-width: 620px) {

  .xp-account-dashboard-v4
  .xp-account-head-v4 h1 {
    font-size:
      var(--xh-h1-utility,38px) !important;
  }

  .xp-account-dashboard-v4
  .xp-account-next-main-v4 {
    grid-template-columns:
      52px minmax(0,1fr);
  }

  .xp-account-dashboard-v4
  .xp-account-tools-v4 {
    grid-template-columns:
      1fr !important;
  }

}










/* ==========================================================================
   XTRIBE V60.8.5.69 — ACCOUNT ACTIONABLE BOOKING PAYMENT FIX

   Append to the VERY END of:
       assets/css/xtribe-public.css

   V69 assumes the V67 account dashboard/CSS has already been installed.
   ========================================================================== */


/* Four genuine secondary utilities remain after removing the obsolete
   Membership & Benefits card. */
.xp-account-dashboard-v4
.xp-account-tools-v4 {
  grid-template-columns:
    repeat(4,minmax(0,1fr)) !important;
}


/* The attention state is now reserved for a genuinely payable upcoming
   event booking, not any historical non-paid order. */
.xp-account-dashboard-v4
.xp-account-overview-v4
.has-attention {
  background:
    #FFF4EE !important;
}


@media (max-width: 980px) {

  .xp-account-dashboard-v4
  .xp-account-tools-v4 {
    grid-template-columns:
      repeat(2,minmax(0,1fr)) !important;
  }

}


@media (max-width: 620px) {

  .xp-account-dashboard-v4
  .xp-account-tools-v4 {
    grid-template-columns:
      1fr !important;
  }

}
