/*
 * Editorial design system, scoped to body.luxe.
 * The shared layout (template/header.php) adds that class and loads this file.
 * Layout language: large images with room to breathe, serif display headlines,
 * small letterspaced eyebrows, thin rules instead of card chrome.
 */

body.luxe{
	--lx-ivory:#faf7f2;
	--lx-sand:#f1ece4;
	--lx-navy:#091b2a;
	--lx-burgundy:#802446;
	--lx-red:#d41e3d;
	--lx-ink:#091b2a;
	--lx-muted:#6b6f76;
	--lx-rule:rgba(9,27,42,.14);
	--lx-rule-light:rgba(255,255,255,.22);
	--lx-ph:#e2ddd5;
	--lx-ph-ink:#7a736a;
	--lx-serif:"Cormorant Garamond","Cormorant",Garamond,"Times New Roman",serif;
	--lx-sans:Montserrat,sans-serif;
	--lx-nav-h:72px;

	background:var(--lx-ivory);
	color:var(--lx-ink);
	font-weight:400;
	line-height:1.7;
}

/* ---------- type ---------- */
body.luxe h1,
body.luxe h2,
body.luxe h3{
	font-family:var(--lx-serif);
	font-weight:500;
	letter-spacing:0;
	color:var(--lx-ink);
	margin:0;
}
body.luxe .lx-display{
	font-size:clamp(44px,6.2vw,80px);
	line-height:1.02;
	letter-spacing:-.005em;
}
body.luxe .lx-h2{
	font-size:clamp(34px,4vw,52px);
	line-height:1.08;
}
body.luxe .lx-h2 em,
body.luxe .lx-display em,
body.luxe .lx-statement em{
	font-style:italic;
	font-weight:400;
}
body.luxe .lx-h3{
	font-size:clamp(26px,2.4vw,32px);
	line-height:1.15;
}
body.luxe .lx-statement{
	font-family:var(--lx-serif);
	font-weight:500;
	font-size:clamp(36px,4.6vw,60px);
	line-height:1.08;
	text-wrap:balance;
}
body.luxe .lx-eyebrow{
	display:block;
	font-family:var(--lx-sans);
	font-size:12px;
	font-weight:600;
	letter-spacing:.18em;
	text-transform:uppercase;
	color:var(--lx-burgundy);
	margin-bottom:1.1rem;
}
body.luxe .lx-eyebrow--light{color:rgba(255,255,255,.72);}
body.luxe .lx-lead, body.luxe .lx-lead p{
	font-size:1.2rem;
	line-height:1.65;
	font-weight:400;
	color:var(--lx-ink);
}
body.luxe p{font-size:17px;}
body.luxe .lx-measure{max-width:34em;}
body.luxe .lx-muted{color:var(--lx-muted);font-weight:400;}
body.luxe .lx-small{font-size:15px;}

/* ---------- sections ---------- */
body.luxe .lx-section{padding:112px 0;}
body.luxe .lx-section--tight{padding:80px 0;}
body.luxe .lx-section--sand{background:var(--lx-sand);}
body.luxe .lx-section--navy{background:var(--lx-navy);color:#fff;}
body.luxe .lx-section--navy h1,
body.luxe .lx-section--navy h2,
body.luxe .lx-section--navy h3,
body.luxe .lx-section--navy p,
body.luxe .lx-section--navy .lx-lead{color:#fff;}
body.luxe .lx-section--navy .lx-muted{color:rgba(255,255,255,.7);}
body.luxe .lx-rule{
	border:0;
	border-top:1px solid var(--lx-rule);
	opacity:1;
	margin:0;
}
body.luxe .lx-section--navy .lx-rule{border-color:var(--lx-rule-light);}
body.luxe .lx-center{text-align:center;}
body.luxe .lx-center .lx-measure{margin-left:auto;margin-right:auto;}

/* ---------- buttons and links ---------- */
body.luxe .lx-btn{
	display:inline-block;
	font-family:var(--lx-sans);
	font-size:13px;
	font-weight:600;
	letter-spacing:.16em;
	text-transform:uppercase;
	line-height:1;
	padding:18px 34px;
	border-radius:2px;
	border:1px solid var(--lx-burgundy);
	background:var(--lx-burgundy);
	color:#fff;
	transition:background .18s ease,border-color .18s ease,color .18s ease;
}
body.luxe button.lx-btn{cursor:pointer;-webkit-appearance:none;appearance:none;}
body.luxe .lx-btn:hover,
body.luxe .lx-btn:focus{
	background:var(--lx-red);
	border-color:var(--lx-red);
	color:#fff;
}
body.luxe .lx-btn--light{
	background:#fff;
	border-color:#fff;
	color:var(--lx-navy);
}
body.luxe .lx-btn--light:hover,
body.luxe .lx-btn--light:focus{
	background:var(--lx-ivory);
	border-color:var(--lx-ivory);
	color:var(--lx-burgundy);
}
body.luxe .lx-btn--compact{
	padding:14px 22px;
	font-size:12px;
	letter-spacing:.14em;
}
body.luxe .lx-link{
	display:inline-block;
	font-family:var(--lx-sans);
	font-size:13px;
	font-weight:600;
	letter-spacing:.16em;
	text-transform:uppercase;
	color:var(--lx-burgundy);
	padding-bottom:6px;
	border-bottom:1px solid currentColor;
	transition:color .18s ease;
}
body.luxe .lx-link:hover{color:var(--lx-red);}
body.luxe .lx-link--light{color:#fff;}
body.luxe .lx-link--light:hover{color:rgba(255,255,255,.75);}
body.luxe .lx-actions{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:20px 36px;
}
body.luxe .lx-actions .lx-link{padding-bottom:4px;}
body.luxe .lx-actions > form,
body.luxe .lx-section form{margin:0;}

/* The shared offerProof partial: quieter type, matched to the band it sits on. */
body.luxe .lx-proof.small,
body.luxe .lx-proof .small{font-size:13px;letter-spacing:.02em;}
body.luxe .lx-hero .text-white-50,
body.luxe .lx-section--navy .text-white-50{color:rgba(255,255,255,.78)!important;}

/* ---------- placeholders ---------- */
body.luxe .ph{
	position:relative;
	display:block;
	width:100%;
	background:var(--lx-ph) center/cover no-repeat;
	border-radius:2px;
	overflow:hidden;
}
/* Once real imagery is dropped in via style="background-image:url(...)", hide the label. */
body.luxe .ph[style*="background-image"]::after{display:none;}
body.luxe .ph::before{
	content:'';
	display:block;
	padding-bottom:var(--ph-ratio,56.25%);
}
body.luxe .ph::after{
	content:attr(data-ph);
	position:absolute;
	inset:0;
	display:flex;
	align-items:center;
	justify-content:center;
	text-align:center;
	padding:8%;
	font-family:var(--lx-sans);
	font-size:11px;
	font-weight:600;
	letter-spacing:.14em;
	text-transform:uppercase;
	line-height:1.6;
	color:var(--lx-ph-ink);
}
body.luxe .ph--16x9{--ph-ratio:56.25%;}
body.luxe .ph--21x9{--ph-ratio:42.85%;}
body.luxe .ph--3x2{--ph-ratio:66.67%;}
body.luxe .ph--4x3{--ph-ratio:75%;}
body.luxe .ph--4x5{--ph-ratio:125%;}
body.luxe .ph--1x1{--ph-ratio:100%;}
body.luxe .ph--fill{position:absolute;inset:0;height:100%;}
body.luxe .ph--fill::before{display:none;}
body.luxe .ph--dark{background:#2a3744;}
body.luxe .ph--dark::after{color:rgba(255,255,255,.55);}

/* ---------- hero ---------- */
body.luxe .lx-hero{
	position:relative;
	min-height:min(100vh,920px);
	display:flex;
	align-items:center;
	color:#fff;
	overflow:hidden;
	background:#091b2a;
}
body.luxe .lx-hero--half{
	min-height:min(50vh,460px);
}
body.luxe .lx-hero--half .lx-hero__content{
	padding:calc(var(--lx-nav-h) + 36px) 0 40px;
}
body.luxe .lx-hero--half .lx-sub{
	margin:1rem auto 0;
}
body.luxe .lx-hero__photo{
	position:absolute;
	z-index:0;
	inset:0;
	background:var(--lx-navy) center/cover no-repeat;
}
body.luxe .lx-hero__video{
	position:absolute;
	z-index:0;
	inset:0;
	width:100%;
	height:100%;
	object-fit:cover;
	pointer-events:none;
}
body.luxe .lx-hero .ph--fill::after{
	align-items:flex-start;
	justify-content:flex-start;
	padding:calc(var(--lx-nav-h) + 24px) 32px 0;
	text-align:left;
}
body.luxe .lx-hero__scrim{
	position:absolute;
	z-index:1;
	inset:0;
	background:
		linear-gradient(180deg,rgba(9,27,42,.72) 0%,rgba(9,27,42,.55) 40%,rgba(9,27,42,.62) 68%,rgba(9,27,42,.82) 100%);
	pointer-events:none;
}
body.luxe .lx-hero__content{
	position:relative;
	z-index:2;
	width:100%;
	padding:calc(var(--lx-nav-h) + 72px) 0 88px;
	text-align:center;
}
body.luxe .lx-hero h1{color:#fff;}
body.luxe .lx-hero .lx-sub{
	font-size:clamp(18px,1.6vw,21px);
	line-height:1.6;
	font-weight:400;
	color:rgba(255,255,255,.88);
	max-width:36em;
	margin:1.6rem auto 2.4rem;
}
body.luxe .lx-hero .lx-actions,
body.luxe .lx-center .lx-actions{justify-content:center;}
body.luxe #form-section{scroll-margin-top:calc(var(--lx-nav-h) + 16px);}

/* ---------- short quotes (groups page) ---------- */
body.luxe .lx-voice{
	display:flex;
	flex-direction:column;
	height:100%;
	margin:0;
	font-family:var(--lx-serif);
	font-weight:400;
	font-size:clamp(22px,2.1vw,28px);
	line-height:1.35;
	color:var(--lx-ink);
}
body.luxe .lx-voice b{font-weight:600;}
body.luxe .lx-voice footer{
	margin-top:auto;
	padding-top:1.25rem;
	font-family:var(--lx-sans);
	font-size:12px;
	font-weight:500;
	letter-spacing:.04em;
	color:var(--lx-muted);
}
body.luxe .lx-voice footer a{color:var(--lx-burgundy);border-bottom:1px solid rgba(128,36,70,.35);}
body.luxe .lx-frame{border-radius:2px;overflow:hidden;border:1px solid var(--lx-rule);background:#091b2a;}

/* ---------- overlapping two-up collage ---------- */
body.luxe .lx-collage{
	position:relative;
	padding-bottom:22%;
	padding-right:18%;
}
body.luxe .lx-collage__a{
	position:relative;
	width:72%;
	z-index:1;
}
body.luxe .lx-collage__b{
	position:absolute;
	right:0;
	bottom:0;
	width:58%;
	z-index:2;
	box-shadow:0 30px 60px -30px rgba(9,27,42,.35);
}

/* ---------- live panorama ---------- */
body.luxe .lx-pano .video-image-wrapper,
body.luxe .lx-pano .video-image-wrapper:after{border-radius:2px;}
body.luxe .lx-pano .video-image-wrapper.rectangle-21x9:before{content:'';padding-bottom:42.85%;}
body.luxe .lx-pano .pnlm-container{background:var(--lx-ph);}
body.luxe .lx-caption{
	font-size:14px;
	color:var(--lx-muted);
	margin-top:1rem;
}
body.luxe .lx-caption a{color:var(--lx-burgundy);border-bottom:1px solid rgba(128,36,70,.35);}

/* ---------- stats ---------- */
body.luxe .lx-stats{
	display:grid;
	grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
	gap:32px 24px;
}
body.luxe .lx-stat__num{
	font-family:var(--lx-serif);
	font-weight:500;
	font-variant-numeric:lining-nums;
	font-size:clamp(44px,4.6vw,64px);
	line-height:1;
	color:var(--lx-ink);
}
body.luxe .lx-stat__label{
	margin-top:.5rem;
	font-size:12px;
	font-weight:600;
	letter-spacing:.16em;
	text-transform:uppercase;
	color:var(--lx-muted);
}

/* ---------- destination tiles ---------- */
body.luxe .lx-tile{display:block;color:var(--lx-ink);}
body.luxe .lx-tile__img{
	display:block;
	width:100%;
	aspect-ratio:4/3;
	background:var(--lx-ph) center/cover no-repeat;
	border-radius:2px;
	transition:transform .4s ease;
}
body.luxe .lx-tile:hover .lx-tile__img{transform:scale(1.015);}
body.luxe .lx-tile__title{
	font-family:var(--lx-serif);
	font-weight:500;
	font-size:28px;
	line-height:1.15;
	margin-top:1.25rem;
}
body.luxe .lx-tile__meta{
	margin-top:.4rem;
	font-size:12px;
	font-weight:600;
	letter-spacing:.14em;
	text-transform:uppercase;
	color:var(--lx-muted);
}

/* ---------- lists ---------- */
body.luxe .lx-list{list-style:none;margin:0;padding:0;}
body.luxe .lx-list li{
	padding:16px 0;
	border-top:1px solid var(--lx-rule);
	font-size:17px;
	line-height:1.55;
}
body.luxe .lx-list li:last-child{border-bottom:1px solid var(--lx-rule);}
body.luxe .lx-section--navy .lx-list li{border-color:var(--lx-rule-light);}
body.luxe .lx-checks{list-style:none;margin:0;padding:0;}
body.luxe .lx-checks li{
	position:relative;
	padding-left:1.6rem;
	margin-bottom:.6rem;
	font-size:16px;
	line-height:1.55;
}
body.luxe .lx-checks li::before{
	content:'';
	position:absolute;
	left:0;
	top:.78em;
	width:14px;
	height:1px;
	background:var(--lx-burgundy);
}

/* ---------- audience columns ---------- */
body.luxe .lx-audience{
	padding-top:36px;
	border-top:1px solid var(--lx-rule);
}

/* ---------- single-quote testimonial carousel ---------- */
body.luxe .lx-quote{text-align:center;}
body.luxe .lx-quote__mark{
	font-family:var(--lx-serif);
	font-size:96px;
	line-height:.6;
	color:var(--lx-burgundy);
	opacity:.5;
	margin-bottom:1.5rem;
}
body.luxe .lx-quote__text{
	font-family:var(--lx-serif);
	font-weight:400;
	font-size:clamp(26px,2.8vw,38px);
	line-height:1.3;
	color:var(--lx-ink);
	text-wrap:balance;
	max-width:26em;
	margin:0 auto 2rem;
}
body.luxe .lx-quote__text b{font-weight:600;}
body.luxe .lx-quote__who{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:14px;
}
body.luxe .lx-quote__avatar{
	width:48px;
	height:48px;
	border-radius:50%;
	object-fit:cover;
}
body.luxe .lx-quote__name{
	font-size:12px;
	font-weight:600;
	letter-spacing:.14em;
	text-transform:uppercase;
	color:var(--lx-ink);
	text-align:left;
	line-height:1.5;
}
body.luxe .lx-quote__name span{display:block;color:var(--lx-muted);font-weight:400;}
body.luxe .lx-quotes .carousel-indicators{position:static;margin:2.5rem 0 0;}
body.luxe .lx-quotes .carousel-indicators [data-bs-target]{
	width:8px;
	height:8px;
	border-radius:50%;
	border:0;
	background:var(--lx-burgundy);
	opacity:.25;
	margin:0 6px;
}
body.luxe .lx-quotes .carousel-indicators .active{opacity:1;}
body.luxe .lx-quotes .carousel-item{transition-duration:.9s;}

/* ---------- zig-zag feature rows ---------- */
body.luxe .lx-feature + .lx-feature{margin-top:96px;}

/* ---------- top band on pages without a photo hero ---------- */
body.luxe .lx-section.lx-band-top{padding-top:calc(var(--lx-nav-h) + 96px);}

/* ---------- panels (white "paper" on sand) ---------- */
body.luxe .lx-panel{
	background:#fff;
	border:1px solid var(--lx-rule);
	border-radius:2px;
	padding:36px;
	height:100%;
}
body.luxe .lx-panel__head{
	font-size:12px;
	font-weight:600;
	letter-spacing:.16em;
	text-transform:uppercase;
	color:var(--lx-muted);
	padding-bottom:16px;
	margin-bottom:24px;
	border-bottom:1px solid var(--lx-rule);
}

/* ---------- plan columns ---------- */
body.luxe .lx-plan{
	position:relative;
	display:flex;
	flex-direction:column;
	height:100%;
	padding:36px 28px 32px;
	border:1px solid var(--lx-rule);
	border-radius:2px;
}
body.luxe .lx-plan--featured{border-color:rgba(128,36,70,.45);}
body.luxe .lx-plan__tag{
	position:absolute;
	top:-10px;
	left:22px;
	padding:0 10px;
	background:var(--lx-ivory);
	font-size:11px;
	font-weight:600;
	letter-spacing:.14em;
	text-transform:uppercase;
	color:var(--lx-burgundy);
	line-height:1.6;
}
body.luxe .lx-plan__meta{font-size:14px;color:var(--lx-muted);margin-bottom:1.5rem;}
body.luxe .lx-price{
	font-family:var(--lx-serif);
	font-weight:500;
	font-size:clamp(40px,4vw,56px);
	line-height:1;
	color:var(--lx-ink);
	margin-bottom:.35rem;
}
body.luxe .lx-price small{
	font-family:var(--lx-sans);
	font-size:12px;
	font-weight:600;
	letter-spacing:.1em;
	text-transform:uppercase;
	color:var(--lx-muted);
	margin-left:6px;
}
body.luxe .lx-price--text{font-size:clamp(30px,2.6vw,36px);line-height:1.15;padding-top:.5em;}
body.luxe .lx-plan .lx-checks{flex-grow:1;margin-bottom:2rem;}
body.luxe .lx-plan .lx-btn,
body.luxe .lx-plan .lx-btn--ghost{width:100%;text-align:center;}
body.luxe .lx-btn--ghost{
	background:transparent;
	color:var(--lx-burgundy);
	border-color:var(--lx-burgundy);
}
body.luxe .lx-btn--ghost:hover,
body.luxe .lx-btn--ghost:focus{background:var(--lx-burgundy);color:#fff;}

/* ---------- configurator form ---------- */
body.luxe .lx-step{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:30px;
	height:30px;
	border:1px solid var(--lx-burgundy);
	border-radius:50%;
	font-family:var(--lx-serif);
	font-size:17px;
	font-weight:500;
	color:var(--lx-burgundy);
	margin-right:12px;
	vertical-align:middle;
	flex-shrink:0;
}
body.luxe .lx-field-label{
	display:flex;
	align-items:center;
	font-family:var(--lx-serif);
	font-size:24px;
	font-weight:500;
	line-height:1.2;
	color:var(--lx-ink);
	margin-bottom:16px;
}
body.luxe #configure .form-control{
	border-radius:2px;
	border:1px solid var(--lx-rule);
	background:#fff;
	color:var(--lx-ink);
	font-family:var(--lx-sans);
}
body.luxe #configure .form-control:focus{
	border-color:var(--lx-burgundy);
	box-shadow:0 0 0 .2rem rgba(128,36,70,.12);
}
body.luxe #configure .input-group .btn{
	border-radius:2px;
	border:1px solid var(--lx-rule);
	background:#fff;
	color:var(--lx-ink);
	font-size:18px;
	line-height:1;
}
body.luxe #configure .input-group .btn:hover{background:var(--lx-sand);}
body.luxe #configure .form-text{font-size:14px;color:var(--lx-muted);}
body.luxe #configure .form-label{font-size:15px;font-weight:500;color:var(--lx-ink);}
body.luxe .headset-option{
	display:block;
	padding:20px!important;
	border:1px solid var(--lx-rule)!important;
	border-radius:2px;
	background:#fff;
	transition:border-color .18s ease,box-shadow .18s ease;
}
body.luxe .headset-option:hover{border-color:rgba(128,36,70,.5)!important;}
body.luxe .headset-option.border-dark{
	border-color:var(--lx-burgundy)!important;
	box-shadow:inset 0 0 0 1px var(--lx-burgundy);
}
body.luxe .headset-option .form-check-label{font-weight:600;font-size:16px;}
body.luxe .headset-option .lx-option-price{font-weight:600;font-size:15px;}
body.luxe #configure .form-check-input{border-color:rgba(9,27,42,.35);}
body.luxe #configure .form-check-input:checked{background-color:var(--lx-burgundy);border-color:var(--lx-burgundy);}
body.luxe #configure .form-check-input:focus{border-color:var(--lx-burgundy);box-shadow:0 0 0 .2rem rgba(128,36,70,.12);}
body.luxe .lx-btn--block{display:block;width:100%;text-align:center;}

/* Bootstrap alerts, restyled to paper and rules */
body.luxe .alert-info,
body.luxe .alert-warning{
	background:var(--lx-sand);
	border:1px solid var(--lx-rule);
	border-radius:2px;
	color:var(--lx-ink);
}
body.luxe .alert .alert-link,
body.luxe .alert a{color:var(--lx-burgundy);font-weight:600;}

/* ---------- totals ---------- */
body.luxe .lx-total{
	border:1px solid var(--lx-rule);
	border-radius:2px;
	padding:20px;
	height:100%;
}
body.luxe .lx-total__label{
	font-size:11px;
	font-weight:600;
	letter-spacing:.16em;
	text-transform:uppercase;
	color:var(--lx-muted);
	margin-bottom:8px;
}
body.luxe .lx-total__num{
	font-family:var(--lx-serif);
	font-weight:500;
	font-size:clamp(32px,3vw,40px);
	line-height:1;
	color:var(--lx-ink);
}
body.luxe .lx-total__note{font-size:13px;color:var(--lx-muted);margin-top:6px;}
body.luxe .lx-lines{width:100%;border-collapse:collapse;}
body.luxe .lx-lines td{
	padding:12px 0;
	border-top:1px solid var(--lx-rule);
	font-size:15px;
	vertical-align:top;
}
body.luxe .lx-lines tr:last-child td{border-bottom:1px solid var(--lx-rule);}
body.luxe .lx-lines td small{color:var(--lx-muted);font-size:13px;}

/* ---------- included-features grid ---------- */
body.luxe .lx-included{padding:18px 0 20px;border-top:1px solid var(--lx-rule);height:100%;}
body.luxe .lx-included__title{font-weight:600;font-size:15px;letter-spacing:.01em;margin-bottom:4px;color:var(--lx-ink);}
body.luxe .lx-included__body{font-size:14px;line-height:1.6;color:var(--lx-muted);}

/* ---------- FAQ accordion ---------- */
body.luxe .accordion{
	--bs-accordion-bg:transparent;
	--bs-accordion-border-color:var(--lx-rule);
	--bs-accordion-border-radius:0;
	--bs-accordion-inner-border-radius:0;
	--bs-accordion-btn-bg:transparent;
	--bs-accordion-active-bg:transparent;
	--bs-accordion-btn-color:var(--lx-ink);
	--bs-accordion-active-color:var(--lx-burgundy);
	--bs-accordion-btn-focus-box-shadow:none;
	--bs-accordion-btn-focus-border-color:var(--lx-rule);
	--bs-accordion-btn-padding-y:22px;
	--bs-accordion-btn-padding-x:0;
	--bs-accordion-body-padding-x:0;
	--bs-accordion-body-padding-y:0;
	--bs-accordion-btn-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23802446'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
	--bs-accordion-btn-active-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23802446'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}
body.luxe .accordion-item{border-left:0;border-right:0;}
/* vr.css paints accordion buttons burgundy with !important; return them to paper and rules */
body.luxe .accordion-button,
body.luxe .accordion-button:not(.collapsed){
	background:transparent;
	color:var(--lx-ink)!important;
	font-family:var(--lx-serif);
	font-size:22px;
	font-weight:500;
	line-height:1.25;
	text-align:left;
	box-shadow:none;
}
body.luxe .accordion-button:not(.collapsed){color:var(--lx-burgundy)!important;}
body.luxe .accordion-button:hover{color:var(--lx-burgundy)!important;}
body.luxe .accordion-button::after,
body.luxe .accordion-button:not(.collapsed)::after{
	background-image:var(--bs-accordion-btn-icon);
	width:14px;
	height:14px;
	background-size:14px;
}
body.luxe .accordion-body{padding-bottom:26px;font-size:16px;line-height:1.7;color:var(--lx-ink);}
body.luxe #pricing-faq .accordion-body,
body.luxe #org-faq-accordion .accordion-body{max-width:40em;}
body.luxe .accordion-body a{color:var(--lx-burgundy);border-bottom:1px solid rgba(128,36,70,.35);}

/* ---------- sticky mobile bar ---------- */
body.luxe #sticky-cta{
	background:var(--lx-ivory)!important;
	border-top:1px solid var(--lx-rule)!important;
	box-shadow:0 -10px 30px -20px rgba(9,27,42,.35)!important;
}
body.luxe #sticky-cta .lx-btn{padding:14px 16px;font-size:12px;letter-spacing:.12em;white-space:nowrap;}

@media (max-width:767.98px){
	body.luxe .lx-plan{margin-top:28px;}
	body.luxe .lx-panel{padding:24px 20px;}
	body.luxe .lx-field-label{font-size:21px;}
	body.luxe .accordion-button{font-size:19px;}
	body.luxe .lx-section.lx-band-top{padding-top:calc(var(--lx-nav-h) + 56px);}
}

/* ---------- navigation ----------
   Solid navy bar on every page. Pages that open on a dark band
   (hero, page head, navy section) lay the bar over that band instead. */
body.luxe .navbar.navbar-dark{
	z-index:1030;
	transition:background .25s ease,border-color .25s ease,box-shadow .25s ease;
}
/* Headings inside the theme have no margin. Pages that are not a designed
   dark opener need a little air under the solid bar. */
body.luxe:not(:has(.lx-hero)):not(:has(.lx-pagehead)):not(:has(.lx-band-top)):not(:has(.page-header)) .wrapper{
	padding-top:32px;
}
body.luxe:has(.lx-hero) .navbar.navbar-dark,
body.luxe:has(.lx-pagehead) .navbar.navbar-dark,
body.luxe:has(.lx-band-top) .navbar.navbar-dark{
	position:fixed!important;
	top:0;
	left:0;
	right:0;
	background:transparent;
	border-bottom:1px solid transparent;
	border-image:none;
}
body.luxe .navbar.navbar-dark.is-scrolled,
body.luxe .navbar.navbar-dark.is-open{
	background:rgba(9,27,42,.96);
	border-bottom-color:rgba(255,255,255,.08);
	box-shadow:0 10px 30px -18px rgba(9,27,42,.6);
}
body.luxe .navbar-expand-lg .navbar-nav .nav-link{
	font-size:13px;
	font-weight:500;
	letter-spacing:.06em;
	text-transform:uppercase;
	white-space:nowrap;
	padding-left:16px;
	padding-right:16px;
	color:rgba(255,255,255,.85)!important;
}
body.luxe .navbar-expand-lg .navbar-nav .nav-link:hover,
body.luxe .navbar-expand-lg .navbar-nav .nav-link.active{color:#fff!important;}
body.luxe .navbar-dark .navbar-nav .nav-cta .btn,
body.luxe .navbar-dark .navbar-nav .nav-cta .btn-warning{
	background:transparent;
	border:1px solid rgba(255,255,255,.7);
	color:#fff;
	font-size:12px;
	font-weight:600;
	letter-spacing:.12em;
	text-transform:uppercase;
	padding:10px 20px;
	border-radius:2px;
	transition:background .18s ease,color .18s ease;
}
body.luxe .navbar-dark .navbar-nav .nav-cta .btn:hover{
	background:#fff;
	color:var(--lx-navy);
	border-color:#fff;
}
/* lg range (992-1199px): the container is 960px and a logged-in nav adds Super,
   account, and cart. Tighten type so everything fits; wrap rather than clip if not. */
@media (min-width:992px){
	body.luxe .navbar.navbar-dark .navbar-collapse{justify-content:flex-end;min-width:0;}
	body.luxe .navbar.navbar-dark .navbar-nav{flex-wrap:wrap;justify-content:flex-end;}
}
@media (min-width:992px) and (max-width:1199.98px){
	body.luxe .navbar-expand-lg .navbar-nav .nav-link{
		font-size:12px;
		letter-spacing:.03em;
		padding-left:10px;
		padding-right:10px;
	}
	body.luxe .navbar-dark .navbar-nav .nav-cta{padding:0 4px 0 6px;}
	body.luxe .navbar-dark .navbar-nav .nav-cta .btn{
		font-size:11px;
		letter-spacing:.08em;
		padding:9px 14px;
	}
}
@media (max-width:991.98px){
	body.luxe .navbar.navbar-dark .navbar-collapse{padding:8px 0 20px;}
	body.luxe .navbar-dark .navbar-nav .nav-cta{padding:12px 24px 0;}
}

/* ---------- quieter footer ---------- */
body.luxe #footer{
	margin-top:0;
	margin-bottom:0;
	padding:64px 12px 48px;
	border-top:1px solid var(--lx-rule);
}
body.luxe #footer img{height:28px;}
body.luxe #footer hr{border-top:1px solid var(--lx-rule);opacity:1;margin:32px 0;}
body.luxe #footer #support-links a{
	font-size:12px!important;
	font-weight:600!important;
	letter-spacing:.12em;
	text-transform:uppercase;
	color:var(--lx-muted)!important;
}
body.luxe #footer #support-links a:hover{color:var(--lx-burgundy)!important;}
body.luxe #footer small{font-size:12px;letter-spacing:.04em;}

/* ---------- responsive ---------- */
@media (max-width:991.98px){
	body.luxe .lx-section{padding:80px 0;}
	body.luxe .lx-section--tight{padding:64px 0;}
	body.luxe .lx-collage{margin-top:48px;}
	body.luxe .lx-feature + .lx-feature{margin-top:72px;}
}
@media (max-width:767.98px){
	body.luxe{--lx-nav-h:56px;}
	body.luxe .lx-section{padding:64px 0;}
	body.luxe .lx-section--tight{padding:48px 0;}
	body.luxe .lx-hero{min-height:92vh;}
	body.luxe .lx-hero__content{padding:calc(var(--lx-nav-h) + 56px) 0 64px;}
	body.luxe .lx-collage{padding-bottom:26%;padding-right:12%;}
	body.luxe .lx-collage__a{width:76%;}
	body.luxe .lx-collage__b{width:62%;}
	body.luxe .lx-tile__title{font-size:26px;}
	body.luxe .lx-pano .video-image-wrapper.rectangle-21x9:before{padding-bottom:70%;}
	body.luxe .lx-quote__mark{font-size:72px;}
	body.luxe .lx-stats{grid-template-columns:repeat(2,1fr);}
}

/* ---------- product page ---------- */
body.luxe .product-inactive-alert{position:relative;z-index:3;margin-top:var(--lx-nav-h);}
body.luxe .lx-hero--product{
	min-height:min(68vh,640px);
	align-items:flex-end;
}
body.luxe .lx-hero--product h1{
	font-size:clamp(40px,5vw,68px);
	line-height:1.05;
	text-wrap:balance;
	color:#fff;
}
body.luxe .lx-hero--product .lx-hero__content{
	padding:calc(var(--lx-nav-h) + 56px) 0 64px;
}
body.luxe .lx-hero--product .lx-sub,
body.luxe .lx-hero--product .lx-sub p{
	font-size:clamp(18px,1.6vw,21px);
	line-height:1.6;
	font-weight:400;
	color:rgba(255,255,255,.88);
	max-width:38em;
	margin-left:auto;
	margin-right:auto;
}
body.luxe .lx-hero--product .lx-sub p:last-child{margin-bottom:0;}
body.luxe .lx-hero__event{
	font-family:var(--lx-serif);
	font-size:clamp(22px,2.2vw,28px);
	font-weight:500;
	color:#fff;
	margin:1rem 0 .25rem;
}
body.luxe .lx-hero__when{
	font-size:15px;
	letter-spacing:.06em;
	text-transform:uppercase;
	color:rgba(255,255,255,.78);
	margin:0;
}
body.luxe .lx-hero__series{
	margin:1rem 0 0;
	font-family:var(--lx-serif);
	font-style:italic;
	font-size:20px;
	color:rgba(255,255,255,.82);
}
body.luxe .lx-hero__series a{
	color:#fff;
	text-decoration:none;
	border-bottom:1px solid rgba(255,255,255,.45);
}
body.luxe .lx-hero .product-facts{
	margin:1.75rem auto 0;
	max-width:52rem;
}
body.luxe .lx-hero .product-facts thead{display:none;}
body.luxe .lx-hero .product-facts td{
	border:0;
	padding:.35rem .55rem;
	font-family:var(--lx-sans);
	font-size:12px;
	font-weight:500;
	letter-spacing:.06em;
	text-transform:uppercase;
	color:rgba(255,255,255,.82);
}
body.luxe .page-header-product,
body.luxe .page-header-product-reset{margin-top:0;}
body.luxe .page-header-product{padding-top:56px;}
body.luxe #purchase-panel{top:calc(var(--lx-nav-h) + 16px)!important;}
body.luxe #purchase-options{
	border:1px solid var(--lx-rule);
	border-radius:2px;
	box-shadow:none;
	background:#fff;
}
body.luxe #purchase-options.border-success{border-color:var(--lx-rule)!important;}
body.luxe #purchase-options > .card-header{
	background:transparent;
	border-bottom:1px solid var(--lx-rule);
	padding:18px 20px;
	font-family:var(--lx-sans);
	font-size:12px;
	font-weight:600;
	letter-spacing:.16em;
	text-transform:uppercase;
	color:var(--lx-muted);
}
body.luxe #purchase-options .list-group{padding-bottom:0;}
body.luxe #access-options .purchase-option{
	border-color:var(--lx-rule);
	background:#fff;
}
body.luxe #access-options .purchase-option:hover,
body.luxe #access-options .purchase-option:focus{
	background:rgba(241,236,228,.7);
	color:inherit;
}
body.luxe #access-options .purchase-option-title{
	font-family:var(--lx-serif);
	font-size:22px;
	font-weight:500;
	color:var(--lx-ink);
}
body.luxe #access-options .purchase-option-price{
	font-family:var(--lx-serif);
	font-size:22px;
	font-weight:500;
	color:var(--lx-ink);
}
body.luxe #access-options .purchase-option-period{
	font-family:var(--lx-sans);
	font-size:12px;
	font-weight:600;
	letter-spacing:.08em;
	text-transform:uppercase;
}
body.luxe #access-options .purchase-option-desc{
	font-size:15px;
	line-height:1.55;
	color:var(--lx-muted);
}
body.luxe #access-options .list-group-item.active,
body.luxe #access-options .list-group-item-action.active,
body.luxe #access-options .purchase-option.active{
	background:#fff;
	border-color:var(--lx-rule);
	box-shadow:inset 2px 0 0 var(--lx-burgundy);
	color:var(--lx-ink);
}
body.luxe #access-options .purchase-option.active .purchase-option-title,
body.luxe #access-options .purchase-option.active .purchase-option-price,
body.luxe #access-options .purchase-option.active .purchase-option-period{color:var(--lx-burgundy);}
body.luxe #access-options .purchase-option.active .purchase-option-desc{color:var(--lx-ink);}
body.luxe #purchase-options .form-check-input:checked{
	background-color:var(--lx-burgundy);
	border-color:var(--lx-burgundy);
}
body.luxe #purchase-options .form-check-input:focus{
	border-color:var(--lx-burgundy);
	box-shadow:0 0 0 .2rem rgba(128,36,70,.18);
}
body.luxe #purchase-options #purchase-controls{background:var(--lx-sand);}
body.luxe #purchase-controls .fw-bold{
	font-family:var(--lx-serif);
	font-size:28px;
	font-weight:500;
}
body.luxe #purchase-options .form-select{border-radius:2px;border-color:var(--lx-rule);}
body.luxe #purchase-options .btn-warning,
body.luxe #sticky-product-cta .btn-warning{
	font-family:var(--lx-sans);
	font-size:13px;
	font-weight:600;
	letter-spacing:.16em;
	text-transform:uppercase;
	line-height:1;
	border-radius:2px;
	padding:16px 22px;
	background:var(--lx-burgundy);
	border-color:var(--lx-burgundy);
	color:#fff;
}
body.luxe #purchase-options .btn-warning:hover,
body.luxe #purchase-options .btn-warning:focus,
body.luxe #sticky-product-cta .btn-warning:hover,
body.luxe #sticky-product-cta .btn-warning:focus{
	background:var(--lx-red);
	border-color:var(--lx-red);
	color:#fff;
}
body.luxe #purchase-options .btn-outline-dark{
	border-radius:2px;
	border-color:var(--lx-navy);
	color:var(--lx-navy);
	font-size:12px;
	font-weight:600;
	letter-spacing:.12em;
	text-transform:uppercase;
}
body.luxe #purchase-options .btn-outline-dark:hover{
	background:var(--lx-navy);
	border-color:var(--lx-navy);
	color:#fff;
}
body.luxe #purchase-options .card-body > .d-flex .fs-4{
	font-family:var(--lx-serif);
	font-weight:500;
	font-size:40px;
	line-height:1;
}
body.luxe #purchase-options .badge{border-radius:2px;letter-spacing:.06em;text-transform:uppercase;}
body.luxe .page-header-product .mark,
body.luxe #product-sections .mark{
	background:transparent;
	color:inherit;
	font-family:var(--lx-serif);
	font-style:italic;
	font-weight:500;
	padding:0;
}
body.luxe .product-lede,
body.luxe .product-summary{
	font-size:1.125rem;
	font-weight:400;
	line-height:1.7;
	max-width:40em;
}
body.luxe .product-summary p:last-child{margin-bottom:0;}
body.luxe .page-header-product .video-image-wrapper,
body.luxe .page-header-product .rectangle-16x9,
body.luxe .open-video{
	border-radius:2px;
}
body.luxe .episode-preview__play{
	background:rgba(9,27,42,.5);
}
body.luxe .episode-preview__play .fa-fw{
	font-size:1.05rem !important;
	color:#fff;
}
body.luxe h6.lx-eyebrow + hr{display:none;}
body.luxe h6.lx-eyebrow{margin-bottom:1.5rem;}
body.luxe #product-nav-bar{
	top:65px;
	background:rgba(250,247,242,.96);
	border-bottom:1px solid var(--lx-rule);
	margin-top:3rem;
	margin-bottom:0;
}
body.luxe #product-nav{background:transparent;}
body.luxe #product-nav li{border-bottom:0;}
body.luxe #product-nav li a{
	color:var(--lx-navy);
	background:transparent;
	font-family:var(--lx-sans);
	font-size:11px;
	font-weight:600;
	letter-spacing:.14em;
	text-transform:uppercase;
	border-bottom:2px solid transparent;
}
body.luxe #product-nav li a.active,
body.luxe #product-nav li a.active:hover,
body.luxe #product-nav li a:hover{
	background:transparent;
	color:var(--lx-burgundy);
	font-weight:600;
	border-bottom-color:var(--lx-burgundy);
}
body.luxe #product-sections #course-types,
body.luxe #product-sections #description,
body.luxe #product-sections #curriculum,
body.luxe #product-sections #instructor,
body.luxe #product-sections #reviews{
	padding-top:calc(var(--lx-nav-h) + 72px)!important;
	scroll-margin-top:calc(var(--lx-nav-h) + 64px);
}
body.luxe #product-sections #course-types{
	padding-top:2.75rem!important;
}
body.luxe #description,
body.luxe #instructor{background:var(--lx-sand);}
body.luxe #product-sections #instructor{
	padding-bottom:calc(var(--lx-nav-h) + 72px)!important;
}
body.luxe #description .lead{
	font-size:1.125rem;
	font-weight:400;
	line-height:1.7;
	max-width:40em;
}
body.luxe .product-facts thead{display:none;}
body.luxe #description .product-facts td{
	border:0;
	border-top:1px solid var(--lx-rule);
	border-bottom:1px solid var(--lx-rule);
	font-size:13px;
	letter-spacing:.04em;
	padding:.85rem .4rem;
}
body.luxe .ways-table{
	--bs-table-border-color:var(--lx-rule);
	border-color:var(--lx-rule);
}
body.luxe .ways-table td{border-color:var(--lx-rule);}
body.luxe .ways-table .table-secondary,
body.luxe .ways-table .ways-section td{
	background:var(--lx-sand)!important;
	--bs-table-bg:var(--lx-sand);
	color:var(--lx-navy);
	font-family:var(--lx-sans);
	font-size:12px;
	font-weight:600;
	letter-spacing:.12em;
	text-transform:uppercase;
	border-color:var(--lx-rule);
}
body.luxe .ways-offer td:first-child h5{
	font-family:var(--lx-sans);
	font-size:11px;
	font-weight:600;
	letter-spacing:.14em;
	text-transform:uppercase;
	color:var(--lx-burgundy);
}
body.luxe .ways-table h5{
	font-family:var(--lx-serif);
	font-weight:500;
	font-size:26px;
}
body.luxe .ways-table a{
	color:var(--lx-ink);
	text-decoration:none;
	border-bottom:1px solid rgba(128,36,70,.35);
}
body.luxe .ways-table a:hover{color:var(--lx-burgundy);}
body.luxe #course-types .alert-info{
	background:var(--lx-sand);
	border:1px solid var(--lx-rule);
	border-radius:2px;
	color:var(--lx-ink);
}
body.luxe #curriculum h4,
body.luxe #curriculum .card-title{
	font-family:var(--lx-serif);
	font-weight:500;
}
body.luxe #curriculum h4{font-size:clamp(26px,2.4vw,32px);}
body.luxe #curriculum .card-title{font-size:clamp(24px,2.2vw,30px);}
body.luxe #curriculum .card,
body.luxe .materials-table{
	border-color:var(--lx-rule);
	border-radius:2px;
	box-shadow:none;
}
body.luxe .materials-table td{border-color:var(--lx-rule);}
body.luxe .instructor-card__name{
	font-family:var(--lx-serif);
	font-weight:500;
	font-size:clamp(26px,2.4vw,34px);
	line-height:1.15;
}
body.luxe .instructor-card__name a{color:var(--lx-burgundy);}
body.luxe .instructor-card__name a:hover{color:var(--lx-ink);}
body.luxe .instructor-card__bio{
	font-size:1.0625rem;
	line-height:1.7;
	max-width:42em;
}
body.luxe .instructor-card__bio p:last-child{margin-bottom:0;}
body.luxe .instructor-card__site{
	color:var(--lx-burgundy);
	border-bottom-color:rgba(128,36,70,.35);
}
body.luxe .instructor-card__site:hover{color:var(--lx-ink);}
body.luxe #reviews .card-testimonial{
	background:#fff;
	border:1px solid var(--lx-rule);
	border-radius:2px;
	box-shadow:none;
	padding:28px 24px;
}
body.luxe #reviews h5{
	font-family:var(--lx-serif);
	font-weight:500;
	font-size:26px;
}
body.luxe #reviews .fa-star{color:var(--lx-burgundy);}
body.luxe #sticky-product-cta{
	background:var(--lx-ivory)!important;
	border-top:1px solid var(--lx-rule)!important;
	box-shadow:0 -10px 30px -20px rgba(9,27,42,.35)!important;
}
@media (max-width:991.98px){
	body.luxe #product-nav-bar{top:51px;}
}
@media (max-width:767.98px){
	body.luxe .lx-hero--product{min-height:min(70vh,560px);}
	body.luxe .lx-hero--product .lx-hero__content{padding:calc(var(--lx-nav-h) + 40px) 0 40px;}
	body.luxe .lx-hero .product-facts,
	body.luxe .lx-hero .product-facts > tbody,
	body.luxe .lx-hero .product-facts > tbody > tr{
		display:flex;
		flex-wrap:wrap;
		justify-content:center;
		width:100%;
		gap:6px 14px;
	}
	body.luxe .lx-hero .product-facts > tbody > tr > td{
		display:block;
		width:auto;
		padding:.15rem 0;
		font-size:11px;
	}
	body.luxe #product-sections #course-types,
	body.luxe #product-sections #description,
	body.luxe #product-sections #curriculum,
	body.luxe #product-sections #instructor,
	body.luxe #product-sections #reviews{padding-top:4.75rem!important;}
	body.luxe #product-sections #course-types{padding-top:1.75rem!important;}
	body.luxe #product-sections #instructor{padding-bottom:4.75rem!important;}
	body.luxe #reviews .card-testimonial{padding:28px 24px!important;}
}

/* ---------- account library ---------- */
body.luxe .lx-pagehead{
	background:var(--lx-navy);
	color:#fff;
	padding:calc(var(--lx-nav-h) + 56px) 0 48px;
}
body.luxe .lx-pagehead h1{color:#fff;}
body.luxe .lx-pagehead__note{
	margin:1rem 0 0;
	font-size:15px;
	color:rgba(255,255,255,.72);
}
body.luxe .lx-pagehead__note a{
	color:#fff;
	text-decoration:none;
	border-bottom:1px solid rgba(255,255,255,.45);
}
body.luxe .lx-pagehead__note a:hover{color:rgba(255,255,255,.75);}
body.luxe .lx-pagehead__actions{flex:0 0 auto;}
body.luxe .lx-pagehead__actions .btn{white-space:nowrap;}
body.luxe .lx-pagehead + section:not(.lx-library){
	padding:56px 0 96px;
}

body.luxe .lx-library{
	padding:56px 0 96px;
}
body.luxe .lx-library__trip + .lx-library__trip{margin-top:2.75rem;}
body.luxe .lx-library__empty{padding:24px 0 8px;}
body.luxe .lx-library .accordion-item,
body.luxe .lx-library .accordion-collapse{
	scroll-margin-top:calc(var(--lx-nav-h) + 16px);
}
body.luxe .lx-library .accordion-button > span{
	flex:1 1 auto;
	min-width:0;
	text-align:left;
}
body.luxe .lx-library .accordion-button b{
	display:block;
	margin-bottom:6px;
	font-family:var(--lx-sans);
	font-size:12px;
	font-weight:600;
	letter-spacing:.16em;
	text-transform:uppercase;
	line-height:1.3;
	color:var(--lx-burgundy);
}
body.luxe .lx-library .accordion-body{
	max-width:none;
	padding-bottom:8px;
}
body.luxe .lx-library .library-level-0 > .accordion-header > .accordion-button,
body.luxe .lx-library .library-level-0 > .accordion-header > .accordion-button:not(.collapsed){
	font-size:clamp(28px,3vw,40px);
	line-height:1.12;
	padding-top:22px;
	padding-bottom:22px;
	color:var(--lx-ink)!important;
	text-wrap:balance;
}
body.luxe .lx-library .library-level-1 > .accordion-header > .accordion-button,
body.luxe .lx-library .library-level-1 > .accordion-header > .accordion-button:not(.collapsed){
	font-family:var(--lx-sans);
	font-size:16px;
	font-weight:600;
	letter-spacing:.01em;
	line-height:1.35;
	padding-top:16px;
	padding-bottom:16px;
	color:var(--lx-ink)!important;
}
body.luxe .lx-library .accordion-item:not(.library-level-0):not(.library-level-1) > .accordion-header > .accordion-button,
body.luxe .lx-library .accordion-item:not(.library-level-0):not(.library-level-1) > .accordion-header > .accordion-button:not(.collapsed){
	font-family:var(--lx-sans);
	font-size:15px;
	font-weight:500;
	line-height:1.4;
	padding-top:13px;
	padding-bottom:13px;
	color:var(--lx-ink)!important;
}
body.luxe .lx-library .accordion-item:not(.library-level-0):not(.library-level-1) > .accordion-header > .accordion-button.collapsed{
	color:var(--lx-muted)!important;
}
body.luxe .lx-library .accordion .accordion > .accordion-item{border-bottom:0;}
body.luxe .lx-library .accordion .accordion > .accordion-item + .accordion-item{border-top:1px solid var(--lx-rule);}
body.luxe .lx-library .library-level-2 > .accordion-header > .accordion-button{padding-left:1.15rem;}
body.luxe .lx-library .library-level-2 > .accordion-collapse > .accordion-body > :not(.accordion){margin-left:1.15rem;}
body.luxe .lx-library .library-level-3 > .accordion-header > .accordion-button{padding-left:2.3rem;}
body.luxe .lx-library .library-level-3 > .accordion-collapse > .accordion-body > :not(.accordion){margin-left:2.3rem;}
body.luxe .lx-library .accordion-item:not(.library-level-0):not(.library-level-1):not(.library-level-2):not(.library-level-3) > .accordion-header > .accordion-button{padding-left:3.45rem;}
body.luxe .lx-library .accordion-item:not(.library-level-0):not(.library-level-1):not(.library-level-2):not(.library-level-3) > .accordion-collapse > .accordion-body > :not(.accordion){margin-left:3.45rem;}
body.luxe .lx-library .accordion-button:hover,
body.luxe .lx-library .accordion-button:focus,
body.luxe .lx-library .library-level-0 > .accordion-header > .accordion-button:hover,
body.luxe .lx-library .library-level-0 > .accordion-header > .accordion-button:focus,
body.luxe .lx-library .library-level-1 > .accordion-header > .accordion-button:hover,
body.luxe .lx-library .library-level-1 > .accordion-header > .accordion-button:focus,
body.luxe .lx-library .accordion-item:not(.library-level-0):not(.library-level-1) > .accordion-header > .accordion-button:hover,
body.luxe .lx-library .accordion-item:not(.library-level-0):not(.library-level-1) > .accordion-header > .accordion-button:focus{
	color:var(--lx-burgundy)!important;
}
body.luxe .lx-library .accordion .accordion{
	margin-top:1.25rem;
	padding-left:0;
}
body.luxe .lx-library__actions{margin-bottom:1.75rem;}
body.luxe .lx-library .accordion-body .lx-actions a.lx-btn{
	color:#fff;
	text-decoration:none;
	border-bottom-color:var(--lx-burgundy);
}
body.luxe .lx-library .accordion-body .lx-actions a.lx-btn:hover,
body.luxe .lx-library .accordion-body .lx-actions a.lx-btn:focus{
	color:#fff;
	border-bottom-color:var(--lx-red);
}
body.luxe .lx-library .accordion-body .lx-actions a.lx-link{
	color:var(--lx-burgundy);
	text-decoration:none;
	border-bottom:1px solid currentColor;
}
body.luxe .lx-library .accordion-body .lx-actions a.lx-link:hover,
body.luxe .lx-library .accordion-body .lx-actions a.lx-link:focus{color:var(--lx-red);}
body.luxe .lx-library__blurb{
	max-width:42em;
	font-size:1.0625rem;
	font-weight:400;
	line-height:1.7;
	margin-bottom:1.5rem;
}
body.luxe .lx-library__blurb p:last-child{margin-bottom:0;}
body.luxe .lx-library__blurb img{max-width:100%;height:auto;}
body.luxe .lx-library h6{
	font-family:var(--lx-sans);
	font-size:12px;
	font-weight:600;
	letter-spacing:.18em;
	text-transform:uppercase;
	color:var(--lx-burgundy);
	margin:1.5rem 0 .75rem;
}
body.luxe .lx-library .table{
	--bs-table-bg:transparent;
	--bs-table-border-color:var(--lx-rule);
	border-color:var(--lx-rule);
}
body.luxe .lx-library .table-bordered > :not(caption) > * > *{
	border-width:0 0 1px;
	border-color:var(--lx-rule);
	font-size:15px;
	padding:14px 8px 14px 0;
	vertical-align:top;
}
body.luxe .lx-library .table td:first-child{font-weight:600;}
body.luxe .lx-library .table a{
	color:var(--lx-burgundy);
	text-decoration:none;
	border-bottom:1px solid rgba(128,36,70,.35);
}
body.luxe .lx-library .table a:hover{color:var(--lx-red);}
body.luxe .lx-library .alert{
	background:var(--lx-sand);
	border:0;
	border-left:2px solid var(--lx-burgundy);
	border-radius:0;
	color:var(--lx-ink);
}
body.luxe .lx-library .alert p,
body.luxe .lx-library .alert li{font-size:15px;}

/* ---------- sign-in and account creation ---------- */
body.luxe .lx-auth-page{padding:56px 0 96px;}
body.luxe .lx-auth-page .lx-eyebrow{margin-bottom:.85rem;}
body.luxe .lx-auth-page h1{margin-bottom:1.75rem;}
body.luxe .lx-auth-page .lx-lead{margin:-.5rem 0 1.75rem;}
body.luxe .lx-auth .form-label,
body.luxe .lx-auth label:not(.form-check-label){
	display:block;
	font-family:var(--lx-sans);
	font-size:15px;
	font-weight:500;
	color:var(--lx-ink);
	margin-bottom:.5rem;
}
body.luxe .lx-auth .form-control,
body.luxe .lx-auth .form-select{
	border-radius:2px;
	border:1px solid var(--lx-rule);
	background:#fff;
	color:var(--lx-ink);
	font-family:var(--lx-sans);
	font-size:16px;
	padding:.7rem .9rem;
}
body.luxe .lx-auth .form-control:focus,
body.luxe .lx-auth .form-select:focus{
	border-color:var(--lx-burgundy);
	box-shadow:0 0 0 .2rem rgba(128,36,70,.12);
}
body.luxe .lx-auth .form-control::placeholder{color:var(--lx-ph-ink);}
body.luxe .lx-auth .form-text,
body.luxe .lx-auth .form-text small{font-size:14px;color:var(--lx-muted);}
body.luxe .lx-auth a:not(.btn){
	color:var(--lx-burgundy);
	text-decoration:none;
	border-bottom:1px solid rgba(128,36,70,.35);
}
body.luxe .lx-auth a:not(.btn):hover,
body.luxe .lx-auth a:not(.btn):focus{color:var(--lx-red);}
body.luxe .lx-auth .btn.lx-btn{box-shadow:none;}
body.luxe .lx-auth .btn.lx-btn:hover,
body.luxe .lx-auth .btn.lx-btn:focus,
body.luxe .lx-auth .btn.lx-btn:active{
	background:var(--lx-red);
	border-color:var(--lx-red);
	color:#fff;
	box-shadow:none;
	transform:none;
}
body.luxe .lx-auth-page--wide .lx-btn--block{
	max-width:22rem;
	margin-inline:auto;
}
body.luxe .lx-auth .card{
	background:#fff;
	border:1px solid var(--lx-rule);
	border-radius:2px;
	box-shadow:none;
}
body.luxe .lx-auth .card-header{
	background:transparent;
	border-bottom:1px solid var(--lx-rule);
	padding:20px 24px;
	font-family:var(--lx-sans);
	font-size:12px;
	font-weight:600;
	letter-spacing:.16em;
	text-transform:uppercase;
	color:var(--lx-muted);
}
body.luxe .lx-auth .card-body{padding:24px;}
body.luxe .lx-auth hr{
	border:0;
	border-top:1px solid var(--lx-rule);
	opacity:1;
}
body.luxe .lx-auth .form-check-input{border-color:rgba(9,27,42,.35);}
body.luxe .lx-auth .form-check-input:checked{
	background-color:var(--lx-burgundy);
	border-color:var(--lx-burgundy);
}
body.luxe .lx-auth .form-check-input:focus{
	border-color:var(--lx-burgundy);
	box-shadow:0 0 0 .2rem rgba(128,36,70,.12);
}
body.luxe .lx-auth .form-check-label{font-size:15px;font-weight:500;}
body.luxe .lx-auth .alert{
	background:var(--lx-sand);
	border:0;
	border-left:2px solid var(--lx-burgundy);
	border-radius:0;
	color:var(--lx-ink);
}
body.luxe .lx-auth .alert-danger{border-left-color:var(--lx-red);}
body.luxe .lx-auth .progress{
	height:1.25rem;
	background:var(--lx-sand);
	border-radius:2px;
	font-family:var(--lx-sans);
	font-size:11px;
	font-weight:600;
	letter-spacing:.08em;
	text-transform:uppercase;
}
body.luxe .lx-auth .invalid-feedback,
body.luxe .lx-auth .valid-feedback{font-size:13px;}

@media (max-width:767.98px){
	body.luxe .lx-auth-page{padding:36px 0 64px;}
	body.luxe .lx-auth .card-body,
	body.luxe .lx-auth .card-header{padding:20px;}
	body.luxe .lx-pagehead{padding:calc(var(--lx-nav-h) + 36px) 0 32px;}
	body.luxe .lx-pagehead + section:not(.lx-library){padding:36px 0 64px;}
	body.luxe .lx-library{padding:36px 0 64px;}
	body.luxe .lx-library__trip + .lx-library__trip{margin-top:2rem;}
	body.luxe .lx-library .library-level-0 > .accordion-header > .accordion-button,
	body.luxe .lx-library .library-level-0 > .accordion-header > .accordion-button:not(.collapsed){
		font-size:28px;
	}
	body.luxe .lx-library .lx-actions{gap:14px 22px;}
}
