@view-transition{
  navigation:auto;
}

/* urbadeSignpro — Lot 1 polish global */
:root{
  --polish-shadow-soft: 0 10px 30px rgba(26,40,32,.05);
  --polish-shadow-hover: 0 16px 40px rgba(26,40,32,.09);
  --polish-outline: rgba(45,95,79,.22);
  --polish-radius: 20px;
}

html{
  scroll-padding-top: calc(var(--nav-height, 72px) + 18px);
}

body{
  text-rendering: optimizeLegibility;
  line-height: 1.62;
}

p, li{
  line-height: 1.72;
}

img, svg, video, iframe{
  max-width: 100%;
}

nav{
  box-shadow: 0 10px 26px rgba(26,40,32,.04);
}

:where(section, .page-hero){
  scroll-margin-top: calc(var(--nav-height, 72px) + 18px);
}

:where(.section-title, .page-title){
  max-width: none;
}

:where(.section-sub, .page-subtitle, .intro-text, .card-text, .step-text, .folder-desc, .exp-intro, .exp-goal, .footer-brand-desc, .legal-content p){
  max-width: 68ch;
}

:where(.section-title, .page-title) + :where(.section-sub, .page-subtitle, .intro-text){
  margin-top: 14px;
}

:where(.btn, button, [role="button"]){
  min-height: 46px;
  touch-action: manipulation;
}

:where(a, button, input, textarea, select, .btn):focus-visible{
  outline: 3px solid var(--polish-outline);
  outline-offset: 3px;
}

:where(.card, .faq-card, .folder-card, .step-card, .portfolio-preview-card, .ia-card, .pos-card, .contact-info-card, .expertise-item){
  border-radius: var(--polish-radius);
  box-shadow: var(--polish-shadow-soft);
  transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease, background-color .24s ease, color .24s ease;
}

:where(.card, .faq-card, .folder-card, .step-card, .portfolio-preview-card, .ia-card, .pos-card, .contact-info-card, .expertise-item):hover{
  box-shadow: var(--polish-shadow-hover);
}

:where(.footer-grid){
  column-gap: clamp(24px, 4vw, 56px);
  row-gap: 24px;
}

:where(.footer-bottom){
  gap: 16px;
}

:where(.footer-email, .cic-link){
  overflow-wrap: anywhere;
}


@media (max-width: 768px){
  :root{
    --polish-radius: 18px;
  }

  :where(.mbl-block-pad, .mbl-section-pad){
    padding-left: clamp(16px, 4vw, 20px);
    padding-right: clamp(16px, 4vw, 20px);
  }

  :where(.section-title, .page-title){
    max-width: none;
  }

  :where(.btn){
    min-height: 48px;
  }

  :where(.footer-grid){
    row-gap: 28px;
  }
}


/* Lot 1 fix — recentrage des titres, retrait des contours parasites, uniformisation portfolio */
:where(.page-hero > .section-title, .page-hero > .page-title){
  max-width: none;
  margin-inline: auto;
  text-align: center;
}

.expertise-item{
  box-shadow: none !important;
}

.expertise-item:hover{
  box-shadow: none !important;
}

.portfolio-grid{
  align-items: stretch;
}

.folder-card{
  display: flex;
  flex-direction: column;
  height: 100%;
}

.folder-body{
  height: 100%;
  min-height: 240px;
}

@media (max-width: 960px){
  .folder-body{
    min-height: 220px;
  }
}

@media (max-width: 768px){
  :where(.page-hero > .section-title, .page-hero > .page-title){
    text-align: center;
  }

  .folder-body{
    min-height: 210px;
  }
}
