:root{
    --laxx-bg:#f6f2eb;
    --laxx-ink:#15233a;
    --laxx-soft:#6d7788;
    --laxx-card:#ffffff;
    --laxx-border:#e6dece;
    --laxx-sun:#ffb347;
    --laxx-sun-2:#ff8f3f;
    --laxx-mint:#86d5c0;
    --laxx-sky:#6eb8ff;
    --laxx-shadow:0 16px 42px rgba(17,29,54,.10);
    --laxx-radius:28px;
}
.laxx-shell,.laxx-shell *{box-sizing:border-box}
.laxx-shell{position:relative;color:var(--laxx-ink);font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif}
.laxx-hero{
    position:relative;overflow:hidden;border-radius:32px;
    background:
      radial-gradient(circle at 15% 18%, rgba(255,194,102,.55), transparent 22%),
      radial-gradient(circle at 84% 24%, rgba(110,184,255,.35), transparent 25%),
      linear-gradient(135deg, #1a3a5f 0%, #264d78 22%, #325d8f 42%, #5c7ca1 60%, #ffb065 110%);
    min-height:clamp(360px, 50vw, 520px);
    box-shadow:var(--laxx-shadow);
}
.laxx-hero:before{
    content:"";position:absolute;inset:auto -8% -14% auto;width:52%;height:88%;
    background:
      radial-gradient(circle at 50% 20%, rgba(255,255,255,.18), transparent 18%),
      linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,0));
    border-radius:50%;
    filter:blur(2px);
}
.laxx-hero:after{
    content:"";position:absolute;left:0;right:0;bottom:-1px;height:36%;
    background:linear-gradient(to top, rgba(8,27,50,.38), transparent);
}
.laxx-hero__shade{position:absolute;inset:0;background:linear-gradient(90deg, rgba(6,18,34,.70) 0%, rgba(6,18,34,.40) 48%, rgba(6,18,34,.08) 100%)}
.laxx-hero__content{position:relative;z-index:2;max-width:760px;padding:42px 42px 28px}
.laxx-kicker{
    display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border-radius:999px;
    background:rgba(9,20,34,.42);color:#ffe9b7;font-weight:800;font-size:12px;letter-spacing:.18em;text-transform:uppercase;
    border:1px solid rgba(255,255,255,.10)
}
.laxx-title{margin:18px 0 10px;color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:clamp(38px, 7vw, 74px);line-height:.95;font-weight:900;letter-spacing:-.04em}
.laxx-subtitle{max-width:660px;margin:0;color:rgba(255,255,255,.92);font-size:clamp(18px,2.1vw,28px);line-height:1.48}
.laxx-hero__actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:26px}
.laxx-btn{
    appearance:none;border:0;border-radius:999px;padding:16px 22px;font-size:17px;font-weight:800;cursor:pointer;
    transition:transform .18s ease, box-shadow .18s ease, opacity .18s ease;
}
.laxx-btn:hover{transform:translateY(-1px)}
.laxx-btn--sun{background:linear-gradient(135deg, var(--laxx-sun), var(--laxx-sun-2));color:#132131;box-shadow:0 14px 30px rgba(255,143,63,.26)}
.laxx-btn--mint{background:linear-gradient(135deg, #8fe1cb, #57c8a9);color:#103237;box-shadow:0 14px 30px rgba(87,200,169,.22)}
.laxx-btn--outline{background:#fff;color:var(--laxx-ink);border:1px solid #e0d7c5}
.laxx-strip{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.laxx-strip .laxx-cat{
    display:inline-flex;align-items:center;gap:8px;padding:12px 14px;border-radius:999px;
    background:rgba(9,20,34,.30);color:#fff;border:1px solid rgba(255,255,255,.14);font-weight:700;font-size:15px;cursor:pointer
}
.laxx-strip .laxx-cat.is-active{background:linear-gradient(135deg,#ffd78c,#ffb347);color:#11253b;border-color:transparent}
.laxx-catalog{margin-top:20px;background:rgba(255,255,255,.72);backdrop-filter:blur(8px);border:1px solid rgba(233,223,209,.95);border-radius:30px;padding:28px;box-shadow:var(--laxx-shadow)}
.laxx-catalog__head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}
.laxx-overline{font-size:12px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:#d58b2f}
.laxx-catalog__title{margin:10px 0 6px;font-size:clamp(32px,4vw,52px);line-height:1.02;letter-spacing:-.03em}
.laxx-catalog__note{margin:0;color:var(--laxx-soft);font-size:16px;line-height:1.5}
.laxx-filters{display:grid;gap:14px;margin-top:18px}
.laxx-filters__row{display:flex;flex-wrap:wrap;gap:10px}
.laxx-pill{
    display:inline-flex;align-items:center;gap:8px;padding:11px 14px;border-radius:999px;background:#fff;border:1px solid var(--laxx-border);
    color:var(--laxx-ink);font-weight:700;font-size:14px;cursor:pointer
}
.laxx-pill.is-active{background:linear-gradient(135deg,#11253b,#234867);color:#fff;border-color:transparent}
.laxx-state{display:flex;flex-wrap:wrap;gap:10px}
.laxx-state span{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:#f0e8da;color:#4b5565;font-weight:700;font-size:13px}
.laxx-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:18px}
.laxx-card{
    display:flex;flex-direction:column;min-height:100%;overflow:hidden;border-radius:26px;background:linear-gradient(180deg,#fff,#fffaf3);
    border:1px solid #eadfcc;box-shadow:0 16px 34px rgba(18,32,53,.08)
}
.laxx-card__media{aspect-ratio:1.2/0.78;background:#dfe8ef;overflow:hidden}
.laxx-card__media img{display:block;width:100%;height:100%;object-fit:cover}
.laxx-card__body{display:flex;flex-direction:column;gap:12px;padding:16px}
.laxx-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.laxx-card__category{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 10px;border-radius:999px;background:#122742;color:#fff;font-size:12px;font-weight:800}
.laxx-card__price{font-weight:900;color:#245f57;font-size:18px;white-space:nowrap}
.laxx-card__title{margin:0;color:#18243b;font-size:20px;line-height:1.25;font-weight:900;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:50px}
.laxx-card__stats{display:flex;flex-wrap:wrap;gap:12px;color:#5d6675;font-size:14px;font-weight:700}
.laxx-card__tags{display:flex;flex-wrap:wrap;gap:8px}
.laxx-tag{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:#f2ecdf;color:#62594a;font-size:12px;font-weight:800}
.laxx-card__desc{margin:0;color:#5d6675;font-size:14px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.laxx-card__footer{margin-top:auto;padding-top:4px}
.laxx-card__btn{width:100%;min-height:48px;border:0;border-radius:16px;background:linear-gradient(135deg,#17304f,#2c577c);color:#fff;font-size:16px;font-weight:800;cursor:pointer}
.laxx-load{display:flex;justify-content:center;margin-top:22px}
.laxx-sheet,.laxx-quiz{position:fixed;inset:0;z-index:9999;display:none}
.laxx-sheet.is-open,.laxx-quiz.is-open{display:block}
.laxx-sheet__backdrop,.laxx-quiz__backdrop{position:absolute;inset:0;background:rgba(5,11,20,.6);backdrop-filter:blur(4px)}
.laxx-sheet__panel{
    position:absolute;right:14px;top:14px;bottom:14px;width:min(640px,calc(100vw - 28px));background:#0f2033;color:#fff;border-radius:28px;
    overflow:auto;box-shadow:0 24px 60px rgba(0,0,0,.32);padding:24px
}
.laxx-sheet__close,.laxx-quiz__close{position:absolute;right:18px;top:16px;width:42px;height:42px;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:26px;cursor:pointer}
.laxx-detail__hero{aspect-ratio:1.4/0.86;border-radius:22px;overflow:hidden;background:#26384a}
.laxx-detail__hero img{width:100%;height:100%;object-fit:cover}
.laxx-detail__title{margin:18px 0 10px;color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:34px;line-height:1.06;font-weight:900}
.laxx-detail__lead{margin:0;color:rgba(255,255,255,.86);font-size:16px;line-height:1.65}
.laxx-detail__meta{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}
.laxx-detail__meta span{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.1);font-size:13px;font-weight:800}
.laxx-detail__action{display:flex;justify-content:center;margin-top:22px}
.laxx-detail__action a{display:inline-flex;align-items:center;justify-content:center;min-width:260px;padding:16px 22px;border-radius:16px;background:linear-gradient(135deg,#ffcf73,#ff9e42);color:#132131;text-decoration:none;font-weight:900}
.laxx-quiz__panel{
    position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(560px,calc(100vw - 28px));background:#132842;color:#fff;
    border-radius:30px;padding:28px 24px 24px;box-shadow:0 24px 60px rgba(0,0,0,.32)
}
.laxx-quiz__step{font-size:12px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:#ffd082}
.laxx-quiz__title{margin:12px 0 6px;color:#fff;font-size:34px;line-height:1.05;font-weight:900}
.laxx-quiz__help{margin:0;color:rgba(255,255,255,.82);font-size:15px;line-height:1.55}
.laxx-quiz__options{display:grid;gap:12px;margin-top:18px}
.laxx-option{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.08);cursor:pointer}
.laxx-option:hover{background:rgba(255,255,255,.12)}
.laxx-option__emoji{font-size:24px;line-height:1}
.laxx-option__label{display:block;color:#fff;font-size:17px;font-weight:900}
.laxx-option__desc{display:block;color:rgba(255,255,255,.74);font-size:13px;line-height:1.45;margin-top:3px}
.laxx-quiz__trail{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.laxx-quiz__trail span{display:inline-flex;align-items:center;padding:8px 10px;border-radius:999px;background:rgba(255,255,255,.12);font-size:12px;font-weight:800}
@media (max-width:1180px){.laxx-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:860px){
    .laxx-shell{margin-inline:-4px}
    .laxx-hero__content{padding:28px 20px 22px}
    .laxx-title{font-size:44px}
    .laxx-catalog{padding:20px}
    .laxx-catalog__head{flex-direction:column}
    .laxx-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:560px){
    .laxx-title{font-size:36px}
    .laxx-subtitle{font-size:16px}
    .laxx-strip{gap:8px}
    .laxx-strip .laxx-cat{font-size:13px;padding:10px 12px}
    .laxx-filters__row{display:grid;grid-template-columns:1fr 1fr;gap:8px}
    .laxx-pill{justify-content:center;text-align:center}
    .laxx-grid{grid-template-columns:1fr}
    .laxx-card__title{font-size:19px}
    .laxx-sheet__panel{inset:auto 10px 10px 10px;width:auto;height:86vh}
    .laxx-quiz__panel{padding:24px 18px 18px}
    .laxx-quiz__title{font-size:28px}
}

/* Final LA layout fix */
.laxx-grid{
    align-items:stretch;
}
.laxx-card{
    height:100%;
}
.laxx-card__body{
    height:100%;
}
.laxx-card__stats{
    min-height:20px;
}
.laxx-card__tags{
    min-height:32px;
    align-items:flex-start;
    align-content:flex-start;
}
.laxx-card__desc{
    min-height:calc(1.55em * 4);
}
.laxx-card__footer{
    margin-top:auto;
}

.laxx-sheet__panel{
    left:50%;
    right:auto;
    top:50%;
    bottom:auto;
    transform:translate(-50%,-50%);
    width:min(700px, calc(100vw - 28px));
    max-height:calc(100vh - 28px);
}
@media (max-width:560px){
    .laxx-sheet__panel{
        left:10px;
        right:10px;
        top:auto;
        bottom:10px;
        transform:none;
        width:auto;
        height:86vh;
        max-height:none;
    }
}

/* Force quiz title white against site theme overrides */
.laxx-quiz__title,
.laxx-shell .laxx-quiz__title,
.laxx-shell h3.laxx-quiz__title{
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
    text-shadow:0 10px 30px rgba(0,0,0,.34);
}
.laxx-quiz__title *{
    color:inherit !important;
    -webkit-text-fill-color:inherit !important;
}

/* === Critical embedded-page fix: no iframe layout, no sideways scroll, viewport modals === */
.laxx-shell,
.laxx-shell * {
    max-width: 100%;
    min-width: 0;
}
.laxx-shell {
    width: 100%;
    max-width: 100%;
    overflow-x: clip;
    isolation: isolate;
}
.laxx-hero,
.laxx-catalog,
.laxx-grid,
.laxx-card,
.laxx-card__body,
.laxx-filters,
.laxx-filters__row,
.laxx-strip {
    max-width: 100%;
}
.laxx-card__title,
.laxx-card__desc,
.laxx-pill,
.laxx-cat,
.laxx-tag,
.laxx-option__label,
.laxx-option__desc {
    overflow-wrap: anywhere;
    word-break: normal;
}
.laxx-detail__action a {
    max-width: 100%;
    white-space: normal;
    text-align: center;
}
body.laxx-modal-open {
    overflow: hidden !important;
    touch-action: none;
}
.laxx-sheet,
.laxx-quiz {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147483000 !important;
    display: none !important;
    width: 100vw !important;
    max-width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    padding: 16px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    background: transparent !important;
    transform: none !important;
    contain: none !important;
}
.laxx-sheet.is-open,
.laxx-quiz.is-open {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}
.laxx-sheet__backdrop,
.laxx-quiz__backdrop {
    position: fixed !important;
    inset: 0 !important;
    z-index: 0 !important;
    background: rgba(5, 11, 20, .62) !important;
    backdrop-filter: blur(4px);
}
.laxx-sheet__panel,
.laxx-quiz__panel {
    position: relative !important;
    z-index: 1 !important;
    inset: auto !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    transform: none !important;
    margin: auto !important;
    box-sizing: border-box !important;
    max-width: calc(100vw - 32px) !important;
    max-height: calc(100vh - 32px) !important;
    max-height: calc(100dvh - 32px) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
}
.laxx-sheet__panel {
    width: min(700px, calc(100vw - 32px)) !important;
    background: #0f2033 !important;
    color: #fff !important;
    border-radius: 28px !important;
    padding: 24px !important;
}
.laxx-quiz__panel {
    width: min(560px, calc(100vw - 32px)) !important;
    background: #132842 !important;
    color: #fff !important;
    border-radius: 30px !important;
    padding: 28px 24px 24px !important;
}
.laxx-sheet__close,
.laxx-quiz__close {
    position: absolute !important;
    right: 14px !important;
    top: 12px !important;
    z-index: 3 !important;
    flex: 0 0 auto !important;
}
@media (max-width: 860px) {
    .laxx-shell {
        margin-inline: 0 !important;
    }
}
@media (max-width: 640px) {
    .laxx-grid {
        grid-template-columns: 1fr !important;
    }
    .laxx-catalog {
        padding: 16px !important;
        border-radius: 22px !important;
    }
    .laxx-sheet,
    .laxx-quiz {
        align-items: flex-start !important;
        padding: 12px !important;
        padding-top: max(12px, env(safe-area-inset-top)) !important;
    }
    .laxx-sheet__panel,
    .laxx-quiz__panel {
        width: 100% !important;
        max-width: 100% !important;
        max-height: calc(100dvh - 24px) !important;
        border-radius: 22px !important;
    }
    .laxx-quiz__title,
    .laxx-detail__title {
        font-size: 28px !important;
    }
}
