/* Macrigi Franchising 2027 — canonical UX/UI aligned with approved Macrigi 2027 landings */
.mfr27-page{
  --mfr-navy:#162B39;--mfr-blue:#5FAECE;--mfr-petrol:#388A95;--mfr-white:#FFFFFF;
  --mfr-soft:#FAFAFA;--mfr-text:#1D2A36;--mfr-muted:#60727B;--mfr-line:rgba(22,43,57,.14);
  --mfr-shadow:0 12px 30px rgba(22,43,57,.08);--mfr-max:1280px;
  width:100%;overflow-x:hidden;color:var(--mfr-text);background:#fff;font-family:inherit;
  -webkit-text-size-adjust:100%;text-size-adjust:100%;
}
.mfr27-page,.mfr27-page *,.mfr27-page *:before,.mfr27-page *:after{box-sizing:border-box}
.mfr27-page img{display:block;max-width:100%;height:auto}.mfr27-page a{text-decoration:none}
.mfr27-wrap{width:min(var(--mfr-max),calc(100% - 56px));margin-inline:auto}
.mfr27-section{padding:82px 0}.mfr27-soft{background:#EDF7FB}.mfr27-center{text-align:center}
.mfr27-page h1,.mfr27-page h2,.mfr27-page h3{margin:0;color:var(--mfr-navy);font-weight:800}
.mfr27-page h1{font-size:clamp(42px,4vw,58px);line-height:1.06;letter-spacing:-.025em}
.mfr27-page h2{font-size:36px;line-height:1.15;letter-spacing:-.018em}
.mfr27-page h3{font-size:21px;line-height:1.25}
.mfr27-page p{margin:0 0 16px;font-size:18px;line-height:1.6;color:var(--mfr-text)}
.mfr27-eyebrow{margin:0 0 12px!important;color:var(--mfr-blue)!important;font-size:14px!important;line-height:1.3!important;font-weight:800!important;letter-spacing:.09em;text-transform:uppercase}
.mfr27-heading{max-width:820px;margin:0 auto 34px}.mfr27-heading h2{margin-bottom:0}
.mfr27-section-intro{max-width:720px}
/* v0.7.207 — fixed-header anchor offsets */
#modelli,#richiedi{scroll-margin-top:170px}

.mfr27-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.mfr27-btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 24px;border-radius:6px;font-size:15px;font-weight:800;transition:.2s ease}
.mfr27-btn-primary{background:var(--mfr-blue);color:var(--mfr-navy)!important;border:1px solid var(--mfr-blue)}
.mfr27-btn-primary:hover{background:var(--mfr-navy);color:#fff!important;border-color:var(--mfr-navy)}
.mfr27-btn-outline{color:#fff!important;border:1px solid rgba(255,255,255,.75);background:rgba(7,24,33,.55)}
.mfr27-btn-outline:hover{background:#fff;color:var(--mfr-navy)!important}
.mfr27-page a:focus-visible,.mfr27-page button:focus-visible,.mfr27-page input:focus,.mfr27-page select:focus,.mfr27-page textarea:focus{outline:3px solid #9edcf2;outline-offset:3px}

/* Hero */
.mfr27-hero{position:relative;min-height:620px;display:flex;align-items:center;background-color:var(--mfr-navy);background-image:var(--mfr27-hero);background-repeat:no-repeat;background-position:right center;background-size:auto 100%}
.mfr27-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,26,35,.98) 0%,rgba(7,26,35,.94) 34%,rgba(7,26,35,.70) 53%,rgba(7,26,35,.18) 72%,rgba(7,26,35,0) 100%)}
.mfr27-hero-inner{position:relative;z-index:1}.mfr27-hero-copy{max-width:650px;color:#fff}.mfr27-hero h1{color:#fff;margin-bottom:20px}.mfr27-hero .mfr27-lead{max-width:620px;color:#fff;font-size:19px;line-height:1.58}

/* Trust */
.mfr27-trust{background:#fff;border-bottom:1px solid var(--mfr-line)}
.mfr27-trust-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.mfr27-trust-card{display:grid;grid-template-columns:42px 1fr;gap:14px;align-items:center;padding:24px 20px;border-right:1px solid var(--mfr-line)}
.mfr27-trust-card:last-child{border-right:0}.mfr27-trust-card>span{font-size:30px;color:var(--mfr-blue);line-height:1}
.mfr27-trust-card h3{font-size:18px;margin-bottom:6px}.mfr27-trust-card p{font-size:16px;line-height:1.5;margin:0;color:var(--mfr-muted)}

/* Project/video */
.mfr27-project-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:54px;align-items:center}
.mfr27-video-shell{overflow:hidden;border-radius:8px;box-shadow:var(--mfr-shadow);background:#071b25}
.mfr27-video-frame{position:relative;aspect-ratio:16/9;background:#000}.mfr27-video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.mfr27-video-caption{padding:14px 18px;background:var(--mfr-navy);color:#fff;font-size:13px;font-weight:800;letter-spacing:.02em}
.mfr27-project-copy h2{margin-bottom:18px}.mfr27-project-copy>p:not(.mfr27-eyebrow){font-size:18px}
.mfr27-checks{list-style:none;padding:0;margin:22px 0 0}.mfr27-checks li{position:relative;margin:9px 0;padding-left:30px;font-size:16px;line-height:1.45}
.mfr27-checks li:before{content:"✓";position:absolute;left:0;top:.05em;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--mfr-blue);color:#fff;font-size:12px;font-weight:900}

/* Cards */
.mfr27-card-grid{display:grid;gap:20px}.mfr27-model-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.mfr27-card{display:flex;flex-direction:column;overflow:hidden;background:#fff;border:1px solid var(--mfr-line);border-radius:8px;box-shadow:var(--mfr-shadow)}
.mfr27-card>img{width:100%;height:auto;object-fit:contain;background:#fff}.mfr27-card-body{display:flex;flex:1;flex-direction:column;padding:20px}
.mfr27-card h3{font-size:21px;margin-bottom:9px}.mfr27-card p{font-size:17px;line-height:1.58;margin-bottom:18px;color:var(--mfr-text)}
.mfr27-card-link{margin-top:auto;display:flex;align-items:center;justify-content:center;min-height:50px;padding:0 14px;border:1px solid var(--mfr-blue);border-radius:5px;color:var(--mfr-navy)!important;font-size:14px;font-weight:800;text-align:center}
.mfr27-card-link:hover{background:var(--mfr-blue);color:var(--mfr-navy)!important}

/* Formats + apps */
.mfr27-split{display:grid;grid-template-columns:1.04fr .96fr;gap:48px;align-items:start}.mfr27-split h2{margin-bottom:18px}
.mfr27-format-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px}.mfr27-format-grid .mfr27-card>img{height:auto}.mfr27-format-grid .mfr27-card-body{text-align:center;padding:16px}
.mfr27-format-size{font-size:29px!important}.mfr27-format-grid .mfr27-card p{font-size:15px;margin-bottom:15px}
.mfr27-local{min-width:0}.mfr27-flow{display:grid;grid-template-columns:1fr 28px 1fr 28px 1fr;align-items:center;gap:7px;margin:18px 0 22px}
.mfr27-flow>div{text-align:center}.mfr27-flow span{display:block;margin-bottom:5px;color:var(--mfr-blue);font-size:31px}.mfr27-flow strong{display:block;font-size:16px;color:var(--mfr-navy)}.mfr27-flow small{display:block;margin-top:4px;font-size:13px;line-height:1.4;color:var(--mfr-muted)}.mfr27-flow>b{text-align:center;color:var(--mfr-blue);font-size:30px}
.mfr27-app-visual{overflow:hidden;border-radius:8px;background:#fff;box-shadow:var(--mfr-shadow)}.mfr27-app-visual img{width:100%;height:auto;object-fit:contain;background:#fff}
.mfr27-app-copy-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}.mfr27-app-copy-grid article{padding:18px;border-radius:8px;background:#f7fbfd;border:1px solid var(--mfr-line);text-align:center}.mfr27-app-copy-grid h3{font-size:20px;margin-bottom:8px}.mfr27-app-copy-grid p{font-size:16px;line-height:1.55;margin:0}

/* Service + path */
.mfr27-services{padding-top:28px}.mfr27-service-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.mfr27-service-grid .mfr27-card>img{height:auto}.mfr27-service-grid .mfr27-card-body{text-align:center}.mfr27-service-grid .mfr27-card p{margin-bottom:0}
.mfr27-path{padding-top:58px;border-top:1px solid var(--mfr-line)}.mfr27-path-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.mfr27-step-card{display:grid;grid-template-columns:42px 1fr;gap:14px;align-items:flex-start;padding:18px;border:1px solid var(--mfr-line);border-radius:8px;background:#fff}
.mfr27-step-card>span{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--mfr-blue);color:#fff;font-size:16px;font-weight:900}.mfr27-step-card h3{font-size:19px;margin-bottom:6px}.mfr27-step-card p{font-size:15px;line-height:1.5;margin:0;color:var(--mfr-muted)}

/* Network/form */
.mfr27-network{position:relative;padding:82px 0;background:linear-gradient(90deg,rgba(8,34,49,.92),rgba(8,34,49,.82)),var(--mfr27-network-bg) center/cover no-repeat;color:#fff}.mfr27-network-grid{position:relative;z-index:1;display:grid;grid-template-columns:.94fr 1.06fr;gap:52px;align-items:center}
.mfr27-network h2,.mfr27-network-copy>p{color:#fff}.mfr27-network h2{margin-bottom:18px}.mfr27-network-copy>p:not(.mfr27-eyebrow){font-size:18px;line-height:1.65;max-width:600px}
.mfr27-form-card{padding:28px;background:#fff;color:var(--mfr-text);border-radius:10px;box-shadow:0 16px 36px rgba(0,0,0,.16)}.mfr27-form-card h3{font-size:21px;margin-bottom:8px}.mfr27-form-card>p{font-size:14px;line-height:1.45;margin-bottom:20px}
.mfr27-form-card .macrigi-contact-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.mfr27-form-card .mcf-field{margin:0}.mfr27-form-card .mcf-field--message,.mfr27-form-card .mcf-field--captcha,.mfr27-form-card .mcf-check,.mfr27-form-card .mcf-errors,.mfr27-form-card .g-recaptcha,.mfr27-form-card .mcf-submit{grid-column:1/-1}.mfr27-form-card label{display:block;margin-bottom:5px;font-size:13px;font-weight:700}.mfr27-form-card input,.mfr27-form-card select,.mfr27-form-card textarea{width:100%;min-height:46px;padding:10px 12px;border:1px solid #d7e0e5;border-radius:5px;background:#fff;color:var(--mfr-text);font:inherit;font-size:16px}.mfr27-form-card textarea{min-height:105px;resize:vertical}.mfr27-form-card .mcf-submit{justify-self:end;min-height:48px;padding:0 24px;border:0;border-radius:5px;background:var(--mfr-blue);color:#fff;font-size:14px;font-weight:800}.mfr27-form-card .mcf-hp{display:none!important}


/* v0.7.206 — canonical Macrigi landing width on large desktop */
@media (min-width:1440px){
  .mfr27-hero{min-height:680px;background-size:auto 100%;background-position:right center}
  .mfr27-wrap{box-sizing:border-box!important;width:auto!important;max-width:none!important;margin-left:clamp(140px,10vw,190px)!important;margin-right:clamp(140px,10vw,190px)!important;padding-left:0!important;padding-right:0!important}
  .mfr27-section{padding:88px 0}
  .mfr27-project-grid{grid-template-columns:1.08fr .92fr;gap:64px}
  .mfr27-split{grid-template-columns:.88fr 1.12fr;gap:64px}
  .mfr27-card p{font-size:17px;line-height:1.58}
  .mfr27-app-copy-grid p{font-size:16px}
  .mfr27-trust-card p{font-size:16px}
}

/* Desktop below 1440: canonical landing gutter */
@media (max-width:1439px){
  .mfr27-wrap{width:calc(100% - 72px)}
  .mfr27-hero{min-height:560px;background-size:auto 100%;background-position:right center}.mfr27-section{padding:64px 0}
  .mfr27-project-grid{gap:46px}.mfr27-split{gap:40px}
}


/* v0.7.211 — screenshot-validated laptop / large-tablet geometry.
   Keep the approved App image intact; delay the two-column split until there is real horizontal room. */
@media (min-width:1300px) and (max-width:1439px){
  .mfr27-split{grid-template-columns:.90fr 1.10fr;gap:38px}
  .mfr27-app-visual{width:100%;max-width:none;margin-inline:auto}
  .mfr27-app-copy-grid{width:100%;margin-inline:auto}
}
@media (min-width:1025px) and (max-width:1299px){
  .mfr27-split{grid-template-columns:1fr;gap:44px}
  .mfr27-format-grid{width:100%;max-width:940px;margin-left:auto;margin-right:auto}
  .mfr27-local{width:100%;max-width:940px;margin:8px auto 0}
  .mfr27-app-visual{width:100%;max-width:940px;margin-inline:auto}
  .mfr27-app-copy-grid{width:100%;max-width:940px;margin-left:auto;margin-right:auto}
}
@media (min-width:768px) and (max-width:1024px){
  .mfr27-format-grid{width:100%;max-width:800px;margin-left:auto;margin-right:auto}
  .mfr27-local{width:100%;max-width:800px;margin:8px auto 0}
  .mfr27-app-visual,.mfr27-app-copy-grid{width:100%;max-width:800px;margin-left:auto;margin-right:auto}
}

/* Tablet */
@media (max-width:1024px){
  .mfr27-wrap{width:calc(100% - 48px)}
  .mfr27-section{padding:58px 0}.mfr27-page h1{font-size:42px}.mfr27-page h2{font-size:32px}.mfr27-page p{font-size:17px}
  .mfr27-hero{min-height:520px;background-size:auto 100%;background-position:right center}.mfr27-hero-copy{max-width:580px}
  .mfr27-trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mfr27-trust-card:nth-child(2){border-right:0}.mfr27-trust-card:nth-child(-n+2){border-bottom:1px solid var(--mfr-line)}
  .mfr27-project-grid,.mfr27-split,.mfr27-network-grid{grid-template-columns:1fr}.mfr27-project-grid{gap:34px}.mfr27-network-grid{gap:34px}
  .mfr27-model-grid,.mfr27-service-grid,.mfr27-path-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mfr27-format-grid{max-width:760px}.mfr27-local{margin-top:8px}.mfr27-app-visual{max-width:760px}

}

/* Smartphone — one structure, two-column card rule */
@media (max-width:767px){
  #modelli,#richiedi{scroll-margin-top:120px}

  .mfr27-wrap{width:calc(100% - 28px)}
  .mfr27-section{padding:48px 0}.mfr27-page h1{font-size:32px;line-height:1.12}.mfr27-page h2{font-size:28px;line-height:1.18}.mfr27-page h3{font-size:19px}.mfr27-page p{font-size:16px;line-height:1.55}.mfr27-eyebrow{font-size:12px!important}
  .mfr27-hero{min-height:610px;align-items:flex-end;background-size:auto 100%;background-position:67% center}.mfr27-hero-shade{background:linear-gradient(180deg,rgba(5,20,28,.12) 0%,rgba(5,20,28,.46) 42%,rgba(5,20,28,.93) 78%,rgba(5,20,28,.98) 100%)}.mfr27-hero-inner{padding-bottom:32px}.mfr27-hero .mfr27-lead{font-size:16px}.mfr27-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:22px}.mfr27-btn{width:100%;min-height:50px;font-size:14px}
  .mfr27-trust-grid,.mfr27-model-grid,.mfr27-format-grid,.mfr27-service-grid,.mfr27-path-grid,.mfr27-app-copy-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .mfr27-trust-card{display:block;padding:20px 12px;text-align:center;border:1px solid var(--mfr-line)!important;border-radius:7px}.mfr27-trust{padding:16px 0}.mfr27-trust-card>span{display:block;margin-bottom:8px}.mfr27-trust-card h3{font-size:15px}.mfr27-trust-card p{font-size:13px;line-height:1.45}
  .mfr27-project-grid{gap:28px}.mfr27-video-caption{text-align:center;font-size:12px}.mfr27-project-copy{text-align:left}.mfr27-checks li{font-size:15px}
  .mfr27-heading{margin-bottom:28px}.mfr27-card-grid{gap:12px}.mfr27-card>img{height:auto}.mfr27-card-body{padding:14px 10px;text-align:center}.mfr27-card h3{font-size:18px}.mfr27-card p{font-size:14px;line-height:1.45;margin-bottom:14px}.mfr27-card-link{min-height:46px;padding:8px 7px;font-size:13px}
  .mfr27-format-grid{margin-top:22px}.mfr27-format-grid .mfr27-card>img{height:auto}.mfr27-format-grid .mfr27-card-body{padding:12px 8px}.mfr27-format-size{font-size:23px!important}.mfr27-format-grid .mfr27-card p{font-size:13px}
  .mfr27-format-grid>.mfr27-card:last-child:nth-child(odd){grid-column:1/-1;width:calc(50% - 6px);justify-self:center}
  .mfr27-flow{grid-template-columns:1fr 18px 1fr 18px 1fr;gap:4px}.mfr27-flow span{font-size:25px}.mfr27-flow strong{font-size:13px}.mfr27-flow small{font-size:12.5px;line-height:1.42}.mfr27-flow>b{font-size:22px}
  .mfr27-app-visual img{width:100%;height:auto;object-fit:contain}.mfr27-app-copy-grid article{padding:14px 9px;text-align:center}.mfr27-app-copy-grid h3{font-size:17px}.mfr27-app-copy-grid p{font-size:13px;line-height:1.45}
  .mfr27-service-grid .mfr27-card>img{height:auto}.mfr27-step-card{display:block;padding:16px 10px;text-align:center}.mfr27-step-card>span{margin:0 auto 10px}.mfr27-step-card h3{font-size:16px}.mfr27-step-card p{font-size:13px;line-height:1.45}
  .mfr27-network{padding:58px 0;background-position:center}.mfr27-network-copy{text-align:center}.mfr27-network-copy>p:not(.mfr27-eyebrow){font-size:16px}.mfr27-form-card{padding:20px}.mfr27-form-card .macrigi-contact-form{grid-template-columns:1fr}.mfr27-form-card .mcf-field,.mfr27-form-card .mcf-check,.mfr27-form-card .mcf-submit{grid-column:1}.mfr27-form-card .mcf-submit{width:100%}
}

@media (max-width:430px){
  .mfr27-flow small{font-size:12.5px}.mfr27-card-link{font-size:13px}

  .mfr27-wrap{width:calc(100% - 22px)}
  .mfr27-hero{min-height:590px}.mfr27-page h1{font-size:30px}.mfr27-page h2{font-size:27px}
  .mfr27-card>img{height:auto}.mfr27-card h3{font-size:17px}.mfr27-card p{font-size:13px}.mfr27-card-link{font-size:13px}
  .mfr27-trust-grid,.mfr27-model-grid,.mfr27-format-grid,.mfr27-service-grid,.mfr27-path-grid,.mfr27-app-copy-grid{gap:10px}
}
@media (max-width:767px){
  .mfr27-card-grid > *:last-child:nth-child(odd){grid-column:1/-1;width:calc(50% - 6px);justify-self:center}
  .mfr27-card-grid > *{text-align:center}
}
@media (max-width:430px){
  .mfr27-card-grid > *:last-child:nth-child(odd){width:calc(50% - 5px)}
}

/* v0.7.212 — App-first centered hierarchy approved for responsive stability */
.mfr27-formats-heading{max-width:860px;margin:0 auto 36px}
.mfr27-formats-heading .mfr27-section-intro{max-width:820px;margin-left:auto;margin-right:auto}
.mfr27-local-centered{width:100%;max-width:980px;margin:0 auto}
.mfr27-local-centered .mfr27-flow{max-width:860px;margin-left:auto;margin-right:auto}
.mfr27-local-centered .mfr27-app-visual{width:100%;max-width:900px;margin:24px auto 0}
.mfr27-local-centered .mfr27-app-copy-grid{width:100%;max-width:900px;margin:18px auto 0}
.mfr27-format-grid-below{grid-template-columns:repeat(3,minmax(0,1fr));max-width:980px;margin:42px auto 0}

@media (min-width:768px) and (max-width:1299px){
  .mfr27-local-centered{max-width:860px}
  .mfr27-local-centered .mfr27-app-visual,.mfr27-local-centered .mfr27-app-copy-grid{max-width:820px}
  .mfr27-format-grid-below{max-width:860px}
}

@media (max-width:767px){
  .mfr27-formats-heading{margin-bottom:28px}
  .mfr27-local-centered{width:100%;max-width:none}
  .mfr27-local-centered .mfr27-app-visual,.mfr27-local-centered .mfr27-app-copy-grid{max-width:none}
  .mfr27-format-grid-below{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none;margin-top:30px}
  .mfr27-format-grid-below>.mfr27-card:last-child:nth-child(odd){grid-column:1/-1;width:calc(50% - 6px);justify-self:center}
}

/* v0.7.213 — desktop full-width continuity for the App + 30-day formats block.
   Uses the canonical .mfr27-wrap width instead of the narrow 0.7.212 desktop cap.
   Tablet/mobile rules remain unchanged. */
@media (min-width:1300px){
  .mfr27-formats-apps .mfr27-local-centered{
    width:100%;
    max-width:none;
  }
  .mfr27-formats-apps .mfr27-local-centered .mfr27-flow{
    width:100%;
    max-width:1040px;
  }
  .mfr27-formats-apps .mfr27-local-centered .mfr27-app-visual,
  .mfr27-formats-apps .mfr27-local-centered .mfr27-app-copy-grid{
    width:100%;
    max-width:1120px;
  }
  .mfr27-formats-apps .mfr27-format-grid-below{
    width:100%;
    max-width:none;
    gap:24px;
  }
}

/* v0.7.214 — cumulative mobile usability refinements.
   Desktop >=768px remains visually frozen from v0.7.213.
   No Contact fields, validation, privacy, reCAPTCHA, recipients or submit logic changed. */
@media (max-width:767px){
  /* Fixed header/search stack is taller on real iPhone than the prior CSS-only estimate. */
  #modelli,#richiedi{scroll-margin-top:190px}

  /* 50/75 stay as the approved two-column pair; 100 m² becomes a full-width closing card. */
  .mfr27-format-grid-below>.mfr27-card:last-child:nth-child(odd){
    grid-column:1/-1;
    width:100%;
    justify-self:stretch;
  }

  /* Give the final network block more breathing room before/after the form. */
  .mfr27-network{padding:64px 0 76px}
  .mfr27-network-grid{gap:28px}
  .mfr27-network-copy{margin-bottom:2px}
  .mfr27-network-copy h2{margin-bottom:14px}

  /* Form: compact vertical rhythm while retaining 16px controls for iOS usability/no auto-zoom. */
  .mfr27-form-card{padding:18px 16px;border-radius:10px}
  .mfr27-form-card h3{font-size:20px;line-height:1.2;margin-bottom:7px}
  .mfr27-form-card>p{font-size:14px;line-height:1.45;margin-bottom:16px}
  .mfr27-form-card .macrigi-contact-form{gap:10px}
  .mfr27-form-card label{margin-bottom:4px;font-size:13px;line-height:1.35}
  .mfr27-form-card input,.mfr27-form-card select,.mfr27-form-card textarea{
    min-height:44px;
    padding:9px 11px;
    font-size:16px;
    line-height:1.35;
  }
  .mfr27-form-card textarea{min-height:88px}
  .mfr27-form-card .mcf-submit{min-height:48px;margin-top:2px}

  /* Franchising-only launcher footprint reduction on mobile; plugin behaviour remains untouched. */
  body:has(.mfr27-page) #macrigi-ai-launcher{
    width:40px;
    height:40px;
    min-height:40px;
    right:7px;
    bottom:calc(10px + env(safe-area-inset-bottom,0px));
  }
}

@media (max-width:430px){
  /* Override legacy odd-card half-width rule specifically for the 100 m² format card. */
  .mfr27-format-grid-below>.mfr27-card:last-child:nth-child(odd){width:100%}
}

/* v0.7.215 — Franchising mobile: definitive 100 m² closing-card override.
   The legacy odd-card rule above intentionally remains for other card grids. */
@media (max-width:767px){
  .mfr27-formats-apps .mfr27-format-grid-below > .mfr27-card:last-child:nth-child(odd){
    grid-column:1 / -1 !important;
    width:100% !important;
    max-width:none !important;
    justify-self:stretch !important;
  }
  .mfr27-formats-apps .mfr27-format-grid-below > .mfr27-card:last-child:nth-child(odd) .mfr27-card-body,
  .mfr27-formats-apps .mfr27-format-grid-below > .mfr27-card:last-child:nth-child(odd) h3,
  .mfr27-formats-apps .mfr27-format-grid-below > .mfr27-card:last-child:nth-child(odd) p{
    text-align:center !important;
  }
  .mfr27-formats-apps .mfr27-format-grid-below > .mfr27-card:last-child:nth-child(odd) .mfr27-card-link{
    width:100%;
    text-align:center !important;
    justify-content:center !important;
  }
}

/* v0.7.225 — shared Contact fields; no submission or registration logic. */
.mfr27-form-card .mcf-field{min-width:0}
.mfr27-form-card .mcf-check{display:flex;align-items:flex-start;gap:10px;line-height:1.5}
.mfr27-form-card .mcf-check input[type="checkbox"]{width:18px;min-width:18px;height:18px;min-height:18px;padding:0;margin:3px 0 0;flex:0 0 18px}
.mfr27-form-card .mcf-field--captcha{max-width:100%;overflow-x:auto}
.mfr27-form-card .mcf-errors{padding:12px;border:1px solid #efb4b4;border-radius:5px;background:#fff0f0;color:#8c1c1c}
.mfr27-form-card .macrigi-contact-form :focus-visible{outline:2px solid #17647c;outline-offset:3px}

/* v0.7.226 — remove inline iframe baseline overflow inside the captcha field. */
.mfr27-form-card .mcf-field--captcha iframe{display:block}
