/* LE DELTA — CLIENT POLISH V173
   Accueil album finder + réservation + photos + album détail
   Direction: noir / bleu nuit / blanc, dense, premium, sans zones mortes. */

:root{
  --delta-client-bg:#02060b;
  --delta-client-panel:#07101a;
  --delta-client-panel-2:#0a1522;
  --delta-client-line:rgba(113,151,207,.17);
  --delta-client-line-strong:rgba(90,132,255,.38);
  --delta-client-blue:#3f6fff;
  --delta-client-blue-2:#6f91ff;
  --delta-client-text:#f5f7fb;
  --delta-client-muted:rgba(226,233,242,.60);
}

/* Wordmark officiel dans le texte */
:is(body.delta-home,body.photos-public-page,body.reservation-rebuilt-page,body.album-detail-page) .delta-wordmark-inline{
  display:inline-block!important;
  width:2.74em!important;
  height:.78em!important;
  margin:0 .04em!important;
  vertical-align:-.08em!important;
  color:transparent!important;
  text-indent:-9999px!important;
  overflow:hidden!important;
  background:url("assets/delta-wordmark-exact-v124.svg") center/contain no-repeat!important;
  filter:drop-shadow(0 4px 14px rgba(62,104,255,.13))!important;
}

/* =========================================================
   ACCUEIL — Finder album, plus dense et plus élégant
   ========================================================= */
body.delta-home .delta-gallery-teaser{padding-top:48px!important}
body.delta-home .delta-album-experience{
  min-height:0!important;
  grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr)!important;
  gap:34px!important;
  padding:30px 34px!important;
  border:1px solid rgba(83,125,197,.19)!important;
  border-radius:28px!important;
  background:
    radial-gradient(520px circle at 86% 14%,rgba(52,100,255,.14),transparent 68%),
    linear-gradient(135deg,#08111c 0%,#04090f 64%,#07101a 100%)!important;
  box-shadow:0 28px 80px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.025)!important;
  overflow:hidden!important;
}
body.delta-home .delta-album-experience::before{
  opacity:.42!important;
  background:linear-gradient(90deg,transparent 0 58%,rgba(90,127,255,.08) 100%)!important;
}
body.delta-home .delta-album-ghost{opacity:.035!important;right:-30px!important;top:-65px!important;transform:scale(.90)!important}
body.delta-home .delta-home-album-finder-copy{padding:4px 0!important}
body.delta-home .delta-home-album-finder-copy>span{
  margin-bottom:12px!important;
  color:#8eabff!important;
  font-size:9px!important;
  letter-spacing:.20em!important;
}
body.delta-home .delta-home-album-finder-copy>strong{
  max-width:470px!important;
  margin:0 0 16px!important;
  font-size:clamp(48px,4.6vw,68px)!important;
  line-height:.92!important;
  letter-spacing:-.055em!important;
}
body.delta-home .delta-home-album-finder-copy>p{
  max-width:440px!important;
  color:rgba(228,234,242,.60)!important;
  font-size:14px!important;
  line-height:1.55!important;
}
body.delta-home .delta-home-album-finder-controls{
  align-self:center!important;
  min-height:0!important;
  padding:18px!important;
  border:1px solid rgba(100,140,202,.16)!important;
  border-radius:21px!important;
  background:rgba(3,9,15,.78)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.025)!important;
  backdrop-filter:blur(12px)!important;
}
body.delta-home .delta-home-album-finder-controls>label{
  margin:0 0 11px!important;
  color:#edf2f9!important;
  font-size:10px!important;
  font-weight:950!important;
  letter-spacing:.15em!important;
}
body.delta-home .delta-home-album-finder-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 190px!important;
  gap:8px!important;
  padding:6px!important;
  border:1px solid rgba(111,151,211,.19)!important;
  border-radius:17px!important;
  background:#03080d!important;
  box-shadow:none!important;
}
body.delta-home .delta-home-album-finder-row input{
  min-width:0!important;
  height:54px!important;
  padding:0 16px!important;
  border:0!important;
  border-radius:12px!important;
  background:#050a10!important;
  color:#f4f7fb!important;
  font-size:15px!important;
  font-weight:850!important;
  color-scheme:dark!important;
}
body.delta-home .delta-home-album-finder-row input:focus{
  outline:none!important;
  box-shadow:0 0 0 2px rgba(72,116,255,.32)!important;
}
body.delta-home #home-album-open{
  min-height:54px!important;
  padding:0 16px!important;
  border-radius:12px!important;
  background:linear-gradient(135deg,#2a58df,#3c70ff)!important;
  border:1px solid rgba(135,166,255,.62)!important;
  box-shadow:0 10px 24px rgba(39,83,224,.20)!important;
  font-size:11px!important;
  font-weight:950!important;
  justify-content:space-between!important;
}
body.delta-home .delta-home-album-quickdates{
  display:flex!important;
  gap:7px!important;
  margin-top:10px!important;
}
body.delta-home .delta-home-album-quickdates button{
  min-height:38px!important;
  padding:0 14px!important;
  border:1px solid rgba(106,145,202,.15)!important;
  border-radius:11px!important;
  background:#07101a!important;
  color:rgba(237,242,248,.76)!important;
  font-size:9px!important;
  font-weight:900!important;
}
body.delta-home .delta-home-album-quickdates button:hover{
  border-color:rgba(78,121,255,.42)!important;
  background:#0b1827!important;
  color:#fff!important;
}
body.delta-home #home-album-status{
  display:block!important;
  min-height:18px!important;
  margin:9px 2px 0!important;
  color:#9db5ff!important;
  font-size:9px!important;
  line-height:1.4!important;
}

/* =========================================================
   PHOTOS — page client dense, calendrier / action équilibrés
   ========================================================= */
body.photos-public-page .album-page-hero{
  padding:42px 0 34px!important;
  background:
    radial-gradient(460px circle at 83% 20%,rgba(54,103,255,.14),transparent 68%),
    linear-gradient(180deg,#07111d,#03070c)!important;
}
body.photos-public-page .album-page-hero-inner{
  grid-template-columns:minmax(0,1fr) 190px!important;
  gap:30px!important;
}
body.photos-public-page .album-page-hero h1{
  font-size:clamp(48px,5.2vw,76px)!important;
  line-height:.90!important;
  letter-spacing:-.06em!important;
}
body.photos-public-page .album-page-hero .page-intro{
  margin-top:15px!important;
  max-width:610px!important;
  font-size:14px!important;
}
body.photos-public-page .album-hero-mark{
  width:160px!important;height:160px!important;font-size:154px!important;
  color:rgba(72,117,255,.10)!important;
}
body.photos-public-page .album-browser{padding:32px 0 42px!important}
body.photos-public-page .album-browser-head{
  grid-template-columns:minmax(0,1fr) minmax(260px,360px)!important;
  gap:24px!important;
  margin-bottom:16px!important;
}
body.photos-public-page .album-browser-head h2{
  font-size:clamp(34px,3.7vw,54px)!important;
}
body.photos-public-page .delta-photo-date-card{
  grid-template-columns:minmax(0,1.42fr) minmax(300px,.58fr)!important;
  gap:14px!important;
  padding:14px!important;
  border-radius:20px!important;
}
body.photos-public-page .delta-photo-calendar{
  padding:12px 14px 10px!important;
  border-radius:15px!important;
}
body.photos-public-page .delta-photo-calendar-day{height:38px!important}
body.photos-public-page .album-selection-card{
  padding:18px!important;
  border-radius:15px!important;
  justify-content:flex-end!important;
}
body.photos-public-page .album-selection-card>strong{font-size:26px!important}
body.photos-public-page .album-search-actions :is(#album-search,#album-reset){min-height:48px!important;border-radius:12px!important}
body.photos-public-page #albums-public.delta-albums-grid{margin-top:16px!important;gap:12px!important}
body.photos-public-page .delta-album-card{border-radius:16px!important}
body.photos-public-page .delta-album-overlay{padding:16px!important}
body.photos-public-page .delta-album-overlay strong{font-size:19px!important}

/* =========================================================
   ALBUM DÉTAIL — même identité, grille élégante, zéro page vieillotte
   ========================================================= */
body.album-detail-page{
  background:var(--delta-client-bg)!important;
  color:var(--delta-client-text)!important;
}
body.album-detail-page .topbar{
  background:rgba(2,6,11,.94)!important;
  border-bottom:1px solid rgba(102,143,202,.14)!important;
  backdrop-filter:blur(16px)!important;
}
body.album-detail-page .topbar .brand img{height:46px!important;width:auto!important;max-width:150px!important;display:block!important}
body.album-detail-page .album-detail-hero{
  padding:38px 0 30px!important;
  background:
    radial-gradient(440px circle at 84% 22%,rgba(53,101,255,.15),transparent 67%),
    linear-gradient(180deg,#07111c,#03070c)!important;
  border-bottom:1px solid rgba(105,145,202,.13)!important;
}
body.album-detail-page .album-detail-shell{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:22px!important;align-items:end!important}
body.album-detail-page .album-detail-back{
  grid-column:1/-1!important;
  width:max-content!important;
  color:rgba(226,233,242,.62)!important;
  font-size:11px!important;
  font-weight:850!important;
  text-decoration:none!important;
}
body.album-detail-page .album-detail-back:hover{color:#fff!important}
body.album-detail-page #album-head .eyebrow{margin-bottom:9px!important;color:#8cabff!important}
body.album-detail-page #album-head h1{
  max-width:900px!important;
  margin:0!important;
  color:#fff!important;
  font-size:clamp(42px,5.3vw,72px)!important;
  line-height:.94!important;
  letter-spacing:-.055em!important;
}
body.album-detail-page #album-head p{
  margin:11px 0 0!important;
  color:var(--delta-client-muted)!important;
  font-size:13px!important;
}
body.album-detail-page .album-detail-brandmark{
  width:118px!important;height:118px!important;opacity:.18!important;object-fit:contain!important;
  filter:drop-shadow(0 12px 34px rgba(53,99,255,.16))!important;
}
body.album-detail-page main>.section{padding:20px 0 42px!important;background:#02060b!important}
body.album-detail-page .album-detail-toolbar{
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;
  margin:0 0 14px!important;padding:10px 12px!important;
  border:1px solid rgba(109,149,207,.14)!important;border-radius:13px!important;background:#07101a!important;
}
body.album-detail-page .album-detail-toolbar .btn{min-height:40px!important;padding:0 13px!important;border-radius:10px!important}
body.album-detail-page .album-detail-toolbar span{color:rgba(226,233,242,.52)!important;font-size:10px!important;font-weight:750!important}
body.album-detail-page .album-photo-grid{
  columns:4 250px!important;
  column-gap:10px!important;
}
body.album-detail-page .album-photo{
  display:block!important;width:100%!important;margin:0 0 10px!important;padding:0!important;
  break-inside:avoid!important;overflow:hidden!important;
  border:1px solid rgba(107,145,198,.13)!important;border-radius:14px!important;background:#07101a!important;
  box-shadow:none!important;cursor:zoom-in!important;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease!important;
}
body.album-detail-page .album-photo:hover{
  transform:translateY(-2px)!important;
  border-color:rgba(75,119,255,.46)!important;
  box-shadow:0 18px 38px rgba(0,0,0,.24)!important;
}
body.album-detail-page .album-photo img{display:block!important;width:100%!important;height:auto!important}
body.album-detail-page .album-load-more-wrap{
  display:flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;margin:18px 0 0!important;
}
body.album-detail-page .album-load-more-wrap .btn{min-height:44px!important;border-radius:11px!important}
body.album-detail-page .album-load-more-wrap span{color:var(--delta-client-muted)!important;font-size:10px!important}
body.album-detail-page .photo-lightbox{background:rgba(0,3,7,.96)!important;backdrop-filter:blur(14px)!important}
body.album-detail-page .lightbox-stage img{max-height:86vh!important;border-radius:12px!important;box-shadow:0 28px 80px rgba(0,0,0,.52)!important}
body.album-detail-page .lightbox-close,
body.album-detail-page .lightbox-arrow{background:rgba(7,16,26,.82)!important;border:1px solid rgba(121,157,214,.22)!important;color:#fff!important}
body.album-detail-page .lightbox-download{border-color:rgba(104,146,255,.45)!important;background:rgba(7,16,26,.90)!important}
body.album-detail-page .delta-footer{margin-top:0!important;background:#050c14!important;border-top:1px solid rgba(103,143,201,.12)!important}

/* =========================================================
   RÉSERVATION — plus calme, plus lisible, moins de hauteur perdue
   ========================================================= */
body.reservation-rebuilt-page main.delta-res-v12{
  width:min(1240px,calc(100% - 36px))!important;
  padding:26px 0 44px!important;
  grid-template-columns:minmax(300px,.66fr) minmax(620px,1.34fr)!important;
  gap:22px!important;
}
body.reservation-rebuilt-page .delta-res-v95-copy{padding:18px 6px 0 0!important}
body.reservation-rebuilt-page .delta-res-v95-kicker{margin:22px 0 10px!important}
body.reservation-rebuilt-page .delta-res-v95-copy h1{
  font-size:clamp(46px,4.6vw,68px)!important;
  line-height:.90!important;
  letter-spacing:-.055em!important;
}
body.reservation-rebuilt-page .delta-res-v95-copy>p{margin-top:18px!important;font-size:14px!important;max-width:410px!important}
body.reservation-rebuilt-page .delta-res-v95-trust{margin-top:16px!important;gap:6px!important}
body.reservation-rebuilt-page .delta-res-v95-trust span{min-height:31px!important;padding:0 10px!important;font-size:8px!important}
body.reservation-rebuilt-page .delta-res-v95-live{
  margin-top:16px!important;
  padding:15px 16px!important;
  border-radius:15px!important;
  background:radial-gradient(circle at 100% 0,rgba(50,98,255,.11),transparent 55%),#07101a!important;
}
body.reservation-rebuilt-page .delta-res-v95-live strong{font-size:19px!important}
body.reservation-rebuilt-page .delta-res-v95-form{
  padding:18px!important;
  border-radius:21px!important;
  box-shadow:0 24px 70px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.025)!important;
}
body.reservation-rebuilt-page .delta-res-v95-form-head{padding-bottom:11px!important}
body.reservation-rebuilt-page .delta-res-v95-form-head h2{font-size:34px!important}
body.reservation-rebuilt-page .delta-res-v12-progress{margin-bottom:9px!important}
body.reservation-rebuilt-page .delta-res-v95-block{padding:13px!important;margin-bottom:8px!important;border-radius:15px!important}
body.reservation-rebuilt-page .delta-res-v99-selected-card{min-height:76px!important}
body.reservation-rebuilt-page .delta-arrival-picker{padding:12px!important;margin:10px 0!important}
body.reservation-rebuilt-page .delta-res-v95-fields input{min-height:52px!important}
body.reservation-rebuilt-page .delta-res-v95-submitbar{margin-top:9px!important;padding:10px!important;border-radius:14px!important}
body.reservation-rebuilt-page .delta-res-v95-submit{min-height:49px!important;min-width:225px!important}

@media(max-width:980px){
  body.delta-home .delta-album-experience{grid-template-columns:1fr!important;gap:20px!important;padding:26px!important}
  body.delta-home .delta-home-album-finder-copy>strong{font-size:52px!important}
  body.photos-public-page .delta-photo-date-card{grid-template-columns:1fr 270px!important}
  body.album-detail-page .album-detail-shell{grid-template-columns:1fr 100px!important}
  body.album-detail-page .album-photo-grid{columns:3 210px!important}
}

@media(max-width:760px){
  body.delta-home .delta-gallery-teaser{padding-top:30px!important}
  body.delta-home .delta-album-experience{padding:20px 16px!important;border-radius:20px!important;gap:17px!important}
  body.delta-home .delta-home-album-finder-copy>strong{font-size:42px!important}
  body.delta-home .delta-home-album-finder-copy>p{font-size:12px!important}
  body.delta-home .delta-home-album-finder-controls{padding:11px!important;border-radius:15px!important}
  body.delta-home .delta-home-album-finder-row{grid-template-columns:1fr!important;padding:5px!important}
  body.delta-home .delta-home-album-finder-row input{height:50px!important}
  body.delta-home #home-album-open{min-height:48px!important}
  body.delta-home .delta-home-album-quickdates{display:grid!important;grid-template-columns:1fr 1fr!important}

  body.photos-public-page .album-page-hero{padding:28px 0 24px!important}
  body.photos-public-page .album-page-hero h1{font-size:44px!important}
  body.photos-public-page .album-browser{padding:24px 0 32px!important}
  body.photos-public-page .album-browser-head h2{font-size:34px!important}
  body.photos-public-page .delta-photo-date-card{grid-template-columns:1fr!important;padding:10px!important}

  body.album-detail-page .album-detail-hero{padding:26px 0 22px!important}
  body.album-detail-page .album-detail-shell{grid-template-columns:1fr!important}
  body.album-detail-page .album-detail-brandmark{display:none!important}
  body.album-detail-page #album-head h1{font-size:42px!important}
  body.album-detail-page main>.section{padding:14px 0 30px!important}
  body.album-detail-page .album-detail-toolbar{padding:8px!important}
  body.album-detail-page .album-detail-toolbar span{display:none!important}
  body.album-detail-page .album-photo-grid{columns:2 145px!important;column-gap:7px!important}
  body.album-detail-page .album-photo{margin-bottom:7px!important;border-radius:10px!important}

  body.reservation-rebuilt-page main.delta-res-v12{width:100%!important;padding:14px 12px 34px!important}
  body.reservation-rebuilt-page .delta-res-v95-copy h1{font-size:43px!important}
  body.reservation-rebuilt-page .delta-res-v95-form{padding:11px!important;border-radius:17px!important}
}

@media(max-width:440px){
  body.album-detail-page .album-photo-grid{columns:2 130px!important}
  body.reservation-rebuilt-page .delta-res-v95-copy h1{font-size:39px!important}
}

/* Album public : pas de logo decoratif sur/au centre des photos. */
body.album-detail-page .album-detail-brandmark{display:none!important}
body.album-detail-page .album-detail-shell{grid-template-columns:minmax(0,1fr)!important}
