/* Mobile-only candidate for the published home, loaded AFTER accueil.css.
 * Content: body.home #ci-home-simple. Shared WordPress chrome: body.home only.
 * The contact bar fragment must be present on the home only. */
#ci-home-mobile-actions{display:none}
#ci-home-mobile-choices{display:none}
#ci-home-mobile-preparation{display:none}

@media(max-width:781px),(max-width:1024px) and (hover:none) and (pointer:coarse){
  /* The real WordPress navigation: 48px controls and whole-row links. */
  body.home .ci-header{padding-block:8px}
  body.home .ci-header .ci-header-inner{min-height:64px;gap:12px}
  body.home .ci-header .wp-block-navigation{font-size:16px}
  body.home .ci-header .wp-block-navigation__responsive-container-open,
  body.home .ci-header .wp-block-navigation__responsive-container-close{
    display:flex;align-items:center;justify-content:center;
    min-width:48px;min-height:48px;padding:12px;
    border-radius:5px;color:#0b2d5b
  }
  body.home .ci-header .wp-block-navigation__responsive-container-open svg,
  body.home .ci-header .wp-block-navigation__responsive-container-close svg{width:24px;height:24px}
  body.home .ci-header .wp-block-navigation__responsive-container.is-menu-open{
    padding:20px max(20px,env(safe-area-inset-right,0px)) 24px max(20px,env(safe-area-inset-left,0px))
  }
  body.home .ci-header .is-menu-open .wp-block-navigation__responsive-container-content{padding-top:64px}
  body.home .ci-header .is-menu-open .wp-block-navigation__container{
    width:100%;align-items:stretch;gap:8px;padding-top:0;font-size:16px
  }
  body.home .ci-header .is-menu-open .wp-block-navigation-item{width:100%}
  body.home .ci-header .is-menu-open .wp-block-navigation-item__content{
    display:flex;align-items:center;justify-content:flex-start;
    width:100%;min-height:48px;padding:12px 16px;
    border-radius:5px;font-size:16px;line-height:1.5
  }
  body.home .ci-header .is-menu-open .wp-block-navigation-item:not(.ci-client-access)>.wp-block-navigation-item__content{
    border:1px solid #e2e5e9;background:#f8f7f3
  }
  body.home .ci-header .is-menu-open .ci-client-access a{font-size:16px!important;white-space:normal}
  body.home .ci-header a:focus-visible,body.home .ci-header button:focus-visible{
    outline:3px solid #a37725;outline-offset:3px
  }

  /* Standalone shell uses the same sizes; WordPress keeps its own menu logic. */
  body.home #ci-preview-header .desktop-nav{display:none}
  body.home #ci-preview-header .mobile-menu{display:block}
  body.home #ci-preview-header summary{min-width:72px;min-height:48px;font-size:16px}
  body.home #ci-preview-header .mobile-menu nav a{min-height:48px;padding-block:10px}
}

@media(max-width:780px),(max-width:1024px) and (hover:none) and (pointer:coarse){
  /* Keep the footer and the last focused link above the persistent actions.
   * The extra room also accommodates a wrapped button label on narrow screens. */
  body.home{padding-bottom:calc(var(--ci-mobile-action-height,112px) + 24px)}
  body.home a,body.home button,body.home summary{scroll-margin-block:24px max(110px,8rem)}

  /* No height-based content changes. Let a small phone scroll at readable sizes. */
  body.home #ci-home-simple .home-shell{padding-inline:20px}
  body.home #ci-home-simple .home-start{padding:24px 0 28px}
  body.home #ci-home-simple .home-intro .home-eyebrow,
  body.home #ci-home-simple .home-eyebrow{font-size:14px;line-height:1.5;letter-spacing:.08em}
  body.home #ci-home-simple .home-intro .home-eyebrow{margin-bottom:12px}
  body.home #ci-home-simple h1{font-size:28px;line-height:1.18;letter-spacing:-.03em}
  body.home #ci-home-simple h1 span{font-size:inherit}
  body.home #ci-home-simple .home-lead{display:block;font-size:16px;line-height:1.5;margin-top:14px}
  /* The mobile entry exposes two short, complete choices instead of stacking
   * the longer desktop cards. The original offers remain intact on desktop. */
  body.home #ci-home-simple #ci-home-mobile-choices{display:block;margin-top:20px}
  body.home #ci-home-simple #ci-home-mobile-choices h2{
    font-size:20px;line-height:1.3;letter-spacing:-.02em;margin-bottom:12px
  }
  body.home #ci-home-simple .home-mobile-choice-list{display:grid;gap:12px}
  body.home #ci-home-simple .home-mobile-choice{
    display:grid;grid-template-columns:minmax(0,1fr) 20px;
    align-items:center;gap:12px;min-height:48px;padding:16px;
    border:1px solid #d7dce3;border-left:4px solid #0b2d5b;
    border-radius:8px;background:#fff;text-decoration:none
  }
  body.home #ci-home-simple .home-mobile-choice-agences{border-left-color:#d4a64a}
  body.home #ci-home-simple .home-mobile-choice-copy{display:grid;gap:5px;min-width:0}
  body.home #ci-home-simple .home-mobile-choice-audience{font-size:15px;line-height:1.5;font-weight:700;color:#846326}
  body.home #ci-home-simple .home-mobile-choice-title{font-size:22px;line-height:1.25;font-weight:700;letter-spacing:-.02em;color:#0b2d5b}
  body.home #ci-home-simple .home-mobile-choice-detail{font-size:15px;line-height:1.5;color:#526477}
  body.home #ci-home-simple .home-mobile-choice-arrow{font-size:24px;line-height:1;color:#0b2d5b}
  body.home #ci-home-simple .home-mobile-choice:focus-visible{outline:3px solid #a37725;outline-offset:4px}
  body.home #ci-home-simple .home-offers{grid-template-columns:1fr;gap:16px;margin-top:24px}
  body.home #ci-home-simple .home-offer{
    position:relative;padding:20px;border-top-width:3px;border-radius:8px
  }
  body.home #ci-home-simple .home-audience{font-size:15px;line-height:1.5;margin-bottom:8px}
  body.home #ci-home-simple .home-offer h2{font-size:25px;line-height:1.2;min-height:0}
  body.home #ci-home-simple .home-offer-intro{display:block;font-size:16px;line-height:1.5;margin-top:10px}
  body.home #ci-home-simple .home-delivered,
  body.home #ci-home-simple .home-offer-agences .home-delivered{
    display:block;font-size:15px;line-height:1.6;margin-top:12px;margin-bottom:18px
  }
  body.home #ci-home-simple .home-delivery-scan{display:inline}
  body.home #ci-home-simple .home-button{
    font-size:16px;line-height:1.4;min-height:48px;padding:12px 14px;gap:12px
  }
  body.home #ci-home-simple .home-offer .home-button{position:static;width:100%;margin-top:auto;text-align:center}
  body.home #ci-home-simple .home-offer .home-button::after{
    content:"";position:absolute;inset:0;border-radius:inherit
  }
  body.home #ci-home-simple .home-offer:focus-within{
    outline:3px solid #a37725;outline-offset:4px
  }
  body.home #ci-home-simple .home-start-note{font-size:15px;line-height:1.6;margin-top:20px;text-align:left}
  /* Only replace the desktop offers once the mobile fragment is present. */
  body.home #ci-home-simple:has(#ci-home-mobile-choices) .home-offers,
  body.home #ci-home-simple:has(#ci-home-mobile-choices) .home-start-note{display:none}

  /* Four steps, in reading order, with compact numbered rows rather than a 2x2 grid. */
  body.home #ci-home-simple .home-process{padding:36px 0}
  body.home #ci-home-simple .home-section-heading{margin-bottom:24px}
  body.home #ci-home-simple .home-section-heading h2{font-size:29px;line-height:1.2}
  body.home #ci-home-simple .home-steps{grid-template-columns:1fr;gap:0}
  body.home #ci-home-simple .home-steps>li{
    display:grid;grid-template-columns:36px minmax(0,1fr);
    column-gap:12px;row-gap:6px;padding:18px 0;border-top:1px solid #d7dce3
  }
  body.home #ci-home-simple .home-step-number{
    grid-column:1;grid-row:1 / 3;font-size:15px;line-height:1.6;margin-bottom:0
  }
  body.home #ci-home-simple .home-steps h3{grid-column:2;font-size:19px;line-height:1.35;margin-bottom:0}
  body.home #ci-home-simple .home-steps p{grid-column:2;font-size:16px;line-height:1.55}
  /* Keep preparation advice available on demand after the four steps. */
  body.home #ci-home-simple #ci-home-mobile-preparation{
    display:block;margin-top:20px;border:1px solid #d7dce3;border-radius:8px;background:#f8f7f3
  }
  body.home #ci-home-simple #ci-home-mobile-preparation summary{
    min-height:48px;padding:12px 16px;font-size:16px;line-height:1.5;
    font-weight:700;list-style-position:inside;cursor:pointer
  }
  body.home #ci-home-simple #ci-home-mobile-preparation summary:focus-visible{
    outline:3px solid #a37725;outline-offset:4px;border-radius:8px
  }
  body.home #ci-home-simple #ci-home-mobile-preparation .home-mobile-preparation-copy{
    display:grid;gap:12px;padding:4px 16px 18px
  }
  body.home #ci-home-simple #ci-home-mobile-preparation p{font-size:16px;line-height:1.6;color:#526477}
  body.home #ci-home-simple:has(#ci-home-mobile-preparation) .home-scan-strip{display:none}
  body.home #ci-home-simple .home-scan-strip{margin-top:20px}
  body.home #ci-home-simple .home-scan-copy{padding:24px 20px}
  body.home #ci-home-simple .home-scan-copy h3{font-size:24px;line-height:1.3}
  body.home #ci-home-simple .home-scan-copy p{font-size:16px;line-height:1.6}
  body.home #ci-home-simple .home-scan-copy .home-small{font-size:14px;line-height:1.6}

  /* The previews share the existing named destination: no additional tiny targets. */
  body.home #ci-home-simple .home-examples{padding:36px 0}
  body.home #ci-home-simple .home-example-grid{grid-template-columns:1fr;gap:20px}
  body.home #ci-home-simple .home-example{position:relative}
  body.home #ci-home-simple .home-plan-pair{height:auto;min-height:168px;padding:12px;gap:8px}
  body.home #ci-home-simple .home-tour-image{height:auto;aspect-ratio:4 / 3}
  body.home #ci-home-simple .home-tour-image figcaption{font-size:14px;padding:5px 8px;max-width:calc(100% - 24px)}
  body.home #ci-home-simple .home-example-copy{padding:20px}
  body.home #ci-home-simple .home-example-copy h3{font-size:23px;line-height:1.3}
  body.home #ci-home-simple .home-example-copy>p:not(.home-audience){font-size:16px;line-height:1.6}
  body.home #ci-home-simple .home-text-link{
    position:static;display:flex;justify-content:space-between;
    min-height:48px;margin-top:16px;padding:10px 12px;
    font-size:16px;line-height:1.4;border:1px solid #cfd7e1;border-radius:5px
  }
  body.home #ci-home-simple .home-text-link::after{content:"";position:absolute;inset:0;border-radius:8px}
  body.home #ci-home-simple .home-example:focus-within{outline:3px solid #a37725;outline-offset:4px;overflow:visible}

  body.home #ci-home-simple .home-contact{padding:32px 0}
  body.home #ci-home-simple .home-contact p:not(.home-eyebrow){font-size:16px;line-height:1.6}
  body.home #ci-home-simple .home-contact-actions{gap:8px}
  body.home #ci-home-simple .home-phone{min-height:48px;font-size:16px;text-decoration:underline}

  body.home .ci-footer p{font-size:15px;line-height:1.6}
  body.home .ci-footer h2{font-size:16px}
  body.home .ci-footer .ci-brand-signature,
  body.home .ci-footer .ci-small{font-size:14px;line-height:1.6}
  body.home .ci-footer a:not(.custom-logo-link){display:inline-flex;align-items:center;min-height:48px}
  body.home #ci-preview-footer .footer-title{font-size:16px}
  body.home #ci-preview-footer .footer-grid>div>a,
  body.home #ci-preview-footer .footer-bottom a{display:flex;align-items:center;min-height:48px;font-size:15px}

  body.home #ci-home-mobile-actions{
    display:flex;flex-wrap:wrap;gap:10px;
    position:fixed;left:0;right:0;bottom:0;z-index:900;
    padding:10px max(16px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));
    border-top:1px solid #dce1e8;background:#fff;
    box-shadow:0 -4px 18px #0b2d5b0c;font:700 16px/1.4 Arial,Helvetica,sans-serif
  }
  body.home #ci-home-mobile-actions a{
    display:flex;align-items:center;justify-content:center;
    flex:1 1 5rem;min-width:min-content;min-height:48px;padding:10px 12px;border:1px solid #0b2d5b;
    border-radius:5px;text-align:center;text-decoration:none;color:#0b2d5b
  }
  body.home #ci-home-mobile-actions .ci-home-mobile-quote{flex:2 1 12rem;background:#0b2d5b;color:#fff}
  body.home #ci-home-mobile-actions a:focus-visible{outline:3px solid #a37725;outline-offset:3px}
  body.home.has-modal-open #ci-home-mobile-actions,
  body.home:has(.ci-header .wp-block-navigation__responsive-container.is-menu-open) #ci-home-mobile-actions,
  body.home:has(#ci-preview-header .mobile-menu[open]) #ci-home-mobile-actions{display:none}
}

@media(max-width:360px){
  body.home #ci-home-simple .home-shell{padding-inline:16px}
  body.home #ci-home-simple .home-offer{padding:18px}
  body.home #ci-home-simple .home-offer h2{font-size:24px}
  body.home #ci-home-simple .home-example-copy{padding:18px}
}

/* A persistent bar would occupy too much of a short landscape viewport. */
@media(max-width:780px) and (max-height:480px),(max-width:1024px) and (max-height:480px) and (hover:none) and (pointer:coarse){
  body.home{padding-bottom:0}
  body.home a,body.home button,body.home summary{scroll-margin-block:24px}
  body.home #ci-home-mobile-actions{position:static;z-index:auto;padding-bottom:10px;box-shadow:none}
}


/* Shared mobile ergonomics for the public WordPress site only. */
#ci-mobile-actions,.ci-mobile-only{display:none}
@media(max-width:781px),(max-width:1024px) and (hover:none) and (pointer:coarse){
 body.wp-theme-capture-immo-atelier .ci-header{padding-block:8px}
 body.wp-theme-capture-immo-atelier .ci-header .ci-header-inner{min-height:64px;gap:12px}
 body.wp-theme-capture-immo-atelier .ci-header .wp-block-navigation{font-size:16px}
 body.wp-theme-capture-immo-atelier .ci-header .wp-block-navigation__responsive-container-open,
 body.wp-theme-capture-immo-atelier .ci-header .wp-block-navigation__responsive-container-close{
  display:flex;align-items:center;justify-content:center;min-width:48px;min-height:48px;padding:12px;border-radius:5px;color:#0b2d5b
 }
 body.wp-theme-capture-immo-atelier .ci-header .wp-block-navigation__responsive-container-open svg,
 body.wp-theme-capture-immo-atelier .ci-header .wp-block-navigation__responsive-container-close svg{width:24px;height:24px}
 body.wp-theme-capture-immo-atelier .ci-header .wp-block-navigation__responsive-container.is-menu-open{
  padding:20px max(20px,env(safe-area-inset-right,0px)) 24px max(20px,env(safe-area-inset-left,0px))
 }
 body.wp-theme-capture-immo-atelier .ci-header .is-menu-open .wp-block-navigation__responsive-container-content{padding-top:64px}
 body.wp-theme-capture-immo-atelier .ci-header .is-menu-open .wp-block-navigation__container{width:100%;align-items:stretch;gap:8px;padding-top:0;font-size:16px}
 body.wp-theme-capture-immo-atelier .ci-header .is-menu-open .wp-block-navigation-item{width:100%}
 body.wp-theme-capture-immo-atelier .ci-header .is-menu-open .wp-block-navigation-item__content{
  display:flex;align-items:center;justify-content:flex-start;width:100%;min-height:48px;padding:12px 16px;border-radius:5px;font-size:16px;line-height:1.5
 }
 body.wp-theme-capture-immo-atelier .ci-header .is-menu-open .wp-block-navigation-item:not(.ci-client-access)>.wp-block-navigation-item__content{border:1px solid #e2e5e9;background:#f8f7f3}
 body.wp-theme-capture-immo-atelier .ci-header .is-menu-open .ci-client-access a{font-size:16px!important;white-space:normal}
 body.wp-theme-capture-immo-atelier :where(a,button,input,textarea,select,summary):focus-visible{outline:3px solid #a37725;outline-offset:3px}
 body.wp-theme-capture-immo-atelier :where(a,button,input,textarea,select,summary){scroll-margin-block:24px calc(var(--ci-mobile-action-height,64px) + 24px)}
 body.wp-theme-capture-immo-atelier .wp-block-button__link{display:flex;align-items:center;justify-content:center;min-height:48px;padding:12px 16px;font-size:16px;line-height:1.5;max-width:100%;white-space:normal;box-sizing:border-box}
 body.wp-theme-capture-immo-atelier .ci-faq summary{min-height:48px;box-sizing:border-box;display:list-item;padding-block:14px;font-size:16px;line-height:1.5;cursor:pointer}
 body.wp-theme-capture-immo-atelier .ci-faq details p{font-size:16px;line-height:1.6}
 /* Decorative background PNGs have no role in the mobile reading hierarchy. */
 body.wp-theme-capture-immo-atelier .ci-hero,
 body.wp-theme-capture-immo-atelier .ci-examples,
 body.wp-theme-capture-immo-atelier .ci-remote-wide,
 body.wp-theme-capture-immo-atelier .ci-faq-section{background-image:none!important;background-color:#f8f7f3}
 body.wp-theme-capture-immo-atelier .ci-workflow{background-image:none!important;background-color:#0b2d5b}
 body.wp-theme-capture-immo-atelier .ci-footer p{font-size:15px;line-height:1.6}
 body.wp-theme-capture-immo-atelier .ci-footer h2{font-size:16px}
 body.wp-theme-capture-immo-atelier .ci-footer .ci-brand-signature,
 body.wp-theme-capture-immo-atelier .ci-footer .ci-small{font-size:14px;line-height:1.6}
 body.wp-theme-capture-immo-atelier .ci-footer a:not(.custom-logo-link){display:inline-flex;align-items:center;min-height:48px;max-width:100%;overflow-wrap:anywhere}
 body.wp-theme-capture-immo-atelier .ci-footer a[href$="mentions-legales-capture-immo.pdf"]::after{content:" (PDF)";white-space:pre}
 body.wp-theme-capture-immo-atelier:has(#ci-mobile-actions){padding-bottom:calc(var(--ci-mobile-action-height,112px) + 24px)}
 body.wp-theme-capture-immo-atelier #ci-mobile-actions{
  display:flex;flex-wrap:wrap;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:900;
  padding:10px max(16px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));
  border-top:1px solid #dce1e8;background:#fff;box-shadow:0 -4px 18px #0b2d5b0c;font:700 16px/1.4 Arial,Helvetica,sans-serif
 }
 body.wp-theme-capture-immo-atelier #ci-mobile-actions a{flex:1 1 5rem;display:flex;align-items:center;justify-content:center;min-width:min-content;min-height:48px;padding:10px 12px;border:1px solid #0b2d5b;border-radius:5px;text-align:center;text-decoration:none;color:#0b2d5b;box-sizing:border-box}
 body.wp-theme-capture-immo-atelier #ci-mobile-actions .ci-mobile-quote{flex:2 1 12rem;background:#0b2d5b;color:#fff}
 body.wp-theme-capture-immo-atelier.has-modal-open #ci-mobile-actions,
 body.wp-theme-capture-immo-atelier:has(.ci-header .is-menu-open) #ci-mobile-actions,
 html.ci-lightbox-open #ci-mobile-actions,
 html.ci-lightbox-open #ci-home-mobile-actions{display:none}
 body.wp-theme-capture-immo-atelier .ci-lightbox{width:calc(100% - 24px);height:calc(100dvh - 24px);padding-block:env(safe-area-inset-top,0px) env(safe-area-inset-bottom,0px)}
 body.wp-theme-capture-immo-atelier .ci-lightbox-toolbar{flex-wrap:wrap;justify-content:flex-end}
 body.wp-theme-capture-immo-atelier .ci-lightbox-toolbar>span{display:none}
 body.wp-theme-capture-immo-atelier .ci-lightbox-actions{flex-wrap:wrap;justify-content:flex-end;max-width:100%}
 body.wp-theme-capture-immo-atelier .ci-lightbox button{min-height:48px;font-size:16px}
 body.wp-theme-capture-immo-atelier .ci-lightbox-footer{display:block}
 body.wp-theme-capture-immo-atelier .ci-lightbox-footer p{font-size:14px;line-height:1.5}
 body.wp-theme-capture-immo-atelier .ci-lightbox-footer .ci-lightbox-help{font-size:14px;margin-top:8px}
 body.wp-theme-capture-immo-atelier.error404 main,
 body.wp-theme-capture-immo-atelier.ci-retired-mobile-page main{font-size:16px;line-height:1.6}
 body.wp-theme-capture-immo-atelier.error404 main h1{font-size:32px;line-height:1.2}
 body.wp-theme-capture-immo-atelier.ci-retired-mobile-page main h1{font-size:32px;line-height:1.2}
 body.wp-theme-capture-immo-atelier.ci-retired-mobile-page main a{display:flex;align-items:center;min-height:48px;padding:12px 16px;border:1px solid #0b2d5b;border-radius:5px;text-decoration:none;color:#0b2d5b}
}
@media(max-width:781px) and (max-height:480px),(max-width:1024px) and (max-height:480px) and (hover:none) and (pointer:coarse){
 body.wp-theme-capture-immo-atelier:has(#ci-mobile-actions){padding-bottom:0}
 body.wp-theme-capture-immo-atelier #ci-mobile-actions{position:static;z-index:auto;padding-bottom:10px;box-shadow:none}
 body.wp-theme-capture-immo-atelier :where(a,button,input,textarea,select,summary){scroll-margin-block:24px}
}

/* Page 218 only. The additional navigation and touch guidance are hidden on PC. */
body.page-id-218 .ci-architect-mobile-nav,
body.page-id-218 .ci-architect-mobile-guide,
body.page-id-218 .ci-architect-mobile-swipe-hint { display:none; }
body.page-id-218 .ci-mobile-picture { display:contents; }

@media (max-width:781px) , (max-width:1024px)  and (hover:none) and (pointer:coarse){
  body.page-id-218 .ci-service-architect { font-size:16px; }
  body.page-id-218 .ci-service-architect .ci-shell { padding-inline:20px; }
  body.page-id-218 .ci-service-architect .ci-section { padding-block:32px; }
  body.page-id-218 .ci-service-architect .ci-kicker { font-size:14px; letter-spacing:.06em; line-height:1.5; margin-bottom:12px; }
  body.page-id-218 .ci-service-architect .ci-hero { padding-block:24px 30px; }
  body.page-id-218 .ci-service-architect .ci-hero h1 { font-size:32px; line-height:1.15; margin-bottom:20px; text-wrap:balance; }
  body.page-id-218 .ci-service-architect .ci-lead,
  body.page-id-218 .ci-service-architect .ci-section-lead,
  body.page-id-218 .ci-service-architect .ci-case-description { font-size:16px; line-height:1.6; }
  body.page-id-218 .ci-service-architect .ci-caption { font-size:14px; line-height:1.6; }
  body.page-id-218 .ci-service-architect .wp-block-button__link { min-height:48px; display:flex; align-items:center; justify-content:center; box-sizing:border-box; font-size:16px; padding:13px 18px; }
  body.page-id-218 .ci-service-architect .wp-block-buttons { gap:12px; }
  body.page-id-218 .ci-architect-mobile-nav { display:block; margin-top:18px; }
  body.page-id-218 .ci-architect-mobile-nav p { color:#526477; font-size:14px; margin:0 0 8px; }
  body.page-id-218 .ci-architect-mobile-nav div { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
  body.page-id-218 .ci-architect-mobile-nav a { display:flex; align-items:center; justify-content:center; min-height:48px; padding:9px 5px; border:1px solid #c9c1b1; border-radius:7px; color:#0b2d5b; background:white; font:600 14px/1.4 Arial,Helvetica,sans-serif; text-decoration:none; box-sizing:border-box; }
  body.page-id-218 .ci-architect-mobile-nav a:focus-visible { outline:3px solid #8a5d14; outline-offset:3px; }
  body.page-id-218 .ci-service-architect:has(.ci-architect-mobile-nav) .ci-hero-copy>.ci-image-label { display:none; }
  body.page-id-218 .ci-service-architect .ci-hero-media .ci-home-overview { height:150px; aspect-ratio:auto; }
  body.page-id-218 .ci-service-architect .ci-hero-media .ci-home-overview img { object-fit:contain; }
  body.page-id-218 .ci-service-architect .ci-hero-grid { gap:24px!important; }

  /* Keep the three steps complete, with small supporting illustrations. */
  body.page-id-218 .ci-service-architect .ci-workflow-grid { gap:25px!important; }
  body.page-id-218 .ci-service-architect .ci-workflow-card { display:grid; grid-template-columns:80px minmax(0,1fr); gap:16px; align-items:start; }
  body.page-id-218 .ci-service-architect .ci-workflow-card .ci-visual { width:80px; height:80px; aspect-ratio:auto; }
  body.page-id-218 .ci-service-architect .ci-workflow-text { margin-top:0!important; }
  body.page-id-218 .ci-service-architect .ci-workflow-text .ci-number { font-size:14px; line-height:1.5; letter-spacing:.02em; margin-bottom:8px; }
  body.page-id-218 .ci-service-architect .ci-workflow-text h3 { font-size:20px; line-height:1.25; margin:0 0 10px; }
  body.page-id-218 .ci-service-architect .ci-workflow-text p:not(.ci-number) { font-size:16px; line-height:1.6; margin:0; }
  body.page-id-218 .ci-service-architect .ci-workflow .ci-caption { margin-top:24px; }
  body.page-id-218 .ci-service-architect .ci-case-section { padding-bottom:0; }
  body.page-id-218 .ci-service-architect .ci-case-intro { padding-bottom:8px; }
  body.page-id-218 .ci-service-architect .ci-case-nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  body.page-id-218 .ci-service-architect .ci-case-nav a { min-height:48px; padding:10px; font-size:14px; gap:7px; box-sizing:border-box; }
  body.page-id-218 .ci-service-architect .ci-case-nav a>span:first-child { font-size:14px; }
  body.page-id-218 #projet-maison,
  body.page-id-218 #visite,
  body.page-id-218 #livrables,
  body.page-id-218 #ci-architect-questions { scroll-margin-top:20px; }

  body.page-id-218 .ci-service-architect .ci-tour-intro p { font-size:16px; line-height:1.6; }
  body.page-id-218 .ci-service-architect .ci-tour-intro a { display:inline-flex; align-items:center; min-height:48px; font-size:16px; line-height:1.4; }
  body.page-id-218 .ci-service-architect .ci-tour-frame { height:clamp(300px,52svh,420px); min-height:300px; border-radius:8px; }
  body.page-id-218 .ci-service-architect .ci-tour-guide { padding:18px; margin-top:14px; }
  body.page-id-218 .ci-service-architect .ci-tour-guide-intro { margin:0 0 12px; }
  body.page-id-218 .ci-service-architect .ci-tour-guide-intro strong { font-size:16px; }
  body.page-id-218 .ci-service-architect .ci-tour-guide-intro>span { display:none; }
  body.page-id-218 .ci-service-architect .ci-tour-gestures li:nth-child(-n+2) { display:none; }
  body.page-id-218 .ci-service-architect .ci-tour-gestures strong { font-size:16px; }
  body.page-id-218 .ci-service-architect .ci-tour-gestures p { font-size:16px; line-height:1.6; }
  body.page-id-218 .ci-architect-mobile-guide { display:block; font-size:14px; line-height:1.6; margin:12px 0 0; color:#526477; }

  /* All 19 images remain in the original carousel and original image viewer. */
  body.page-id-218 .ci-service-architect .ci-gallery .ci-carousel-choices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; padding:8px; position:static; }
  body.page-id-218 .ci-service-architect .ci-gallery .ci-carousel-choices button { font-size:14px; line-height:1.4; padding:10px 8px; min-height:48px; box-sizing:border-box; }
  body.page-id-218 .ci-service-architect .ci-gallery-toolbar { position:static; display:block; }
  body.page-id-218 .ci-service-architect .ci-gallery-toolbar .ci-carousel-position { position:static; width:auto; height:auto; margin:0; padding:0; overflow:visible; clip-path:none; font-size:14px; }
  body.page-id-218 .ci-service-architect .ci-gallery[data-ready] .ci-gallery-stage { padding-inline:0; }
  body.page-id-218 .ci-service-architect .ci-architect-mobile-swipe-hint { display:block; color:#526477; font-size:14px; line-height:1.6; margin:0 0 12px!important; }
  body.page-id-218 .ci-service-architect .ci-gallery .ci-carousel-slide { padding:12px; }
  body.page-id-218 .ci-service-architect .ci-gallery-heading { padding:0; margin-bottom:18px!important; }
  body.page-id-218 .ci-service-architect .ci-gallery-heading h3 { font-size:24px; }
  body.page-id-218 .ci-service-architect .ci-gallery-heading>p:not(.ci-gallery-format) { font-size:16px; line-height:1.6; }
  body.page-id-218 .ci-service-architect .ci-gallery-format { font-size:14px; line-height:1.6; padding-left:12px; margin-top:12px!important; }
  body.page-id-218 .ci-service-architect .ci-gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  body.page-id-218 .ci-service-architect .ci-gallery-card { position:relative; }
  body.page-id-218 .ci-service-architect .ci-gallery-card .ci-visual { aspect-ratio:22/17; }
  body.page-id-218 .ci-service-architect .ci-gallery-card a::after { content:""; position:absolute; inset:0; z-index:1; }
  body.page-id-218 .ci-service-architect .ci-gallery-card:has(a:focus-visible) { outline:3px solid #8a5d14; outline-offset:3px; }
  body.page-id-218 .ci-service-architect .ci-gallery-label { font-size:14px; line-height:1.45; padding:10px 8px; }
  body.page-id-218 .ci-service-architect .ci-carousel-controls { gap:10px; }
  body.page-id-218 .ci-service-architect .ci-carousel-position { font-size:14px; letter-spacing:.04em; }
  body.page-id-218 .ci-service-architect .ci-gallery .ci-carousel-actions,
  body.page-id-218 .ci-service-architect .ci-gallery .ci-gallery-side-nav { display:none; }
  body.page-id-218 .ci-service-architect .ci-card p:not(.ci-number),
  body.page-id-218 .ci-service-architect .ci-faq details p { font-size:16px; line-height:1.6; }
  body.page-id-218 .ci-service-architect .ci-service-formats p { font-size:16px; line-height:1.6; }
  body.page-id-218 .ci-service-architect .ci-service-formats .ci-caption { font-size:14px; }
  body.page-id-218 .ci-service-architect .ci-faq summary { min-height:48px; box-sizing:border-box; padding-block:14px; font-size:16px; line-height:1.5; }
  body.page-id-218 .ci-service-architect .ci-deliverables>p>a { display:inline-flex; align-items:center; min-height:48px; font-size:16px; line-height:1.5; }
}

@media (max-width:360px) {
  body.page-id-218 .ci-service-architect .ci-shell { padding-inline:18px; }
  body.page-id-218 .ci-service-architect .ci-hero h1 { font-size:29px; }
  body.page-id-218 .ci-service-architect .ci-workflow-card { grid-template-columns:64px minmax(0,1fr); gap:12px; }
  body.page-id-218 .ci-service-architect .ci-workflow-card .ci-visual { width:64px; height:64px; }
  body.page-id-218 .ci-service-architect .ci-carousel-controls { flex-wrap:wrap; }
}

@media (max-width:781px) and (max-height:480px) , (max-width:1024px) and (max-height:480px)  and (hover:none) and (pointer:coarse){
  body.page-id-218 .ci-service-architect .ci-tour-frame { height:75svh; min-height:240px; }
}

/* Page 214 only. Existing desktop sections remain the authoritative PC layout. */
body.page-id-214 .ci-agency-mobile{display:none}
body.page-id-214 .ci-home-overview picture{display:contents}
@media(max-width:781px),(max-width:1024px) and (hover:none) and (pointer:coarse){
 body.page-id-214 .ci-agency-mobile{display:block}
 body.page-id-214 .ci-service-agency .ci-shell{padding-inline:20px}
 body.page-id-214 .ci-service-agency .ci-hero{padding-block:22px 28px}
 body.page-id-214 .ci-service-agency .ci-hero h1{font-size:32px;line-height:1.14;margin-bottom:18px}
 body.page-id-214 .ci-service-agency .ci-hero .ci-lead{font-size:16px;line-height:1.55;margin-bottom:18px}
 body.page-id-214 .ci-service-agency .ci-hero .ci-kicker{font-size:12px;line-height:1.5;margin-bottom:12px}
 body.page-id-214:has(.ci-agency-jump) .ci-service-agency .ci-hero-media,body.page-id-214:has(.ci-agency-jump) .ci-service-agency .ci-hero .ci-image-label{display:none}
 body.page-id-214 .ci-service-agency .ci-hero-grid{gap:0!important}
 body.page-id-214 .ci-agency-jump{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 18px}
 body.page-id-214 .ci-agency-jump a{display:flex;align-items:center;justify-content:center;min-height:48px;border:1px solid #c7cbd0;border-radius:7px;background:#fff;color:#0b2d5b;font-size:15px;line-height:1.3;font-weight:700;text-decoration:none;padding:7px 5px;box-sizing:border-box}
 body.page-id-214 .ci-service-agency .wp-block-button__link{display:flex;align-items:center;justify-content:center;min-height:48px;font-size:16px;line-height:1.4;padding:12px 18px;box-sizing:border-box}
 body.page-id-214 .ci-service-agency .ci-section{padding-block:28px}
 body.page-id-214 .ci-service-agency .ci-section h2,body.page-id-214 .ci-service-agency .ci-tour-heading h2{font-size:28px;line-height:1.2}
 body.page-id-214 .ci-service-agency .ci-section-lead,body.page-id-214 .ci-service-agency .ci-section p:not(.ci-kicker):not(.ci-caption){font-size:16px;line-height:1.55}
 body.page-id-214 .ci-service-agency .ci-kicker{font-size:12px;line-height:1.5;margin-bottom:12px}
 body.page-id-214 .ci-service-agency .ci-caption{font-size:14px;line-height:1.5}
 body.page-id-214:has(.ci-agency-jump) .ci-service-package-grid,body.page-id-214:has(.ci-agency-jump) .ci-service-process-grid,body.page-id-214:has(.ci-agency-jump) .ci-tour-guide,body.page-id-214:has(.ci-agency-jump) .ci-service-usage,body.page-id-214:has(.ci-agency-jump) .ci-service-related{display:none!important}
 body.page-id-214 .ci-agency-pack-list{list-style:none;margin:22px 0 20px;padding:0;display:grid;gap:16px}
 body.page-id-214 .ci-agency-pack-list li{padding:0 0 16px 18px;border-left:3px solid #be8a2d;border-bottom:1px solid #dfd9cd}
 body.page-id-214 .ci-agency-pack-list h3{font-size:22px;line-height:1.25;margin:0 0 6px}
 body.page-id-214 .ci-agency-pack-list p{margin:0;color:#526477}
 body.page-id-214 .ci-agency-disclosure{border:1px solid #d3cfc6;border-radius:7px;background:#fff;margin:0 0 12px}
 body.page-id-214 .ci-agency-disclosure summary{display:list-item;list-style-position:inside;min-height:52px;box-sizing:border-box;padding:14px 16px;font-family:Arial,Helvetica,sans-serif;font-weight:700;font-size:16px;line-height:1.5;color:#0b2d5b;cursor:pointer}
 body.page-id-214 .ci-agency-disclosure>div{padding:0 16px 14px}
 body.page-id-214 .ci-agency-disclosure p{font-size:16px;line-height:1.55;color:#526477;margin:10px 0}
 body.page-id-214 .ci-agency-disclosure h3{font-size:21px;line-height:1.3;margin:16px 0 8px}
 body.page-id-214 .ci-agency-disclosure a{display:flex;align-items:center;gap:8px;min-height:48px;font-size:16px;line-height:1.5;font-weight:700;color:#0b2d5b}
 body.page-id-214 .ci-agency-steps{list-style:none;counter-reset:agency-step;margin:22px 0 16px;padding:0;display:grid;gap:20px}
 body.page-id-214 .ci-agency-steps li{counter-increment:agency-step;position:relative;padding-left:42px}
 body.page-id-214 .ci-agency-steps li::before{content:counter(agency-step);position:absolute;left:0;top:1px;display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:#0b2d5b;color:#fff;font-size:16px;font-weight:700}
 body.page-id-214 .ci-agency-steps h3{font-size:21px;line-height:1.3;margin:0 0 6px}
 body.page-id-214 .ci-agency-steps p{font-size:16px;line-height:1.55;color:#526477;margin:0}
 body.page-id-214 .ci-service-agency .ci-tour-header{gap:12px!important;margin-bottom:18px!important}
 body.page-id-214:has(.ci-agency-jump) .ci-service-agency .ci-tour-intro>p:last-child{display:none}
 body.page-id-214 .ci-agency-visit-link{margin:14px 0 0!important}
 body.page-id-214 .ci-agency-visit-link a{display:block;min-height:48px;padding:11px 14px;border:1px solid #c7cbd0;border-radius:7px;background:#fff;color:#0b2d5b;font-size:16px;font-weight:700;line-height:1.5;text-decoration:none;box-sizing:border-box}
 body.page-id-214 .ci-agency-link-note{display:block;font-size:14px;font-weight:400;color:#526477}
 body.page-id-214 .ci-agency-touch-guide{padding:14px 16px;background:#f8f7f3;border-left:3px solid #be8a2d;margin:0 0 14px!important}
 body.page-id-214 .ci-agency-touch-guide strong,body.page-id-214 .ci-agency-touch-guide span{display:block}
 body.page-id-214 .ci-agency-touch-guide strong{margin-bottom:4px;color:#0b2d5b}
 body.page-id-214 .ci-service-agency .ci-remote-wide .ci-tour-frame{height:clamp(300px,55svh,460px);min-height:300px;box-shadow:none;border-radius:8px}
 body.page-id-214 .ci-agency-secondary{padding-block:28px}
 body.page-id-214 .ci-service-agency .ci-faq{margin-top:20px!important}
 body.page-id-214 .ci-service-agency .ci-faq details{padding:0;background:#fff}
 body.page-id-214 .ci-service-agency .ci-faq summary{min-height:56px;padding:15px 14px;box-sizing:border-box;font-size:16px;line-height:1.5}
 body.page-id-214 .ci-service-agency .ci-faq details p{padding:0 14px;font-size:16px;line-height:1.55}
 body.page-id-214 .ci-service-agency :is(#pack-immobilier,#visite,#questions-agences){scroll-margin-top:24px}
 body.page-id-214 .ci-service-agency :is(a,summary):focus-visible{outline:3px solid #0b2d5b;outline-offset:4px}
}
@media(max-width:360px){body.page-id-214 .ci-service-agency .ci-hero h1{font-size:29px}}
@media(max-width:781px) and (max-height:480px),(max-width:1024px) and (max-height:480px) and (hover:none) and (pointer:coarse){body.page-id-214 .ci-service-agency .ci-remote-wide .ci-tour-frame{height:85svh;min-height:260px}}

/* Contact page 66: the published desktop composition is preserved. */
body.page-id-66 .ci-contact-mobile-entry{display:none}
@media(max-width:781px),(max-width:1024px) and (hover:none) and (pointer:coarse){
 body.page-id-66 .ci-contact-hero{padding-block:26px 22px}
 body.page-id-66 .ci-contact-hero .ci-kicker{font-size:12px;line-height:1.5;letter-spacing:.12em;margin-bottom:15px}
 body.page-id-66 .ci-contact-hero h1{font-size:36px;line-height:1.12;letter-spacing:-.035em;margin-bottom:15px}
 body.page-id-66 .ci-contact-hero .ci-lead{font-size:16px;line-height:1.6;margin:0 0 18px;max-width:none}
 body.page-id-66 .ci-contact-mobile-entry{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}
 body.page-id-66 .ci-contact-mobile-entry a{display:flex;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:11px 12px;border:1px solid #b7c2cc;border-radius:6px;background:#fff;color:#0b2d5b;text-decoration:none;font-size:16px;font-weight:600;line-height:1.4;text-align:center}
 body.page-id-66 .ci-contact-mobile-entry .ci-contact-mobile-form-link{grid-column:1/-1;min-height:48px;background:#0b2d5b;border-color:#0b2d5b;color:#fff}
 body.page-id-66 .ci-contact-mobile-entry a:focus-visible{outline:3px solid #bd7300;outline-offset:3px}
 body.page-id-66 .entry-content>.ci-section{padding-block:30px 40px}
 body.page-id-66 .ci-body-grid{gap:32px!important}
 body.page-id-66 #demande-de-devis{scroll-margin-top:18px}
 body.page-id-66 .ci-contact-form h2{font-size:28px;line-height:1.15;margin:0 0 12px}
 body.page-id-66 .ci-contact-form>p{font-size:14px;line-height:1.6;margin:0 0 22px}
 body.page-id-66 .ci-form-grid{grid-template-columns:minmax(0,1fr);gap:20px;min-width:0}
 body.page-id-66 .ci-form-grid>p,body.page-id-66 .ci-form-grid>fieldset{min-width:0}
 body.page-id-66 .wpcf7 label,body.page-id-66 .wpcf7 legend{font-size:16px;line-height:1.5;font-weight:600;color:#0b2d5b}
 body.page-id-66 .wpcf7 .wpcf7-form-control-wrap{display:block;min-width:0}
 body.page-id-66 .wpcf7 input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=submit]),body.page-id-66 .wpcf7 select,body.page-id-66 .wpcf7 textarea{width:100%;max-width:100%;min-width:0;min-height:52px;padding:13px 12px;margin-top:7px;font-size:16px;line-height:1.5;border-color:#7b919e;box-sizing:border-box}
 body.page-id-66 .wpcf7 select{padding-right:28px}
 body.page-id-66 .wpcf7 textarea{height:180px;min-height:180px;resize:vertical}
 body.page-id-66 .wpcf7 .ci-form-help{font-size:14px!important;line-height:1.55;margin-top:7px;color:#425b6b!important}
 body.page-id-66 .wpcf7 fieldset.ci-form-wide{padding:15px 12px;border-radius:6px;border-color:#c5d0d6}
 body.page-id-66 .wpcf7 .wpcf7-checkbox{display:grid;gap:8px}
 body.page-id-66 .wpcf7 .wpcf7-list-item{margin:0}
 body.page-id-66 .wpcf7 .wpcf7-list-item label{display:flex;align-items:center;gap:12px;min-height:56px;padding:11px 10px;border:1px solid #d1d9de;border-radius:5px;background:#fff;font-weight:400;cursor:pointer}
 body.page-id-66 .wpcf7 input[type=checkbox]{flex:0 0 22px;width:22px;height:22px;margin:0;accent-color:#0b2d5b}
 body.page-id-66 .wpcf7 .wpcf7-list-item-label{min-width:0;overflow-wrap:anywhere;font-size:16px;line-height:1.5}
 body.page-id-66 .wpcf7 input[type=submit]{display:block;width:100%;min-height:56px;font-size:16px;line-height:1.5;white-space:normal;padding:14px 16px}
 body.page-id-66 .wpcf7 .ci-form-privacy{font-size:14px!important;line-height:1.6;margin-top:20px!important;color:#425b6b}
 body.page-id-66 .wpcf7 .ci-form-privacy a{display:flex;align-items:center;min-height:48px;font-size:14px;line-height:1.5}
 body.page-id-66 .wpcf7 .wpcf7-not-valid-tip{font-size:15px!important;line-height:1.5;padding-top:8px;color:#a91e1e}
 body.page-id-66 .wpcf7 [aria-invalid=true]{border:2px solid #a91e1e!important}
 body.page-id-66 .wpcf7 .wpcf7-response-output{font-size:16px;line-height:1.5;margin:20px 0!important;padding:16px!important}
 body.page-id-66 .wpcf7 :is(input,select,textarea):focus-visible{outline:3px solid #bd7300;outline-offset:3px}
 body.page-id-66 .ci-contact-details{padding:20px;border-radius:6px}
 body.page-id-66 .ci-contact-details .ci-contact-portrait{height:180px;aspect-ratio:auto;margin-bottom:20px!important}
 body.page-id-66 .ci-contact-details h2{font-size:26px;line-height:1.2}
 body.page-id-66 .ci-contact-details>p{font-size:16px;line-height:1.6}
 body.page-id-66 .ci-contact-details>p:has(a){margin-block:10px}
 body.page-id-66 .ci-contact-details a{display:flex;align-items:center;min-height:48px;font-size:16px;line-height:1.5;overflow-wrap:anywhere}
}
@media(max-width:360px){
 body.page-id-66 .ci-contact-hero h1{font-size:32px}
}

/* Intrinsic wrapping also keeps controls usable with independently enlarged text. */
@media(max-width:781px),(max-width:1024px) and (hover:none) and (pointer:coarse){
 body.wp-theme-capture-immo-atelier main :where(h1,h2,h3,p,li,summary,legend,label){overflow-wrap:anywhere}
 body.wp-theme-capture-immo-atelier main :where(h1,h2,h3){font-family:Arial,Helvetica,sans-serif}
 body.wp-theme-capture-immo-atelier .ci-header .wp-block-navigation__responsive-container:not(.is-menu-open){display:none}
 body.wp-theme-capture-immo-atelier .wp-block-columns{flex-direction:column}
 body.wp-theme-capture-immo-atelier .wp-block-columns>.wp-block-column{flex-basis:auto!important;width:100%}
 body.page-id-218 .ci-architect-mobile-nav div,
 body.page-id-214 .ci-agency-jump{display:flex;flex-wrap:wrap}
 body.page-id-218 .ci-architect-mobile-nav a,
 body.page-id-214 .ci-agency-jump a{flex:1 1 6rem;min-width:min-content;padding-inline:12px}
 body.page-id-218 .ci-service-architect .ci-case-nav{display:flex;flex-wrap:wrap}
 body.page-id-218 .ci-service-architect .ci-case-nav a{flex:1 1 9rem;min-width:min-content}
 body.wp-theme-capture-immo-atelier .ci-form-privacy a[href$="mentions-legales-capture-immo.pdf"]::after{content:" (PDF) ↗";white-space:pre}
}
