/* TRAME Solutions 2026 — Palette actualisée */

:root {
    --navy: #0F2957 !important;
    --signal-blue: #386BFF !important;
    --turquoise: #27CFC1 !important;
    --light-blue: #CFEOFF !important;
    --smoke-grey: #EEF3F8 !important;
    --white: #FFFFFF !important;
    --ink: #0F2957 !important;
    --ink-soft: #386BFF !important;
    --vermillion: #386BFF !important;
    --vermillion-dark: #0F2957 !important;
    --success: #27CFC1 !important;
}

body {
    background: var(--smoke-grey);
}

.site-header {
    border-bottom: 1px solid rgb(15 41 87 / .08);
    background: rgb(255 255 255 / .96);
}

.site-header .brand-logo {
    display: block;
    width: auto;
    height: 64px;
    max-width: min(250px, 32vw);
    object-fit: contain;
}

.button--vermillion,
.button--ink {
    background: var(--signal-blue);
    color: var(--white);
    border-color: transparent;
}

.button--vermillion:hover,
.button--ink:hover {
    background: var(--navy);
}

.hero {
    background: linear-gradient(135deg, var(--light-blue) 0%, var(--white) 100%);
}

.brand-logo--footer {
    width: auto;
    height: 68px;
    max-width: min(255px, 100%);
    filter: none;
    opacity: 1;
}

@media (max-width: 920px) {
    .site-header .brand-logo {
        height: 56px;
        max-width: 205px;
    }
}

@media (max-width: 640px) {
    .site-header .brand-logo {
        height: 48px;
        max-width: 175px;
    }

    .brand-logo--footer {
        height: 58px;
        max-width: 220px;
    }
}

.section-heading h1,
.section-heading h2,
.section-heading h3 {
    color: var(--navy);
}

.traveling-case-page .kaza-feature-list li p {
    display: block;
    margin: .5rem 0 0;
    color: var(--ink);
    line-height: 1.6;
}

/* Offre de lancement sur la page d’accueil */
.launch-offer{position:fixed;inset:50% auto auto 50%;width:min(900px,calc(100% - 32px));max-height:calc(100dvh - 32px);margin:0;padding:0;border:0;border-radius:22px;color:var(--navy);background:#fff;box-shadow:0 32px 100px rgb(8 28 69 / 30%);transform:translate(-50%,-50%);overflow:auto}
.launch-offer::backdrop{background:rgb(8 27 63 / 72%);backdrop-filter:blur(5px)}
.launch-offer__card{position:relative;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(230px,.8fr);grid-template-areas:"brand brand" "title price" "intro price" "features price" "actions price" "location price";gap:18px 36px;padding:clamp(24px,5vw,48px)}
.launch-offer__close{position:absolute;z-index:1;top:14px;right:14px;display:grid;place-items:center;width:42px;height:42px;padding:0;border:0;border-radius:50%;color:var(--navy);background:#eef3f8;font:inherit;font-size:30px;line-height:1;cursor:pointer}
.launch-offer__close:hover,.launch-offer__close:focus-visible{background:#dce8fa}
.launch-offer__brand{grid-area:brand;display:flex;align-items:center;justify-content:space-between;gap:20px;padding-right:45px}
.launch-offer__brand img{display:block;width:min(210px,42vw);height:auto}
.launch-offer__brand span{display:inline-block;padding:9px 13px;border-radius:999px;color:#fff;background:var(--signal-blue);font-size:12px;font-weight:800;letter-spacing:.09em;text-align:center;text-transform:uppercase}
.launch-offer h2{grid-area:title;margin:4px 0 0;max-width:13ch;color:var(--navy);font-family:var(--display);font-size:clamp(30px,4vw,46px);line-height:1.08}
.launch-offer__intro{grid-area:intro;margin:0;color:#425474;font-size:15px;line-height:1.65}
.launch-offer__price{grid-area:price;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:390px;padding:30px;border-radius:18px;color:#fff;background:linear-gradient(150deg,var(--navy),#2047a0 62%,var(--signal-blue));overflow:hidden}
.launch-offer__price::before{content:"";display:block;width:50px;height:8px;margin-bottom:30px;background:var(--turquoise)}
.launch-offer__price>span{font-size:14px;font-weight:700;letter-spacing:.04em}
.launch-offer__price strong{display:block;margin-top:12px;font-family:var(--display);font-size:clamp(80px,10vw,132px);line-height:1;letter-spacing:-.07em;white-space:nowrap}
.launch-offer__price b{align-self:flex-end;margin-right:6px;color:#adfff4;font-size:clamp(22px,3vw,32px)}
.launch-offer__price p{max-width:20ch;margin:32px 0 0;color:#e5edff;font-size:16px;line-height:1.5}
.launch-offer__features{grid-area:features;display:grid;gap:8px;margin:2px 0 0;padding:0;list-style:none;font-size:14px;font-weight:600}
.launch-offer__features li{display:flex;gap:10px;align-items:flex-start}
.launch-offer__features li::before{content:"✓";flex:0 0 auto;color:#087f77;font-weight:900}
.launch-offer__actions{grid-area:actions;display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:4px}
.launch-offer__cta{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;padding:12px 20px;border-radius:8px;color:#fff;background:var(--signal-blue);font-weight:800;text-decoration:none}
.launch-offer__cta:hover,.launch-offer__cta:focus-visible{color:#fff;background:var(--navy)}
.launch-offer__actions button{padding:10px 4px;border:0;color:#425474;background:transparent;font:inherit;font-size:14px;text-decoration:underline;cursor:pointer}
.launch-offer__location{grid-area:location;margin:0;color:#5d6d88;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
@media(max-width:680px){
.launch-offer{max-height:calc(100dvh - 20px)}
.launch-offer__card{grid-template-columns:minmax(0,1fr);grid-template-areas:"brand" "title" "price" "intro" "features" "actions" "location";gap:16px;padding:22px}
.launch-offer__brand{align-items:flex-start;flex-direction:column;gap:10px}
.launch-offer__brand img{width:160px}
.launch-offer__brand span{font-size:10px}
.launch-offer h2{max-width:none;margin:0;font-size:clamp(28px,8vw,38px)}
.launch-offer__price{min-height:0;padding:22px}
.launch-offer__price::before{margin-bottom:12px}
.launch-offer__price strong{margin-top:4px;font-size:clamp(72px,20vw,100px)}
.launch-offer__price b{font-size:22px}
.launch-offer__price p{max-width:none;margin-top:12px;font-size:14px}
}
