a{color:inherit;text-decoration:none;}
.retreat-icon{display:inline-block;height:1em;width:auto;vertical-align:-0.125em;overflow:visible;flex-shrink:0;}
body.lc-retreat{background-color:#0b0f19;color:#f3f4f6;font-family:'Inter',sans-serif;overflow-x:hidden;position:relative;}.bg-orb{position:fixed;border-radius:50%;filter:blur(120px);z-index:-1;opacity:0.45;pointer-events:none;animation:floatOrb 18s ease-in-out infinite alternate;}#bg-orb-1{width:450px;height:450px;background:radial-gradient(circle,rgba(217,119,6,0.8) 0%,rgba(245,158,11,0.2) 70%);top:-100px;left:-100px;}#bg-orb-2{width:550px;height:550px;background:radial-gradient(circle,rgba(16,185,129,0.6) 0%,rgba(5,150,105,0.1) 70%);top:40%;right:-150px;animation-delay:-5s;}#bg-orb-3{width:500px;height:500px;background:radial-gradient(circle,rgba(139,92,246,0.6) 0%,rgba(109,40,217,0.15) 70%);bottom:-100px;left:20%;animation-delay:-10s;}@keyframes floatOrb{0%{transform:translate(0,0) scale(1);}50%{transform:translate(60px,40px) scale(1.1);}100%{transform:translate(-40px,80px) scale(0.95);}}.glass-panel{background:rgba(255,255,255,0.04);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,0.08);box-shadow:0 20px 50px rgba(0,0,0,0.4);}.glass-card{background:rgba(255,255,255,0.05);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,0.1);transition:all 0.4s cubic-bezier(0.16,1,0.3,1);}.glass-card:hover{background:rgba(255,255,255,0.09);border-color:rgba(245,158,11,0.35);transform:translateY(-5px);box-shadow:0 15px 35px rgba(245,158,11,0.15);}.glass-badge{background:rgba(245,158,11,0.12);border:1px solid rgba(245,158,11,0.3);backdrop-filter:blur(8px);}.text-gradient-gold{background:linear-gradient(135deg,#FDE68A 0%,#F59E0B 50%,#D97706 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;}.text-gradient-emerald{background:linear-gradient(135deg,#A7F3D0 0%,#10B981 50%,#059669 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;}::-webkit-scrollbar{width:8px;}::-webkit-scrollbar-track{background:#0b0f19;}::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.15);border-radius:4px;}::-webkit-scrollbar-thumb:hover{background:rgba(245,158,11,0.5);}
/* ==========================================================================
   Tailwind Utility CSS — pre-built subset for LandFNL preset plugins.
   Covers the utility classes used in landing-page prototype patterns.
   No external CDN required.
   ========================================================================== */

/* ---- Reset ---- */
*,::before,::after{box-sizing:border-box;}

/* ---- Display ---- */
.block{display:block}
.hidden{display:none}
.inline-flex{display:inline-flex}
.flex{display:flex}
.grid{display:grid}

/* ---- Flex ---- */
.flex-col{flex-direction:column}
.flex-wrap{flex-wrap:wrap}
.flex-grow{flex-grow:1}
.flex-1{flex:1 1 0%}
.shrink-0{flex-shrink:0}
.items-center{align-items:center}
.items-start{align-items:flex-start}
.justify-center{justify-content:center}
.justify-between{justify-content:space-between}

/* ---- Grid ---- */
.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}
.col-span-5{grid-column:span 5/span 5}
.col-span-7{grid-column:span 7/span 7}
.col-span-12{grid-column:span 12/span 12}

/* ---- Gap ---- */
.gap-2{gap:.5rem}
.gap-4{gap:1rem}
.gap-6{gap:1.5rem}
.gap-8{gap:2rem}
.gap-10{gap:2.5rem}

/* ---- Space Y ---- */
.space-y-1>:not([hidden])~:not([hidden]){margin-top:.25rem}
.space-y-2>:not([hidden])~:not([hidden]){margin-top:.5rem}
.space-y-3>:not([hidden])~:not([hidden]){margin-top:.75rem}
.space-y-4>:not([hidden])~:not([hidden]){margin-top:1rem}
.space-y-6>:not([hidden])~:not([hidden]){margin-top:1.5rem}
.space-y-8>:not([hidden])~:not([hidden]){margin-top:2rem}
.space-y-12>:not([hidden])~:not([hidden]){margin-top:3rem}
.space-y-20>:not([hidden])~:not([hidden]){margin-top:5rem}

/* ---- Space X ---- */
.space-x-1\.5>:not([hidden])~:not([hidden]){margin-left:.375rem}
.space-x-2>:not([hidden])~:not([hidden]){margin-left:.5rem}
.space-x-3>:not([hidden])~:not([hidden]){margin-left:.75rem}
.space-x-4>:not([hidden])~:not([hidden]){margin-left:1rem}
.space-x-6>:not([hidden])~:not([hidden]){margin-left:1.5rem}
.space-x-10>:not([hidden])~:not([hidden]){margin-left:2.5rem}

/* ---- Position ---- */
.absolute{position:absolute}
.relative{position:relative}
.fixed{position:fixed}
.sticky{position:sticky}
.inset-0{top:0;right:0;bottom:0;left:0;position:absolute}
.top-0{top:0}
.top-6{top:1.5rem}
.right-6{right:1.5rem}
.bottom-6{bottom:1.5rem}
.z-50{z-index:50}

/* ---- Overflow ---- */
.overflow-hidden{overflow:hidden}

/* ---- Width ---- */
.w-full{width:100%}
.w-1\.5{width:.375rem}
.w-2{width:.5rem}
.w-4{width:1rem}
.w-5{width:1.25rem}
.w-6{width:1.5rem}
.w-8{width:2rem}
.w-9{width:2.25rem}
.w-10{width:2.5rem}
.w-16{width:4rem}
.w-32{width:8rem}
.w-2\/3{width:66.666667%}
.w-5\/6{width:83.333333%}

/* ---- Height ---- */
.h-1{height:.25rem}
.h-1\.5{height:.375rem}
.h-2{height:.5rem}
.h-4{height:1rem}
.h-5{height:1.25rem}
.h-8{height:2rem}
.h-9{height:2.25rem}
.h-12{height:3rem}
.h-16{height:4rem}
.h-20{height:5rem}
.h-24{height:6rem}
.h-\[1px\]{height:1px}
.min-h-screen{min-height:100vh}
.min-h-\[160px\]{min-height:160px}

/* ---- Max Width ---- */
.max-w-xs{max-width:20rem}
.max-w-sm{max-width:24rem}
.max-w-lg{max-width:32rem}
.max-w-xl{max-width:36rem}
.max-w-2xl{max-width:42rem}
.max-w-3xl{max-width:48rem}
.max-w-4xl{max-width:56rem}
.max-w-5xl{max-width:64rem}
.max-w-6xl{max-width:72rem}

/* ---- Aspect Ratio ---- */
.aspect-video{aspect-ratio:16/9}

/* ---- Margin ---- */
.mx-auto{margin-left:auto;margin-right:auto}
.my-8{margin-top:2rem;margin-bottom:2rem}
.mt-1{margin-top:.25rem}
.mt-2{margin-top:.5rem}
.mt-4{margin-top:1rem}
.mt-6{margin-top:1.5rem}
.mt-8{margin-top:2rem}
.mt-12{margin-top:3rem}
.mb-1{margin-bottom:.25rem}
.mb-2{margin-bottom:.5rem}
.mb-3{margin-bottom:.75rem}
.mb-4{margin-bottom:1rem}
.mb-6{margin-bottom:1.5rem}
.mb-8{margin-bottom:2rem}
.mb-12{margin-bottom:3rem}
.mr-1{margin-right:.25rem}
.mr-2{margin-right:.5rem}

/* ---- Padding ---- */
.p-1{padding:.25rem}
.p-2{padding:.5rem}
.p-3{padding:.75rem}
.p-4{padding:1rem}
.p-6{padding:1.5rem}
.p-8{padding:2rem}
.px-1{padding-left:.25rem;padding-right:.25rem}
.px-2{padding-left:.5rem;padding-right:.5rem}
.px-4{padding-left:1rem;padding-right:1rem}
.px-5{padding-left:1.25rem;padding-right:1.25rem}
.px-6{padding-left:1.5rem;padding-right:1.5rem}
.py-0{padding-top:0;padding-bottom:0}
.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}
.py-1{padding-top:.25rem;padding-bottom:.25rem}
.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}
.py-2{padding-top:.5rem;padding-bottom:.5rem}
.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}
.py-3{padding-top:.75rem;padding-bottom:.75rem}
.py-4{padding-top:1rem;padding-bottom:1rem}
.py-12{padding-top:3rem;padding-bottom:3rem}
.pb-1{padding-bottom:.25rem}
.pb-24{padding-bottom:6rem}
.pt-2{padding-top:.5rem}
.pt-4{padding-top:1rem}
.pt-6{padding-top:1.5rem}
.pt-8{padding-top:2rem}
.pt-12{padding-top:3rem}
.pl-5{padding-left:1.25rem}

/* ---- Typography ---- */
.text-\[9px\]{font-size:9px;line-height:1.4}
.text-\[10px\]{font-size:10px;line-height:1.4}
.text-\[11px\]{font-size:11px;line-height:1.4}
.text-xs{font-size:.75rem;line-height:1rem}
.text-sm{font-size:.875rem;line-height:1.25rem}
.text-base{font-size:1rem;line-height:1.5rem}
.text-lg{font-size:1.125rem;line-height:1.75rem}
.text-xl{font-size:1.25rem;line-height:1.75rem}
.text-2xl{font-size:1.5rem;line-height:2rem}
.text-3xl{font-size:1.875rem;line-height:2.25rem}
.text-2\.5xl{font-size:1.6875rem;line-height:2.1rem}
.text-4\.5xl{font-size:2.625rem;line-height:1}
.font-light{font-weight:300}
.font-normal{font-weight:400}
.font-medium{font-weight:500}
.font-semibold{font-weight:600}
.font-bold{font-weight:700}
.font-extrabold{font-weight:800}
.tracking-tight{letter-spacing:-.025em}
.tracking-wide{letter-spacing:.025em}
.tracking-wider{letter-spacing:.05em}
.tracking-widest{letter-spacing:.1em}
.leading-tight{line-height:1.25}
.leading-normal{line-height:1.5}
.leading-relaxed{line-height:1.625}
.uppercase{text-transform:uppercase}
.italic{font-style:italic}
.text-center{text-align:center}
.text-right{text-align:right}
.text-white{color:#fff}
.text-teal-600{color:#0d9488}
.text-zinc-300{color:#d4d4d8}
.text-zinc-700{color:#3f3f46}
.list-disc{list-style-type:disc}
.list-none{list-style-type:none}

/* ---- Borders ---- */
.border{border-width:1px;border-style:solid}
.border-2{border-width:2px;border-style:solid}
.border-b{border-bottom-width:1px;border-bottom-style:solid}
.border-b-2{border-bottom-width:2px;border-bottom-style:solid}
.border-t{border-top-width:1px;border-top-style:solid}
.border-transparent{border-color:transparent}
.border-white{border-color:#fff}
.border-zinc-200{border-color:#e4e4e7}
.border-zinc-800{border-color:#27272a}
.border-opacity-20{border-color:rgb(0 0 0 / 0.2)}
.border-opacity-25{border-color:rgb(0 0 0 / 0.25)}
.border-opacity-30{border-color:rgb(0 0 0 / 0.3)}
.rounded{border-radius:.25rem}
.rounded-md{border-radius:.375rem}
.rounded-lg{border-radius:.5rem}
.rounded-xl{border-radius:.75rem}
.rounded-full{border-radius:9999px}
.ring-2{box-shadow:0 0 0 2px var(--tw-ring-color,currentColor)}
.ring-indigo-500{--tw-ring-color:#6366f1}

/* ---- Backgrounds ---- */
.bg-transparent{background-color:transparent}
.bg-white{background-color:#fff}
.bg-zinc-100{background-color:#f4f4f5}
.bg-zinc-200{background-color:#e4e4e7}
.bg-zinc-400{background-color:#a1a1aa}
.bg-zinc-800{background-color:#27272a}
.bg-zinc-900{background-color:#18181b}
.bg-teal-500{background-color:#14b8a6}
.bg-indigo-500{background-color:#6366f1}
.bg-emerald-700{background-color:#047857}

/* ---- Shadows ---- */
.shadow-sm{box-shadow:0 1px 2px 0 rgb(0 0 0/.05)}
.shadow-xl{box-shadow:0 20px 25px -5px rgb(0 0 0/.1),0 8px 10px -6px rgb(0 0 0/.1)}

/* ---- Opacity ---- */
.opacity-0{opacity:0}
.opacity-90{opacity:.9}

/* ---- Transform / Transition ---- */
.transform{transform:translateX(0)}
.scale-100{transform:scale(1)}
.scale-110{transform:scale(1.1)}
.translate-y-20{transform:translateY(5rem)}
.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}
.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}
.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}
.duration-300{transition-duration:.3s}

/* ---- Animation ---- */
@keyframes tw-pulse{50%{opacity:.5}}
.animate-pulse{animation:tw-pulse 2s cubic-bezier(.4,0,.6,1) infinite}

/* ---- Interaction ---- */
.cursor-pointer{cursor:pointer}
.focus\:outline-none:focus{outline:0}
.scroll-smooth{scroll-behavior:smooth}

/* ---- Selection ---- */
.selection\:bg-indigo-100 *::selection,.selection\:bg-indigo-100::selection{background-color:#e0e7ff}
.selection\:text-indigo-900 *::selection,.selection\:text-indigo-900::selection{color:#312e81}

/* ---- Group hover ---- */
.group:hover .group-hover\:bg-neutral-200{background-color:#e5e5e5}

/* ---- Hover states ---- */
.hover\:bg-zinc-800:hover{background-color:#27272a}
.hover\:bg-zinc-900:hover{background-color:#18181b}
.hover\:bg-neutral-100:hover{background-color:#f5f5f5}
.hover\:bg-opacity-80:hover{background-color:rgb(0 0 0 / 0.8)}
.hover\:border-zinc-300:hover{border-color:#d4d4d8}
.hover\:scale-110:hover{transform:scale(1.1)}
.hover\:shadow-sm:hover{box-shadow:0 1px 2px 0 rgb(0 0 0/.05)}
.hover\:bg-brand-hover:hover{background-color:var(--color-primary-hover)}
.hover\:bg-custom-offset:hover{background-color:var(--color-bg-offset)}
.hover\:text-custom-main:hover{color:var(--color-text-main)}
.hover\:border-custom:hover{border-color:var(--color-border)}

/* ---- Dark theme supplements ---- */
[data-theme="dark"] .dark\:bg-zinc-700{background-color:#3f3f46}
[data-theme="dark"] .dark\:bg-zinc-800{background-color:#27272a}
[data-theme="dark"] .dark\:border-zinc-900{border-color:#18181b}
[data-theme="dark"] .dark\:hover\:bg-neutral-800:hover{background-color:#262626}
[data-theme="dark"] .dark\:hover\:border-zinc-700:hover{border-color:#3f3f46}

/* ---- Responsive sm (640px) ---- */
@media (min-width:640px){
.sm\:flex-row{flex-direction:row}
.sm\:inline-flex{display:inline-flex}
.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}
.sm\:text-4\.5xl{font-size:2.625rem;line-height:1}
}

/* ---- Responsive md (768px) ---- */
@media (min-width:768px){
.md\:flex{display:flex}
.md\:hidden{display:none}
.md\:items-start{align-items:flex-start}
.md\:text-left{text-align:left}
.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.md\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}
.md\:col-span-5{grid-column:span 5/span 5}
.md\:col-span-7{grid-column:span 7/span 7}
}

/* ==========================================================================
   retreat preset — utilities used by presets/retreat/sections/*.php
   ========================================================================== */

/* ---- Typography ---- */
.font-serif{font-family:'Playfair Display',serif}
.text-slate-100{color:#f1f5f9}
.text-slate-200{color:#e2e8f0}
.text-slate-300{color:#cbd5e1}
.text-slate-400{color:#94a3b8}
.text-slate-500{color:#64748b}
.text-slate-950{color:#020617}
.text-amber-200{color:#fde68a}
.text-amber-300{color:#fcd34d}
.text-amber-400{color:#fbbf24}
.text-emerald-200{color:#a7f3d0}
.text-emerald-300{color:#6ee7b7}
.text-emerald-400{color:#34d399}
.text-purple-200{color:#e9d5ff}
.text-purple-300{color:#d8b4fe}
.text-purple-400{color:#c084fc}
.hover\:text-white:hover{color:#fff}

/* ---- Layout / Sizing ---- */
.inline-block{display:inline-block}
.items-end{align-items:flex-end}
.items-stretch{align-items:stretch}
.flex-shrink-0{flex-shrink:0}
.object-cover{object-fit:cover}
.pointer-events-none{pointer-events:none}
.gap-3{gap:.75rem}
.h-64{height:16rem}
.h-72{height:18rem}
.h-full{height:100%}
.w-12{width:3rem}
.w-72{width:18rem}
.z-10{z-index:10}
.mb-10{margin-bottom:2.5rem}
.mb-16{margin-bottom:4rem}
.mt-3{margin-top:.75rem}
.px-2\.5{padding-left:.625rem;padding-right:.625rem}
.px-3{padding-left:.75rem;padding-right:.75rem}
.px-8{padding-left:2rem;padding-right:2rem}
.px-10{padding-left:2.5rem;padding-right:2.5rem}
.py-5{padding-top:1.25rem;padding-bottom:1.25rem}

/* ---- Position ---- */
.inset-2{top:.5rem;right:.5rem;bottom:.5rem;left:.5rem}
.left-3{left:.75rem}
.right-8{right:2rem}
.bottom-3{bottom:.75rem}
.-top-4{top:-1rem}
.-top-24{top:-6rem}
.-bottom-24{bottom:-6rem}
.-left-24{left:-6rem}
.-right-24{right:-6rem}

/* ---- Borders / Radius ---- */
.rounded-2xl{border-radius:1rem}
.rounded-3xl{border-radius:1.5rem}
.scroll-mt-28{scroll-margin-top:7rem}
.border-white\/5{border-color:rgb(255 255 255/.05)}
.border-white\/10{border-color:rgb(255 255 255/.1)}
.border-white\/20{border-color:rgb(255 255 255/.2)}
.border-slate-500\/30{border-color:rgb(100 116 139/.3)}
.border-amber-500\/20{border-color:rgb(245 158 11/.2)}
.border-amber-500\/30{border-color:rgb(245 158 11/.3)}
.border-amber-500\/40{border-color:rgb(245 158 11/.4)}
.border-emerald-500\/20{border-color:rgb(16 185 129/.2)}
.border-emerald-500\/30{border-color:rgb(16 185 129/.3)}
.border-purple-500\/20{border-color:rgb(168 85 247/.2)}
.border-purple-500\/30{border-color:rgb(168 85 247/.3)}

/* ---- Backgrounds ---- */
.bg-white\/5{background-color:rgb(255 255 255/.05)}
.bg-white\/10{background-color:rgb(255 255 255/.1)}
.bg-amber-500\/10{background-color:rgb(245 158 11/.1)}
.bg-amber-500\/20{background-color:rgb(245 158 11/.2)}
.bg-emerald-500\/10{background-color:rgb(16 185 129/.1)}
.bg-emerald-500\/20{background-color:rgb(16 185 129/.2)}
.bg-purple-500\/10{background-color:rgb(168 85 247/.1)}
.bg-purple-500\/20{background-color:rgb(168 85 247/.2)}
.bg-slate-500\/20{background-color:rgb(100 116 139/.2)}
.hover\:bg-white\/20:hover{background-color:rgb(255 255 255/.2)}

/* ---- Gradients ---- */
.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}
.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}
.from-amber-500{--tw-gradient-from:#f59e0b;--tw-gradient-to:rgb(245 158 11/0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-slate-950\/80{--tw-gradient-from:rgb(2 6 23/.8);--tw-gradient-to:rgb(2 6 23/0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.via-amber-450{--tw-gradient-stops:var(--tw-gradient-from),#f59e0b,var(--tw-gradient-to)}
.via-transparent{--tw-gradient-stops:var(--tw-gradient-from),transparent,var(--tw-gradient-to)}
.to-amber-600{--tw-gradient-to:#d97706}
.to-transparent{--tw-gradient-to:transparent}
.hover\:from-amber-400:hover{--tw-gradient-from:#fbbf24;--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.hover\:to-amber-500:hover{--tw-gradient-to:#f59e0b}

/* ---- Effects ---- */
.backdrop-blur-md{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.blur-3xl{filter:blur(64px)}
.shadow-lg{box-shadow:0 10px 15px -3px rgb(0 0 0/.1),0 4px 6px -4px rgb(0 0 0/.1)}
.shadow-2xl{box-shadow:0 25px 50px -12px rgb(0 0 0/.25)}
.shadow-amber-500\/10{box-shadow:0 25px 50px -12px rgb(245 158 11/.1)}
.shadow-amber-500\/20{box-shadow:0 25px 50px -12px rgb(245 158 11/.2)}
.shadow-amber-500\/25{box-shadow:0 25px 50px -12px rgb(245 158 11/.25)}
.shadow-amber-500\/30{box-shadow:0 25px 50px -12px rgb(245 158 11/.3)}

/* ---- Transitions ---- */
.duration-500{transition-duration:.5s}
.duration-700{transition-duration:.7s}
.hover\:-translate-y-1:hover{transform:translateY(-.25rem)}
.group:hover .group-hover\:scale-105{transform:scale(1.05)}

/* ---- Responsive sm (640px) ---- */
@media (min-width:640px){
.sm\:w-auto{width:auto}
.sm\:h-72{height:18rem}
.sm\:pt-12{padding-top:3rem}
.sm\:p-8{padding:2rem}
.sm\:p-10{padding:2.5rem}
.sm\:p-14{padding:3.5rem}
.sm\:text-sm{font-size:.875rem;line-height:1.25rem}
.sm\:text-base{font-size:1rem;line-height:1.5rem}
.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}
.sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}
.sm\:text-5xl{font-size:3rem;line-height:1}
.sm\:leading-none{line-height:1}
.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}
.sm\:px-8{padding-left:2rem;padding-right:2rem}
.sm\:space-y-32>:not([hidden])~:not([hidden]){margin-top:8rem}
}

/* ---- Responsive md (768px) ---- */
@media (min-width:768px){
.md\:w-1\/4{width:25%}
.md\:w-3\/4{width:75%}
.md\:pt-0{padding-top:0}
.md\:pl-6{padding-left:1.5rem}
.md\:border-t-0{border-top-width:0}
.md\:border-l{border-left-width:1px;border-left-style:solid}
.md\:flex-row{flex-direction:row}
.md\:text-xl{font-size:1.25rem;line-height:1.75rem}
.md\:text-6xl{font-size:3.75rem;line-height:1}
.md\:-translate-y-4{transform:translateY(-1rem)}
}

/* ---- Responsive lg (1024px) ---- */
@media (min-width:1024px){
.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.lg\:text-7xl{font-size:4.5rem;line-height:1}
.lg\:px-8{padding-left:2rem;padding-right:2rem}
}

/* ---- nav/footer additions ---- */
.left-0{left:0}
.h-10{height:2.5rem}
.max-w-7xl{max-width:80rem}
.mt-20{margin-top:5rem}
.pt-28{padding-top:7rem}
.pb-16{padding-bottom:4rem}
.py-10{padding-top:2.5rem;padding-bottom:2.5rem}
.space-x-8>:not([hidden])~:not([hidden]){margin-left:2rem}
.space-y-24>:not([hidden])~:not([hidden]){margin-top:6rem}
.text-slate-600{color:#475569}
.bg-slate-950{background-color:#020617}
.hover\:text-amber-400:hover{color:#fbbf24}
.bg-gradient-to-tr{background-image:linear-gradient(to top right,var(--tw-gradient-stops))}
.to-emerald-400{--tw-gradient-to:#34d399}
.group:hover .group-hover\:bg-transparent{background-color:transparent}
.group:hover .group-hover\:text-slate-950{color:#020617}

/* Hosts cards: center as a group regardless of count (1, 2 or 3 hosts) */
.host-card{width:100%;max-width:400px;}
@media (min-width:768px){.host-card{flex:1 1 320px;max-width:380px;}}

/* ==========================================================================
   light variant — see docs/DESIGN-SYSTEM.md §2b for the cataloged values
   ========================================================================== */
body.lc-retreat[data-theme="light"]{background-color:#FAF6F0;color:#1f2937;}
body.lc-retreat[data-theme="light"]::-webkit-scrollbar-track{background:#FAF6F0;}
body.lc-retreat[data-theme="light"]::-webkit-scrollbar-thumb{background:rgba(0,0,0,.15);}
body.lc-retreat[data-theme="light"]::-webkit-scrollbar-thumb:hover{background:rgba(245,158,11,0.5);}

/* Text */
[data-theme="light"] .text-slate-100{color:#1e293b;}
[data-theme="light"] .text-slate-200{color:#334155;}
[data-theme="light"] .text-slate-300{color:#475569;}
[data-theme="light"] .text-slate-400{color:#64748b;}
[data-theme="light"] .text-slate-500{color:#94a3b8;}
[data-theme="light"] .text-slate-600{color:#94a3b8;}

/* Cards / panels: solid, not glass — blur-over-cream reads as flat gray, not frosted glass */
[data-theme="light"] .glass-card{background:#ffffff;backdrop-filter:none;-webkit-backdrop-filter:none;border:1px solid #e2e8f0;box-shadow:0 4px 16px rgba(15,23,42,0.06);}
[data-theme="light"] .glass-card:hover{background:#ffffff;border-color:rgba(245,158,11,0.4);transform:translateY(-5px);box-shadow:0 10px 28px rgba(245,158,11,0.15);}
[data-theme="light"] .glass-panel{background:#ffffff;backdrop-filter:none;-webkit-backdrop-filter:none;border:1px solid #e2e8f0;box-shadow:0 8px 24px rgba(15,23,42,0.08);}
[data-theme="light"] .glass-badge{background:rgba(245,158,11,0.1);border:1px solid rgba(245,158,11,0.3);backdrop-filter:none;}

/* Borders / subtle fills (dividers, secondary card border, secondary button) */
[data-theme="light"] .border-white\/5{border-color:rgba(15,23,42,0.06);}
[data-theme="light"] .border-white\/10{border-color:rgba(15,23,42,0.1);}
[data-theme="light"] .border-white\/20{border-color:rgba(15,23,42,0.15);}
[data-theme="light"] .bg-white\/5{background-color:rgba(15,23,42,0.03);}
[data-theme="light"] .bg-white\/10{background-color:rgba(15,23,42,0.05);}
[data-theme="light"] .hover\:bg-white\/20:hover{background-color:rgba(15,23,42,0.08);}

/* Ambient orbs: softer/pastel so they don't muddy the cream background */
[data-theme="light"] .bg-orb{opacity:0.35;}
[data-theme="light"] #bg-orb-1{background:radial-gradient(circle,rgba(245,158,11,0.35) 0%,rgba(245,158,11,0.05) 70%);}
[data-theme="light"] #bg-orb-2{background:radial-gradient(circle,rgba(16,185,129,0.3) 0%,rgba(16,185,129,0.05) 70%);}
[data-theme="light"] #bg-orb-3{background:radial-gradient(circle,rgba(168,85,247,0.3) 0%,rgba(168,85,247,0.05) 70%);}

/* ==========================================================================
   forest variant — moodier alternate dark theme (deep canopy, not navy).
   Glassmorphism reads fine on any dark/colorful bg (see DESIGN-SYSTEM §8),
   so .glass-card/.glass-panel/.glass-badge and the white/N border+bg
   utilities are deliberately left as the unscoped dark defaults — only the
   base background, muted-text tint and orb colors change.
   ========================================================================== */
body.lc-retreat[data-theme="forest"]{background-color:#0B1A12;color:#F1F0E4;}
body.lc-retreat[data-theme="forest"]::-webkit-scrollbar-track{background:#0B1A12;}
body.lc-retreat[data-theme="forest"]::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.15);}
body.lc-retreat[data-theme="forest"]::-webkit-scrollbar-thumb:hover{background:rgba(217,119,6,0.5);}

/* Text: warm ivory/moss tint instead of cool slate-blue */
[data-theme="forest"] .text-slate-100{color:#F3F1E7;}
[data-theme="forest"] .text-slate-200{color:#E4E1D0;}
[data-theme="forest"] .text-slate-300{color:#C9C7B0;}
[data-theme="forest"] .text-slate-400{color:#9C9A85;}
[data-theme="forest"] .text-slate-500{color:#726F5D;}
[data-theme="forest"] .text-slate-600{color:#565442;}

/* Ambient orbs: dawn-light amber, deep canopy emerald, pine teal in place of purple */
[data-theme="forest"] #bg-orb-1{background:radial-gradient(circle,rgba(202,138,4,0.7) 0%,rgba(217,119,6,0.15) 70%);}
[data-theme="forest"] #bg-orb-2{background:radial-gradient(circle,rgba(6,95,70,0.7) 0%,rgba(5,150,105,0.15) 70%);}
[data-theme="forest"] #bg-orb-3{background:radial-gradient(circle,rgba(19,78,74,0.7) 0%,rgba(15,118,110,0.15) 70%);}
