/* Évasion Hurghada — finition publique V4 */
:root{--v4-public-max:1240px;--v4-public-pad:24px}
html,body{max-width:100%;overflow-x:hidden}
body :is(h1,h2,h3,h4,p,a,button,span,strong,small,label){word-break:normal;overflow-wrap:normal}
body :is(img,video,svg){max-width:100%}
.container{width:min(var(--v4-public-max),calc(100% - 2*var(--v4-public-pad)))!important;margin-left:auto!important;margin-right:auto!important}
.btn{align-items:center!important;justify-content:center!important;text-align:center!important;line-height:1.15!important;white-space:nowrap!important}
.icon,.icon svg{display:grid;place-items:center}

/* Navigation publique */
.public-shell-inner{align-items:center!important;min-width:0}.public-shell-brand{align-items:center!important}.public-shell-brand>span:last-child{justify-content:center}.public-shell-inner>nav{align-items:center!important}.public-shell-inner>nav a{line-height:1.2!important;white-space:nowrap!important}.public-shell-menu{align-items:center!important;justify-content:center!important;line-height:1!important}.public-shell-mobile a{text-align:center!important}

/* Titres, sections, cartes */
.section-head{min-width:0}.section-head>*{min-width:0}.section-head h2,.page-title h1{word-break:normal!important;overflow-wrap:normal!important}.excursion-card,.category-card,.experience-card,.contact-methods article,.contact-form-card,.contact-faq,.story-cta,.people-editorial article{min-width:0!important}.excursion-card img,.standalone-gallery img,.experience-visual img{object-fit:cover}.excursion-card :is(h2,h3,h4),.category-card :is(h2,h3,h4){word-break:normal!important;overflow-wrap:normal!important}.excursion-card .btn,.experience-cta,.excursion-mobile-actions .btn{white-space:normal!important}

/* Fiches excursion */
.excursion-detail-page :is(.detail-hero,.detail-layout,.detail-gallery,.detail-content,.detail-sidebar){min-width:0}.detail-gallery-caption{line-height:1.25!important}.excursion-mobile-actions{align-items:stretch!important}.excursion-mobile-actions .btn{min-height:50px!important}

/* Contact / équipe / pages éditoriales */
.contact-hero>*{min-width:0}.contact-form-grid label{min-width:0}.editorial-head,.story-hero,.origin-grid,.vision-grid,.journey-list,.people-editorial{min-width:0}.editorial-person-copy p,.origin-copy p,.story-manifesto p{overflow-wrap:normal!important;word-break:normal!important}

/* Footer */
.public-shell-footer-grid>div{min-width:0}.public-shell-footer-grid a{line-height:1.45!important}.public-shell-footer-bottom{align-items:center!important}

/* Cohérence formulaires */
:is(.contact-form-card,.booking-card,.legal-card) :is(input,select,textarea){max-width:100%!important}.contact-form-card .btn,.booking-card .btn{justify-content:center!important}

@media(max-width:1000px){
  :root{--v4-public-pad:20px}
  .public-shell-inner{min-height:74px!important}
  .public-shell-brand>span:first-child{width:48px!important;height:48px!important;border-radius:15px!important}.public-shell-brand img{width:45px!important;height:45px!important}
  .public-shell-menu{display:grid!important;width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;padding:0!important}
  .section-head{align-items:flex-start!important}
}

@media(max-width:680px){
  :root{--v4-public-pad:16px}
  .container{width:calc(100% - 32px)!important}
  .section{padding:64px 0!important}.section.compact{padding:42px 0!important}
  .public-shell-inner{min-height:70px!important;gap:12px!important}.public-shell-brand{gap:9px!important}.public-shell-brand>span:first-child{width:44px!important;height:44px!important}.public-shell-brand img{width:42px!important;height:42px!important}.public-shell-brand strong{font-size:16px!important}.public-shell-brand small{font-size:9px!important}.public-shell-menu{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;border-radius:13px!important}
  .public-shell-mobile{padding:10px 16px 16px!important}.public-shell-mobile a{display:flex!important;min-height:46px!important;align-items:center!important;justify-content:center!important;border-radius:10px!important}.public-shell-mobile a:hover{background:#f3f8fa!important}

  /* Sur mobile, les grands blocs éditoriaux sont volontairement centrés pour éviter l'effet "presque aligné". */
  .section-head,.page-title,.hero-copy,.contact-hero>div:first-child,.editorial-head,.story-hero-main,.vision-intro,.story-cta{text-align:center!important}
  .section-head{display:grid!important;justify-items:center!important;gap:12px!important;margin-bottom:26px!important}.section-head p{max-width:620px!important;margin-inline:auto!important}.section-head .eyebrow,.page-title .eyebrow{justify-self:center!important}
  .hero-grid{width:calc(100% - 32px)!important;grid-template-columns:1fr!important;gap:28px!important;padding-top:96px!important}.hero-copy{max-width:760px!important;margin-inline:auto!important}.hero h1{font-size:clamp(48px,14vw,72px)!important;line-height:.94!important}.hero-copy>p{margin-inline:auto!important;font-size:16px!important;line-height:1.65!important}.hero-actions,.hero-trust{justify-content:center!important}.hero-card{max-width:430px!important;margin-inline:auto!important;justify-self:center!important;transform:none!important}
  .btn{min-height:50px!important}.hero-actions .btn{flex:1 1 190px!important;max-width:320px!important}

  .excursion-card,.category-card,.experience-card{margin-inline:auto!important}.excursion-card :is(h2,h3,h4),.category-card :is(h2,h3,h4){line-height:1.2!important}.excursion-meta,.experience-facts{justify-content:center!important}.eh-price-note{justify-content:center!important}

  .contact-hero{padding:34px 20px!important;text-align:center!important}.contact-hero h1{font-size:clamp(43px,12vw,56px)!important;line-height:.98!important}.contact-hero p{margin-inline:auto!important}.contact-promise{text-align:left!important}.contact-methods article,.contact-form-card,.contact-faq{padding:22px 18px!important}.contact-methods{text-align:center!important}.contact-methods p{margin-inline:auto!important}.contact-form-card>div:first-child{text-align:center!important}.contact-form-card .btn{width:100%!important}

  .editorial-head h2,.story-hero h1,.origin-title h2,.vision-intro h2,.story-cta h2{word-break:normal!important;overflow-wrap:normal!important}.people-editorial,.vision-grid{grid-template-columns:1fr!important}.editorial-person-copy{text-align:center!important}.editorial-person-copy p{margin-inline:auto!important}.story-actions{justify-content:center!important}.story-manifesto{text-align:center!important}.origin-grid{grid-template-columns:1fr!important}.origin-title{text-align:center!important}.origin-copy blockquote{text-align:left!important}

  .excursion-detail-page :is(.detail-hero-copy,.detail-section>header){text-align:center!important}.detail-hero-actions,.detail-actions{justify-content:center!important}.detail-facts{justify-content:center!important}.detail-gallery-caption{left:10px!important;right:10px!important;top:10px!important;max-width:none!important;text-align:center!important;white-space:normal!important}.excursion-mobile-actions{right:8px!important;bottom:8px!important;left:8px!important;grid-template-columns:1fr 1fr!important;gap:7px!important;padding:8px!important;border-radius:17px!important}.excursion-mobile-actions .btn{font-size:13px!important;padding-inline:8px!important}

  .booking-editorial-copy{text-align:center!important}.booking-editorial-copy>p{margin-inline:auto!important}.booking-principles{text-align:left!important}.booking-card-heading{text-align:center!important}.booking-layout-premium .form-actions{display:grid!important;gap:9px!important}.booking-layout-premium .form-actions .btn{width:100%!important}

  .public-shell-footer{margin-top:52px!important;padding-top:46px!important}.public-shell-footer-grid{grid-template-columns:1fr!important;gap:30px!important;text-align:center!important}.public-shell-footer-grid>div{justify-items:center!important}.public-shell-footer-grid>div:first-child p{margin-inline:auto!important}.public-shell-footer-grid a{display:inline-flex!important;justify-content:center!important}.public-shell-footer-bottom{display:grid!important;gap:8px!important;text-align:center!important;justify-content:center!important;margin-top:32px!important}
}

@media(max-width:430px){
  :root{--v4-public-pad:14px}.container{width:calc(100% - 28px)!important}
  .section{padding:54px 0!important}.section.compact{padding:34px 0!important}
  .hero-grid{width:calc(100% - 28px)!important}.hero h1{font-size:46px!important}.hero-actions{display:grid!important;grid-template-columns:1fr!important}.hero-actions .btn{width:100%!important;max-width:none!important}
  .contact-hero{padding-inline:18px!important}.contact-methods article,.contact-form-card,.contact-faq{padding-inline:16px!important}
  .excursion-mobile-actions{grid-template-columns:1fr!important}.excursion-detail-page{padding-bottom:132px!important}
  .eh-consent{width:calc(100% - 16px)!important;padding:13px!important;border-radius:14px!important}.eh-consent-actions{display:grid!important;grid-template-columns:1fr 1fr!important}.eh-consent-actions a{grid-column:1/-1!important}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
