/* SéjourGuadeloupe — design system */
@font-face{font-family:"Inter";src:url(../fonts/inter-var.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Fraunces";src:url(../fonts/fraunces-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}

:root{
  --bg:#FBF8F3;--sand:#F4ECDF;--sand-2:#EADFCC;--card:#fff;
  --ink:#16262A;--ink-2:#3B4C50;--muted:#677578;--line:#E6DCCB;
  --lagoon:#0E6E73;--lagoon-d:#0A5357;--lagoon-l:#E2F0EE;
  --coral:#DD5D3C;--coral-d:#BE4627;--leaf:#2F7D4F;--wa:#1E9E58;
  --r:14px;--r-l:22px;--r-s:10px;
  --sh:0 1px 2px rgba(22,38,42,.06),0 6px 18px rgba(22,38,42,.06);
  --sh-l:0 2px 6px rgba(22,38,42,.06),0 18px 40px rgba(22,38,42,.12);
  --f:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --fd:"Fraunces",Georgia,"Times New Roman",serif;
  --w:1200px;--gut:clamp(16px,4vw,32px);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.6 var(--f);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto;display:block}
a{color:var(--lagoon);text-decoration-thickness:1px;text-underline-offset:2px}
a:hover{color:var(--lagoon-d)}
h1,h2,h3,h4{line-height:1.18;margin:0 0 .5em;color:var(--ink);letter-spacing:-.01em}
h1,h2,.sg-display{font-family:var(--fd);font-weight:600}
h1{font-size:clamp(1.9rem,4.4vw,3rem)}
h2{font-size:clamp(1.45rem,3vw,2.05rem)}
h3{font-size:1.15rem;font-weight:650}
p{margin:0 0 1em}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:3px solid #F2B84B;outline-offset:2px;border-radius:4px}
.screen-reader-text,.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.skip{position:absolute;left:-999px;top:8px;background:#fff;padding:8px 12px;z-index:100;border-radius:8px}.skip:focus{left:8px}
.wrap{max-width:var(--w);margin:0 auto;padding:0 var(--gut)}
.sec{padding:clamp(44px,7vw,84px) 0}
.sec--sand{background:var(--sand)}
.sec__head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:24px;flex-wrap:wrap}
.sec__head p{color:var(--muted);margin:0;max-width:640px}
.eyebrow{display:inline-block;font:600 .78rem/1 var(--f);letter-spacing:.12em;text-transform:uppercase;color:var(--coral-d);margin-bottom:12px}
.sg-i{width:22px;height:22px;flex:none}

/* Buttons */
.sg-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 20px;border-radius:999px;border:1.5px solid transparent;font-weight:600;font-size:.97rem;text-decoration:none;cursor:pointer;transition:background .15s,color .15s,border-color .15s,transform .1s;white-space:nowrap}
.sg-btn:active{transform:translateY(1px)}
.sg-btn--primary{background:var(--coral);color:#fff}.sg-btn--primary:hover{background:var(--coral-d);color:#fff}
.sg-btn--lagoon{background:var(--lagoon);color:#fff}.sg-btn--lagoon:hover{background:var(--lagoon-d);color:#fff}
.sg-btn--ghost{background:#fff;border-color:var(--line);color:var(--ink)}.sg-btn--ghost:hover{border-color:var(--ink-2);color:var(--ink)}
.sg-btn--wa{background:var(--wa);color:#fff}.sg-btn--wa:hover{background:#178447;color:#fff}
.sg-btn--block{width:100%}
.sg-btn .sg-i{width:20px;height:20px}
.sg-btn:disabled{opacity:.6;cursor:wait}

/* Header */
.hd{position:sticky;top:0;z-index:40;background:rgba(251,248,243,.92);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid rgba(230,220,203,.7)}
.hd__in{display:flex;align-items:center;gap:20px;height:66px}
.logo{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--ink);font:600 1.28rem/1 var(--fd);letter-spacing:-.01em;flex:none}
.logo b{color:var(--lagoon);font-weight:600}
.logo svg{width:32px;height:32px}
.nav{display:flex;gap:2px;margin-left:auto;align-items:center}
.nav a{padding:9px 12px;border-radius:999px;text-decoration:none;color:var(--ink-2);font-weight:550;font-size:.95rem}
.nav a:hover,.nav a[aria-current]{background:var(--sand);color:var(--ink)}
.nav .sg-btn{margin-left:8px;min-height:40px;padding:0 16px;font-size:.9rem}
.burger{display:none;margin-left:auto;background:none;border:0;padding:8px;cursor:pointer;border-radius:10px}
.burger .sg-i{width:26px;height:26px}
.drawer{position:fixed;inset:0;z-index:60;background:var(--bg);overflow-y:auto;padding:0 var(--gut) 40px;transform:translateX(100%);transition:transform .22s ease;visibility:hidden}
.drawer.is-open{transform:none;visibility:visible}
.drawer__top{display:flex;align-items:center;justify-content:space-between;height:66px}
.drawer__list{list-style:none;margin:8px 0 22px;padding:0}
.drawer__list a{display:flex;align-items:center;gap:14px;padding:13px 4px;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink);font-weight:600;font-size:1.06rem}
.drawer__list .ico{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;color:#fff}
.drawer__links a{display:block;padding:9px 4px;color:var(--ink-2);text-decoration:none}
@media (max-width:980px){.nav{display:none}.burger{display:block}}

/* Hero */
.hero{position:relative;color:#fff;overflow:hidden;isolation:isolate;background:#0B4F55}
.hero__bg{position:absolute;inset:0;z-index:-2;background:
  radial-gradient(120% 90% at 85% 10%,rgba(242,184,75,.45) 0,rgba(242,184,75,0) 45%),
  radial-gradient(90% 80% at 0% 100%,rgba(28,160,150,.75) 0,rgba(28,160,150,0) 60%),
  linear-gradient(160deg,#0C5E66 0%,#0E7A80 45%,#13918C 70%,#E9D7B5 140%)}
.hero__bg img{width:100%;height:100%;object-fit:cover}
.hero--photo .hero__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,30,33,.15) 0,rgba(8,30,33,.55) 100%)}
.hero__waves{position:absolute;left:0;right:0;bottom:-1px;z-index:-1;width:100%;height:auto;color:var(--bg)}
.hero__in{padding:clamp(56px,10vw,120px) 0 clamp(80px,11vw,140px);max-width:900px}
.hero h1{color:#fff;font-size:clamp(2.1rem,5.4vw,3.7rem);margin-bottom:.35em;text-wrap:balance}
.hero p.lead{font-size:clamp(1.02rem,1.8vw,1.22rem);color:rgba(255,255,255,.9);max-width:640px;margin-bottom:28px}
.trust{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:20px;font-size:.92rem;color:rgba(255,255,255,.92)}
.trust span{display:inline-flex;align-items:center;gap:7px}
.trust .sg-i{width:18px;height:18px;color:#F6CF7E}

/* Search box */
.sbox{background:#fff;border-radius:var(--r-l);box-shadow:var(--sh-l);padding:10px;display:grid;grid-template-columns:1.3fr 1fr auto;gap:8px;color:var(--ink)}
.sbox__f{position:relative;display:flex;flex-direction:column;justify-content:center;padding:8px 14px 8px 46px;border-radius:14px;min-height:62px;background:var(--bg)}
.sbox__f .sg-i{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--lagoon)}
.sbox__f label{font-size:.74rem;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);line-height:1.2}
.sbox__f select{appearance:none;-webkit-appearance:none;border:0;background:transparent;padding:2px 22px 2px 0;font-size:1rem;font-weight:550;width:100%;cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%23677578' stroke-width='1.8'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 2px center}
.sbox__f select:focus{outline:none}.sbox__f:focus-within{box-shadow:0 0 0 2px var(--lagoon) inset}
.sbox .sg-btn{min-height:62px;border-radius:14px;padding:0 26px;font-size:1.02rem}
.sbox--compact{box-shadow:var(--sh);border:1px solid var(--line)}
.sbox--compact .sbox__f{min-height:54px}.sbox--compact .sg-btn{min-height:54px}
@media (max-width:760px){.sbox{grid-template-columns:1fr}.sbox .sg-btn{min-height:54px}}

/* Univers tiles */
.uni-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.uni{position:relative;display:flex;flex-direction:column;gap:10px;background:#fff;border-radius:var(--r-l);padding:20px;box-shadow:var(--sh);text-decoration:none;color:var(--ink);border:1px solid rgba(230,220,203,.6);transition:transform .15s,box-shadow .15s}
.uni:hover{transform:translateY(-2px);box-shadow:var(--sh-l);color:var(--ink)}
.uni__ico{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;color:#fff}
.uni__ico .sg-i{width:26px;height:26px}
.uni h3{margin:4px 0 0;font-family:var(--fd);font-weight:600;font-size:1.32rem}
.uni__subs{display:flex;flex-wrap:wrap;gap:6px}
.uni__subs span{font-size:.82rem;background:var(--bg);border-radius:999px;padding:3px 10px;color:var(--ink-2)}
.uni__count{font-size:.85rem;color:var(--muted)}

/* Chips */
.chips{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 8px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.chips::-webkit-scrollbar{display:none}
.chips--wrap{flex-wrap:wrap;overflow:visible}
.chip{display:inline-flex;align-items:center;gap:6px;flex:none;padding:8px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:.92rem;font-weight:550;color:var(--ink-2);text-decoration:none;white-space:nowrap}
.chip:hover{border-color:var(--ink-2);color:var(--ink)}
.chip.is-on{background:var(--ink);border-color:var(--ink);color:#fff}
.chip small{color:var(--muted);font-weight:500}.chip.is-on small{color:rgba(255,255,255,.7)}
.chip .sg-i{width:16px;height:16px}

/* Destinations */
.dest-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px}
.dest{position:relative;min-height:220px;border-radius:var(--r-l);overflow:hidden;display:flex;align-items:flex-end;padding:18px;color:#fff;text-decoration:none;isolation:isolate}
.dest::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--g)}
.dest::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(0,0,0,0) 35%,rgba(0,0,0,.45))}
.dest img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1}
.dest h3{color:#fff;font-family:var(--fd);font-size:1.45rem;margin:0 0 4px}
.dest p{margin:0;font-size:.9rem;color:rgba(255,255,255,.92);line-height:1.4}
.dest:hover{color:#fff}.dest:hover h3{text-decoration:underline;text-underline-offset:4px}

/* Cards */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(285px,1fr));gap:20px}
.card{position:relative;display:flex;flex-direction:column;background:#fff;border-radius:var(--r-l);overflow:hidden;box-shadow:var(--sh);border:1px solid rgba(230,220,203,.55);transition:box-shadow .15s,transform .15s}
.card:hover{box-shadow:var(--sh-l);transform:translateY(-2px)}
.card__media{position:relative;aspect-ratio:4/3;background:var(--sand);overflow:hidden}
.card__media img{width:100%;height:100%;object-fit:cover}
.card__tag{position:absolute;left:12px;top:12px;background:rgba(255,255,255,.94);color:var(--ink);border-radius:999px;padding:5px 11px;font-size:.78rem;font-weight:650}
.card__body{display:flex;flex-direction:column;gap:6px;padding:16px 18px 18px;flex:1}
.card__title{font-size:1.12rem;font-weight:700;margin:0;line-height:1.3}
.card__title a{color:var(--ink);text-decoration:none}
.card__title a::after{content:"";position:absolute;inset:0;z-index:1}
.card__loc{display:flex;align-items:center;gap:5px;font-size:.88rem;color:var(--muted)}
.card__loc .sg-i{width:16px;height:16px}
.card__txt{font-size:.94rem;color:var(--ink-2);margin:2px 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.card__foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:10px}
.card__price{font-size:.9rem;color:var(--ink-2)}.card__price b{color:var(--ink);font-size:1.02rem}
.card__acts{display:flex;gap:6px;position:relative;z-index:2}
.card__acts a{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--bg);color:var(--ink-2);border:1px solid var(--line)}
.card__acts a:hover{background:var(--lagoon);color:#fff;border-color:var(--lagoon)}
.card__acts a.wa:hover{background:var(--wa);border-color:var(--wa)}
.card__acts .sg-i{width:19px;height:19px}

/* Placeholder visuel (sans photo) */
.ph{position:absolute;inset:0;display:grid;place-items:center;color:rgba(255,255,255,.9);background:
  radial-gradient(80% 70% at 85% 15%,rgba(255,255,255,.22),rgba(255,255,255,0) 60%),
  linear-gradient(145deg,var(--c,#0E6E73),color-mix(in srgb,var(--c,#0E6E73) 55%,#E9D7B5))}
.ph .sg-i{width:46px;height:46px;stroke-width:1.3}

/* Listing page */
.lhead{padding:28px 0 8px}
.crumbs{font-size:.86rem;color:var(--muted);margin-bottom:12px}
.crumbs a{color:var(--muted);text-decoration:none}.crumbs a:hover{color:var(--ink);text-decoration:underline}
.crumbs span[aria-hidden]{margin:0 6px;opacity:.6}
.lhead h1{margin-bottom:.3em}
.lhead .intro{color:var(--ink-2);max-width:760px;font-size:1.04rem}
.lbar{display:flex;flex-direction:column;gap:12px;margin:18px 0 22px}
.count{font-size:.95rem;color:var(--muted);margin:0 0 16px}
.filters{border:1px solid var(--line);border-radius:var(--r);background:#fff}
.filters summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;padding:12px 16px;font-weight:600}
.filters summary::-webkit-details-marker{display:none}
.filters[open] summary{border-bottom:1px solid var(--line)}
.filters__in{padding:14px 16px;display:flex;flex-direction:column;gap:14px}
.filters__in fieldset{border:0;margin:0;padding:0}
.filters__in legend{font-weight:650;font-size:.9rem;margin-bottom:8px}
.checks{display:flex;flex-wrap:wrap;gap:8px}
.checks label{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border:1px solid var(--line);border-radius:999px;font-size:.9rem;cursor:pointer;background:var(--bg)}
.checks input{accent-color:var(--lagoon)}
.filters__row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.filters__row input[type=number]{width:110px;min-height:44px;border:1px solid var(--line);border-radius:10px;padding:0 12px;background:var(--bg)}
.empty{background:#fff;border-radius:var(--r-l);padding:clamp(24px,5vw,44px);box-shadow:var(--sh);text-align:center;max-width:760px;margin:10px auto 0}
.empty h2{font-size:1.5rem}
.empty .actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:18px}
.pager{display:flex;gap:6px;justify-content:center;margin:34px 0 0;flex-wrap:wrap}
.pager .page-numbers{min-width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:#fff;border:1px solid var(--line);text-decoration:none;color:var(--ink);padding:0 10px}
.pager .current{background:var(--ink);border-color:var(--ink);color:#fff}
.editorial{max-width:780px}
.related{margin-top:10px}

/* Bandeau CTA */
.band{border-radius:var(--r-l);padding:clamp(26px,5vw,48px);display:grid;grid-template-columns:1.4fr auto;gap:22px;align-items:center}
.band h2{margin-bottom:.3em}.band p{margin:0;color:var(--ink-2);max-width:620px}
.band--lagoon{background:linear-gradient(135deg,#0E6E73,#13918C);color:#fff}
.band--lagoon h2,.band--lagoon p{color:#fff}
.band--sand{background:var(--sand)}
@media (max-width:760px){.band{grid-template-columns:1fr}}

/* Steps */
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;counter-reset:s}
.step{background:#fff;border-radius:var(--r-l);padding:22px;box-shadow:var(--sh)}
.step::before{counter-increment:s;content:counter(s);display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--lagoon-l);color:var(--lagoon-d);font-weight:700;margin-bottom:12px}
.step h3{margin-bottom:.35em}.step p{margin:0;color:var(--ink-2);font-size:.96rem}

/* Fiche */
.fiche{padding:18px 0 40px}
.gal{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:200px 200px;gap:8px;border-radius:var(--r-l);overflow:hidden;margin:6px 0 22px}
.gal a{position:relative;display:block;overflow:hidden;background:var(--sand)}
.gal a:first-child{grid-row:1/3}
.gal img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.gal a:hover img{transform:scale(1.03)}
.gal__more{position:absolute;right:12px;bottom:12px;background:rgba(255,255,255,.95);color:var(--ink);border-radius:999px;padding:7px 13px;font-size:.86rem;font-weight:650;display:flex;gap:6px;align-items:center}
.gal--1{grid-template-columns:1fr;grid-template-rows:420px}
.gal--2{grid-template-columns:1fr 1fr;grid-template-rows:380px}.gal--2 a:first-child{grid-row:auto}
.gal--3,.gal--4{grid-template-columns:2fr 1fr;grid-template-rows:200px 200px}
.gal--4 a:nth-child(n+4){display:none}
.gal--ph{height:300px;position:relative;display:block}
@media (max-width:760px){
  .gal,.gal--1,.gal--2,.gal--3,.gal--4{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;border-radius:0;margin:0 calc(var(--gut)*-1) 18px;gap:6px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .gal::-webkit-scrollbar{display:none}
  .gal a,.gal--4 a:nth-child(n+4){display:block;flex:0 0 88%;height:270px;scroll-snap-align:center}
  .gal a:only-child{flex-basis:100%}
  .gal__more{display:none}
}
.fiche__layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:40px;align-items:start}
@media (max-width:980px){.fiche__layout{grid-template-columns:1fr;gap:10px}}
.fiche__tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.fiche__tags a{font-size:.82rem;font-weight:650;padding:5px 11px;border-radius:999px;text-decoration:none;background:var(--lagoon-l);color:var(--lagoon-d)}
.fiche h1{font-size:clamp(1.8rem,3.6vw,2.6rem);margin-bottom:.25em}
.fiche__loc{display:flex;align-items:center;gap:6px;color:var(--muted);margin-bottom:14px}
.fiche__acc{font-size:1.12rem;color:var(--ink-2);margin-bottom:20px}
.nocom{display:flex;gap:12px;align-items:flex-start;background:var(--lagoon-l);border-radius:var(--r);padding:14px 16px;font-size:.94rem;color:var(--lagoon-d);margin:0 0 22px}
.nocom .sg-i{color:var(--lagoon);margin-top:1px}
.blk{padding:26px 0;border-top:1px solid var(--line)}
.blk h2{font-size:1.4rem;margin-bottom:14px}
.blk--first{border-top:0;padding-top:4px}
.ticks{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px 18px}
.ticks li{display:flex;gap:9px;align-items:flex-start}
.ticks .sg-i{width:19px;height:19px;color:var(--leaf);margin-top:3px}
.kv{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.kv div{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:14px 16px}
.kv dt{font-size:.8rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-weight:650;margin-bottom:4px;display:flex;gap:6px;align-items:center}
.kv dt .sg-i{width:16px;height:16px}
.kv dd{margin:0;white-space:pre-line}
.prose{font-size:1.04rem;color:var(--ink-2)}
.prose h2{font-size:1.45rem;margin-top:1.4em}.prose h3{margin-top:1.2em}
.prose ul,.prose ol{padding-left:1.25em}.prose li{margin:.3em 0}
.prose img{border-radius:var(--r)}
.map{position:relative;border-radius:var(--r);overflow:hidden;border:1px solid var(--line);background:var(--sand);aspect-ratio:16/9}
.map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.map__btn{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;cursor:pointer;border:0;width:100%;background:linear-gradient(135deg,#E2F0EE,#F4ECDF);color:var(--lagoon-d);font-weight:650}
.socials{display:flex;flex-wrap:wrap;gap:8px}
.aside{position:sticky;top:86px}
.ccard{background:#fff;border-radius:var(--r-l);box-shadow:var(--sh-l);padding:22px;border:1px solid rgba(230,220,203,.6)}
.ccard h2{font-size:1.25rem;margin-bottom:4px}
.ccard .price{font-size:.95rem;color:var(--ink-2);margin-bottom:16px}.ccard .price b{font-size:1.25rem;color:var(--ink)}
.ccard .btns{display:grid;gap:9px}
.ccard small{display:block;margin-top:14px;color:var(--muted);font-size:.83rem;line-height:1.45}
@media (max-width:980px){.aside{position:static}}
.mbar{display:none}
@media (max-width:980px){
  .mbar{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:45;background:rgba(255,255,255,.97);backdrop-filter:blur(8px);padding:10px var(--gut) calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--line);box-shadow:0 -6px 20px rgba(22,38,42,.08)}
  .mbar .sg-btn{min-height:48px;padding:0 10px;font-size:.92rem}
  body.has-mbar{padding-bottom:84px}
}

/* Forms */
.sg-form{background:#fff;border-radius:var(--r-l);padding:clamp(18px,3vw,28px);box-shadow:var(--sh);border:1px solid rgba(230,220,203,.6)}
.sg-form__grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}
@media (max-width:640px){.sg-form__grid{grid-template-columns:1fr}}
.sg-f{display:flex;flex-direction:column;gap:6px}
.sg-f--full{grid-column:1/-1}
.sg-f label{font-weight:600;font-size:.92rem}
.sg-f label span{font-weight:400;color:var(--muted)}
.sg-f input,.sg-f select,.sg-f textarea{width:100%;min-height:48px;border:1.5px solid var(--line);border-radius:12px;padding:10px 14px;background:var(--bg);font-size:1rem}
.sg-f textarea{min-height:120px;resize:vertical}
.sg-f input:focus,.sg-f select:focus,.sg-f textarea:focus{outline:none;border-color:var(--lagoon);background:#fff;box-shadow:0 0 0 3px var(--lagoon-l)}
.sg-consent label{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:.88rem;color:var(--ink-2)}
.sg-consent input{width:18px;min-height:18px;height:18px;margin-top:3px;accent-color:var(--lagoon);flex:none}
.sg-form__foot{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:18px}
.sg-form__msg{margin:0;font-size:.95rem}
.sg-form__msg.is-ok{color:var(--leaf);font-weight:600}.sg-form__msg.is-err{color:#B42318}
.sg-form.is-sent .sg-form__grid{display:none}.sg-form.is-sent button{display:none}
.sg-form.is-sent .sg-form__msg{font-size:1.05rem;padding:8px 0}
.sg-hp{position:absolute!important;left:-9999px!important;height:0;overflow:hidden}

/* Pages & articles */
.page-hero{padding:34px 0 10px}
.page-hero h1{max-width:820px}
.page-body{padding:10px 0 60px}
.page-body .prose{max-width:780px}
.page-body .prose > .sg-form{margin:18px 0 30px}
.post-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}
.post-card{background:#fff;border-radius:var(--r-l);overflow:hidden;box-shadow:var(--sh);display:flex;flex-direction:column}
.post-card__media{aspect-ratio:16/10;background:var(--sand);position:relative;overflow:hidden}
.post-card__media img{width:100%;height:100%;object-fit:cover}
.post-card__body{padding:18px}
.post-card h3{font-size:1.15rem;margin:0 0 6px}
.post-card h3 a{color:var(--ink);text-decoration:none}
.post-card p{font-size:.94rem;color:var(--ink-2);margin:0}
.article{max-width:760px;margin:0 auto}
.article__meta{color:var(--muted);font-size:.92rem;margin-bottom:22px}
.article__cover{border-radius:var(--r-l);overflow:hidden;margin:0 0 26px}
.wp-block-image img{border-radius:var(--r)}

/* FAQ */
.faq details{background:#fff;border-radius:var(--r);border:1px solid var(--line);margin-bottom:10px}
.faq summary{cursor:pointer;padding:16px 18px;font-weight:650;list-style:none;display:flex;justify-content:space-between;gap:10px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:1.3rem;line-height:1;color:var(--lagoon)}
.faq details[open] summary::after{content:"–"}
.faq details > div{padding:0 18px 16px;color:var(--ink-2)}

/* Footer */
.ft{background:#10262A;color:#C9D3D2;padding:56px 0 calc(28px + env(safe-area-inset-bottom));margin-top:0;font-size:.94rem}
.ft a{color:#E7EEED;text-decoration:none}.ft a:hover{text-decoration:underline}
.ft__grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:28px}
.ft h3{color:#fff;font-size:.82rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:12px}
.ft ul{list-style:none;margin:0;padding:0}.ft li{margin:7px 0}
.ft .logo{color:#fff}.ft .logo b{color:#6FD0C6}
.ft__bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:36px;padding-top:18px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.85rem;color:#97A6A5}
@media (max-width:860px){.ft__grid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.ft__grid{grid-template-columns:1fr}}

/* Lightbox */
.lb{position:fixed;inset:0;z-index:80;background:rgba(10,20,22,.94);display:none;align-items:center;justify-content:center}
.lb.is-open{display:flex}
.lb img{max-width:94vw;max-height:84vh;border-radius:8px}
.lb button{position:absolute;background:rgba(255,255,255,.12);border:0;color:#fff;width:48px;height:48px;border-radius:50%;cursor:pointer;display:grid;place-items:center}
.lb .x{top:16px;right:16px}.lb .p{left:12px;top:50%}.lb .n{right:12px;top:50%}
.lb .n .sg-i{transform:none}.lb .p .sg-i{transform:rotate(180deg)}
.lb__c{position:absolute;bottom:18px;left:0;right:0;text-align:center;color:#cfd8d7;font-size:.9rem}

@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.gal--5 a:nth-child(n+6){display:none}
@media (max-width:760px){.gal--5 a:nth-child(n+6){display:block}.gal.gal--ph{display:block;height:240px;margin:0 0 18px}}
.admin-bar .hd{top:32px}
@media (max-width:782px){.admin-bar .hd{top:46px}}
@media (max-width:600px){.admin-bar .hd{top:0}}
