/*
Theme Name: MorphFrame
Theme URI: https://zootz.fr/
Author: CodeGraft Lab
Description: Thème WordPress indépendant, rapide et pilotable par ChatGPT via un fichier JSON validé. Aucune dépendance JS.
Version: 0.2.0
Requires at least: 6.2
Requires PHP: 8.2
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: morphframe
Tags: blog, custom-logo, custom-menu, featured-images, wide-blocks, accessibility-ready, two-columns
*/
:root{
 --mf-bg:#f6f9f7;--mf-surface:#fff;--mf-ink:#172d32;--mf-muted:#697a7e;--mf-primary:#117d71;
 --mf-primary-hover:#0b554f;--mf-accent:#ffc880;--mf-border:#dce9e5;
 --mf-header:#fff;--mf-footer:#10292e;--mf-container:1160px;--mf-reading:780px;
 --mf-gutter:28px;--mf-radius:16px;--mf-font-size:17px;--mf-font:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;
 --mf-heading-weight:750;--mf-line-height:1.7;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--mf-bg);color:var(--mf-ink);font:400 var(--mf-font-size)/var(--mf-line-height) var(--mf-font);text-rendering:optimizeLegibility}
a{color:var(--mf-primary);text-decoration-color:rgba(17,125,113,.4);text-underline-offset:.15em}
a:hover{color:var(--mf-primary-hover)}
:focus-visible{outline:3px solid var(--mf-primary);outline-offset:3px}
img,svg,video,iframe{max-width:100%;height:auto}
img{vertical-align:middle}
h1,h2,h3,h4,h5,h6{line-height:1.18;font-weight:var(--mf-heading-weight);letter-spacing:-.035em;overflow-wrap:anywhere}
h1{font-size:clamp(2.1rem,4.3vw,3.7rem)}
h2{font-size:clamp(1.65rem,3vw,2.4rem)}
h3{font-size:clamp(1.3rem,2.2vw,1.65rem)}
p{margin:0 0 1.25em}
figure{margin:0 0 1.5rem}
button,input,textarea,select{font:inherit}
input[type=text],input[type=search],input[type=email],input[type=url],textarea,select{max-width:100%;border:1px solid var(--mf-border);border-radius:9px;padding:11px;background:#fff;color:var(--mf-ink)}
button,input[type=submit],.wp-block-button__link{cursor:pointer}
button,input[type=submit],.mframe-button{border:0;border-radius:10px;background:var(--mf-primary);color:#fff;padding:12px 19px;font-weight:700}
button:hover,input[type=submit]:hover,.mframe-button:hover{background:var(--mf-primary-hover);color:#fff}
.mframe-container{width:min(calc(100% - 2 * var(--mf-gutter)),var(--mf-container));margin-inline:auto}
.mframe-width-wide .mframe-main>.mframe-container{width:min(calc(100% - 2 * var(--mf-gutter)),min(100%,var(--mf-container)))}
.mframe-width-narrow .mframe-main>.mframe-container{max-width:var(--mf-reading)}
.mframe-width-full .mframe-main>.mframe-container{max-width:none;width:100%}
.mframe-skip{position:absolute;top:-100px;left:12px;background:#fff;color:#111;padding:10px;z-index:9999}
.mframe-skip:focus{top:12px}
.mframe-header{position:relative;z-index:12;border-bottom:1px solid var(--mf-border);background:var(--mf-header)}
.mframe-sticky-header .mframe-header{position:sticky;top:0}
.admin-bar.mframe-sticky-header .mframe-header{top:32px}
.mframe-header-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:90px}
.mframe-brand{min-width:0;display:flex;flex-direction:column;line-height:1.1}
.mframe-brand>a,.mframe-brand .custom-logo-link{display:inline-block;max-width:max-content;color:var(--mf-ink);text-decoration:none;font-size:1.6rem;letter-spacing:-.055em;font-weight:850}
.mframe-brand img.custom-logo{max-height:68px;width:auto}
.mframe-tagline{color:var(--mf-muted);font-size:.75rem;line-height:1.35;margin-top:8px}
.mframe-navigation{display:flex;align-items:center;gap:21px}
.mframe-navigation ul,.mframe-mobile-menu ul,.mframe-footer-nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:20px}
.mframe-navigation a,.mframe-mobile-menu a{font-size:.9rem;text-decoration:none;font-weight:700;color:var(--mf-ink)}
.mframe-navigation a:hover,.mframe-mobile-menu a:hover{color:var(--mf-primary)}
.mframe-navigation .current-menu-item>a{color:var(--mf-primary)}
.mframe-navigation .sub-menu{display:none;position:absolute;z-index:30;padding:12px;background:var(--mf-surface);box-shadow:0 15px 35px #0002;border:1px solid var(--mf-border);border-radius:10px;flex-direction:column;align-items:flex-start;gap:9px;min-width:170px}
.mframe-navigation li{position:relative}
.mframe-navigation li:hover>.sub-menu,.mframe-navigation li:focus-within>.sub-menu{display:flex}
.mframe-search{display:flex;gap:8px;align-items:center}
.mframe-search input{width:126px;padding:7px 10px;font-size:.82rem}
.mframe-search button{padding:8px 10px;font-size:.82rem}
.mframe-mobile-menu{display:none}
.mframe-main{padding:clamp(24px,4vw,62px) 0 clamp(42px,7vw,100px);min-height:55vh}
.mframe-page-head{margin-bottom:clamp(25px,4vw,44px)}
.mframe-kicker{display:inline-block;margin-bottom:14px;text-transform:uppercase;letter-spacing:.15em;font-weight:800;font-size:.73rem;color:var(--mf-primary)}
.mframe-page-head h1{margin:.1em 0 .25em;max-width:860px}
.mframe-description{color:var(--mf-muted);max-width:750px;margin:0}
.mframe-columns{display:grid;grid-template-columns:minmax(0,1fr) 295px;align-items:start;gap:38px}
.mframe-sidebar-left .mframe-sidebar{grid-column:1;grid-row:1}
.mframe-sidebar-left .mframe-columns{grid-template-columns:295px minmax(0,1fr)}
.mframe-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.mframe-grid[data-columns="1"]{grid-template-columns:1fr}
.mframe-grid[data-columns="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}
.mframe-card{background:var(--mf-surface);border:1px solid var(--mf-border);border-radius:var(--mf-radius);overflow:hidden;min-width:0;transition:transform .2s,box-shadow .2s}
.mframe-card:hover{transform:translateY(-3px);box-shadow:0 15px 44px rgba(11,43,41,.07)}
.mframe-card-picture{display:block;aspect-ratio:16/9;overflow:hidden;background:#e1ede7}
.mframe-card-picture img{display:block;width:100%;height:100%;object-fit:cover}
.mframe-card-content{padding:clamp(20px,2.8vw,32px)}
.mframe-card h2{font-size:clamp(1.25rem,2vw,1.66rem);margin:.25em 0 .65em}
.mframe-card h2 a{color:var(--mf-ink);text-decoration:none}
.mframe-card h2 a:hover{color:var(--mf-primary)}
.mframe-card p{color:var(--mf-muted);font-size:.91rem}
.mframe-read-more{font-weight:750;font-size:.88rem;text-decoration:none}
.mframe-meta{display:flex;gap:11px;flex-wrap:wrap;color:var(--mf-muted);font-size:.78rem;font-weight:600}
.mframe-entry{max-width:100%;overflow-wrap:anywhere}
.mframe-entry>h1{margin-top:0}
.mframe-prose{max-width:100%;font-size:1.03rem}
.mframe-prose>:first-child{margin-top:0}
.mframe-prose p,.mframe-prose ul,.mframe-prose ol{margin-bottom:1.5em}
.mframe-prose h2{margin-top:1.65em;margin-bottom:.55em}
.mframe-prose h3{margin-top:1.35em}
.mframe-prose blockquote{margin:2em 0;padding:10px 25px;border-left:4px solid var(--mf-primary);background:var(--mf-surface);font-size:1.12em}
.mframe-prose pre{max-width:100%;overflow:auto;padding:18px;background:#142e35;color:#f4f8f6;border-radius:10px}
.mframe-prose table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}
.mframe-prose th,.mframe-prose td{border:1px solid var(--mf-border);padding:10px}
.mframe-prose .alignwide{max-width:var(--mf-container);width:calc(100vw - 2 * var(--mf-gutter));position:relative;left:50%;transform:translateX(-50%)}
.mframe-prose .alignfull{position:relative;left:50%;width:100vw;max-width:100vw;transform:translateX(-50%)}
.mframe-width-full .mframe-prose .alignfull{position:static;transform:none;width:100%}
.mframe-hero-image{margin:18px 0 30px;border-radius:var(--mf-radius);overflow:hidden}
.mframe-hero-image img{display:block;width:100%;max-height:490px;object-fit:cover}
.mframe-post-footer{border-top:1px solid var(--mf-border);margin-top:45px;padding-top:24px}
.mframe-related{margin-top:55px}
.mframe-related h2{font-size:1.5rem}
.mframe-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.mframe-related-grid a{display:block;background:#fff;border:1px solid var(--mf-border);border-radius:12px;padding:16px;text-decoration:none;font-weight:700;color:var(--mf-ink)}
.mframe-sidebar .mframe-widget{margin-bottom:20px;padding:22px;border-radius:var(--mf-radius);background:#fff;border:1px solid var(--mf-border)}
.mframe-widget-title{font-size:1rem;margin-top:0}
.mframe-pagination{margin-top:40px}
.mframe-pagination .nav-links{display:flex;flex-wrap:wrap;gap:8px}
.mframe-pagination .page-numbers{border:1px solid var(--mf-border);background:#fff;border-radius:8px;padding:8px 13px;text-decoration:none}
.mframe-pagination .current{background:var(--mf-primary);color:#fff}
.mframe-footer{background:var(--mf-footer);color:#d6e7e3;padding:48px 0 25px}
.mframe-footer-inner{display:flex;justify-content:space-between;align-items:flex-start;gap:35px}
.mframe-footer a{color:#dff9f2}
.mframe-footer-brand{font-weight:800;letter-spacing:-.03em;color:#fff;font-size:1.35rem}
.mframe-footer-note{max-width:560px;color:#acc5c1;font-size:.88rem;margin:10px 0}
.mframe-footer-nav ul{gap:14px;flex-wrap:wrap}
.mframe-footer-nav a{font-size:.83rem;text-decoration:none}
.mframe-footer-bottom{border-top:1px solid #ffffff23;padding-top:19px;margin-top:36px;display:flex;justify-content:space-between;gap:15px;font-size:.78rem;color:#afc8c3}
.mframe-footer-bottom a{text-decoration:none}
.mframe-empty{padding:35px;background:#fff;border-radius:var(--mf-radius);border:1px solid var(--mf-border)}
.mframe-comments{margin-top:50px;border-top:1px solid var(--mf-border);padding-top:30px}
.mframe-comments ol{list-style:none;padding:0}
.mframe-comments li{margin:18px 0;padding:16px;background:var(--mf-surface);border:1px solid var(--mf-border);border-radius:10px}
.mframe-comments .children{margin-left:24px}
.mframe-comments .comment-author img{border-radius:50%;margin-right:10px}
.mframe-comments .comment-form textarea{width:100%}
.mframe-page-content{background:var(--mf-surface);border:1px solid var(--mf-border);border-radius:var(--mf-radius);padding:clamp(20px,4vw,50px)}
.mframe-width-full .mframe-page-content{padding:0;background:transparent;border:0}
.mframe-width-wide .mframe-page-content:has([data-pmorph]){padding:0;background:transparent;border:0}
.mframe-prose .wp-block-image img{border-radius:8px}
@media(max-width:1020px){.mframe-columns,.mframe-sidebar-left .mframe-columns{grid-template-columns:minmax(0,1fr)}.mframe-sidebar-left .mframe-sidebar{grid-column:auto;grid-row:auto}.mframe-navigation{display:none}.mframe-mobile-menu{display:block}.mframe-mobile-menu summary{cursor:pointer;font-weight:750;list-style:none;border:1px solid var(--mf-border);padding:10px 14px;border-radius:10px}.mframe-mobile-menu summary::-webkit-details-marker{display:none}.mframe-mobile-menu[open] .mframe-mobile-panel{position:absolute;left:var(--mf-gutter);right:var(--mf-gutter);top:calc(100% - 1px);background:#fff;border:1px solid var(--mf-border);box-shadow:0 12px 32px #0002;padding:20px;border-radius:0 0 14px 14px}.mframe-mobile-menu ul{display:flex;flex-direction:column;align-items:flex-start}.mframe-mobile-menu .sub-menu{margin-left:16px;padding-top:9px}.mframe-mobile-panel .mframe-search{margin-top:18px}}
@media(max-width:700px){:root{--mf-gutter:18px}.mframe-header-inner{min-height:75px}.mframe-grid,.mframe-grid[data-columns="3"]{grid-template-columns:1fr}.mframe-related-grid{grid-template-columns:1fr}.mframe-footer-inner,.mframe-footer-bottom{flex-direction:column}.mframe-page-content{padding:22px 18px}.mframe-prose .alignwide{max-width:100%}}
@media(max-width:782px){.admin-bar.mframe-sticky-header .mframe-header{top:46px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}


/* MorphFrame 0.2 | Full-width sales pages and context-aware header. */
.mframe-width-full .mframe-main > .mframe-container{
  max-width:none;width:100%;margin:0
}
.mframe-width-full .mframe-main{padding:0}
.mframe-width-full .mframe-entry>.mframe-page-head{
  max-width:var(--mf-container);margin:0 auto;padding:clamp(40px,5vw,78px) var(--mf-gutter) 14px
}
.mframe-width-full .mframe-page-content{
  padding:0;background:transparent;border:0;border-radius:0;max-width:none
}
.mframe-width-full .mframe-entry>.mframe-hero-image{
  max-width:var(--mf-container);margin:0 auto 35px;padding:0 var(--mf-gutter)
}
.mframe-width-full .mframe-page-content>.wp-block-group,
.mframe-width-full .mframe-page-content>.wp-block-columns,
.mframe-width-full .mframe-page-content>.wp-block-heading,
.mframe-width-full .mframe-page-content>p,
.mframe-width-full .mframe-page-content>ul,
.mframe-width-full .mframe-page-content>ol{
  max-width:var(--mf-container);margin-left:auto;margin-right:auto;
  padding-left:var(--mf-gutter);padding-right:var(--mf-gutter)
}
.mframe-width-full .mframe-page-content>.wp-block-shortcode,
.mframe-width-full .mframe-page-content>.pmorph{
  margin-left:auto;margin-right:auto
}
.mframe-width-full .mframe-page-content>.wp-block-cover{max-width:none}
.mframe-width-full .mframe-page-content>.alignfull{width:100%;max-width:none;left:auto;transform:none}
.mframe-width-full .mframe-page-content>.alignwide{max-width:var(--mf-container);margin-inline:auto}
.mframe-header--conversion .mframe-header-inner{min-height:78px}
.mframe-header--minimal .mframe-header-inner{min-height:70px}
.mframe-header-actions{display:flex;align-items:center;gap:19px;margin-left:auto}
.mframe-header-promise{font-size:.77rem;color:var(--mf-muted);font-weight:650}
.mframe-header-cta{
  display:inline-flex;align-items:center;gap:7px;
  background:var(--mf-primary);color:#fff!important;text-decoration:none;
  border-radius:999px;padding:11px 20px;font-weight:750;font-size:.82rem;
  white-space:nowrap;box-shadow:0 8px 21px rgba(17,125,113,.13);
  transition:transform .18s ease,background .18s ease
}
.mframe-header-cta:hover{background:var(--mf-primary-hover);transform:translateY(-1px)}
.mframe-navigation{margin-left:auto}
.mframe-navigation+.mframe-header-actions{margin-left:0}
.mframe-header--standard .mframe-header-inner{gap:22px}
.mframe-header--standard .mframe-navigation{gap:12px}
.mframe-header--standard .mframe-navigation ul{gap:15px}
.mframe-header--standard .mframe-navigation a{font-size:.84rem}
.mframe-width-full .mframe-main>.mframe-container>.mframe-page-head,
.mframe-width-full .mframe-main>.mframe-container>.mframe-columns,
.mframe-width-full .mframe-main>.mframe-container>.mframe-grid,
.mframe-width-full .mframe-main>.mframe-container>.mframe-pagination{
  max-width:var(--mf-container);margin-left:auto;margin-right:auto;
  padding-left:var(--mf-gutter);padding-right:var(--mf-gutter)
}
.mframe-width-full .mframe-main>.mframe-container>.mframe-page-head{padding-top:55px}
.mframe-width-full .mframe-main>.mframe-container>.mframe-grid{padding-bottom:65px}
.mframe-width-full .mframe-main>.mframe-container>.mframe-columns{padding-bottom:65px}
.mframe-width-full .mframe-main>.mframe-container>.mframe-pagination{padding-bottom:55px}

/* Sales-first homepage. No front-end scripts, remotely hosted fonts or fake proofs. */
.mframe-sales-hero{position:relative;isolation:isolate;overflow:hidden;
 background:radial-gradient(ellipse at 87% 5%,rgba(255,199,121,.16),transparent 40%),
            radial-gradient(ellipse at 0 90%,rgba(17,125,113,.13),transparent 40%),#f7f8f5;
 border-bottom:1px solid var(--mf-border)}
.mframe-sales-hero:after{position:absolute;content:"";z-index:-1;width:700px;height:700px;
 right:-240px;top:-360px;border:1px solid #117d713b;border-radius:50%;
 box-shadow:0 0 0 100px #117d7107,0 0 0 200px #117d7106;pointer-events:none}
.mframe-sales-hero-inner{min-height:650px;display:flex;flex-direction:column;
 justify-content:center;align-items:flex-start;padding-top:105px;padding-bottom:110px}
.mframe-sales-eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--mf-primary);
 font-size:.78rem;letter-spacing:.15em;text-transform:uppercase;font-weight:850;margin-bottom:30px}
.mframe-sales-eyebrow:before{content:"";width:8px;height:8px;border-radius:50%;
 background:var(--mf-primary);box-shadow:0 0 0 6px #117d7115}
.mframe-sales-hero h1{font-weight:850;font-size:clamp(3rem,6.7vw,7.1rem);
 line-height:1.02;letter-spacing:-.07em;margin:0 0 32px;max-width:1020px;color:var(--mf-ink)}
.mframe-sales-intro{font-size:clamp(1.05rem,1.5vw,1.32rem);line-height:1.65;
 max-width:685px;color:var(--mf-muted);margin:0 0 35px}
.mframe-sales-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.mframe-sales-btn{display:inline-flex;align-items:center;justify-content:center;min-height:56px;
 padding:14px 27px;border-radius:12px;font-weight:760;font-size:.94rem;text-decoration:none!important;
 transition:transform .18s ease,box-shadow .18s ease}
.mframe-sales-btn:hover{transform:translateY(-2px)}
.mframe-sales-btn--primary{background:var(--mf-primary);color:#fff!important;
 box-shadow:0 10px 25px rgba(17,125,113,.13)}
.mframe-sales-btn--primary:hover{background:var(--mf-primary-hover)}
.mframe-sales-btn--secondary{border:1px solid var(--mf-border);color:var(--mf-ink)!important;background:#fff}
.mframe-sales-aside{display:block;margin-top:20px;color:var(--mf-muted);font-size:.8rem}
.mframe-sales-section{padding:clamp(65px,8vw,130px) 0;background:var(--mf-surface)}
.mframe-sales-section-kicker{font-size:.76rem;font-weight:850;letter-spacing:.16em;color:var(--mf-primary);margin-bottom:16px}
.mframe-sales-section h2{max-width:820px;margin:0 0 43px;font-size:clamp(2.15rem,4.4vw,4.4rem);
 line-height:1.09;letter-spacing:-.06em}
.mframe-sales-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}
.mframe-sales-card{padding:clamp(23px,3.7vw,46px);border-radius:20px;border:1px solid var(--mf-border);
 background:var(--mf-bg);min-height:280px;display:flex;flex-direction:column}
.mframe-sales-card-kicker{font-size:.76rem;letter-spacing:.11em;font-weight:800;color:var(--mf-primary)}
.mframe-sales-card h3{margin:34px 0 16px;font-size:clamp(1.3rem,2vw,1.9rem);letter-spacing:-.045em}
.mframe-sales-card p{color:var(--mf-muted);font-size:.95rem;line-height:1.75;margin:0}
.mframe-sales-closing{background:var(--mf-footer);color:#f2faf7;padding:clamp(72px,9vw,140px) 0}
.mframe-sales-closing-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}
.mframe-sales-closing h2{max-width:710px;font-size:clamp(2.2rem,4vw,4rem);line-height:1.09;margin:0 0 20px}
.mframe-sales-closing p{max-width:680px;color:#bccecd;margin:0}
.mframe-sales-closing .mframe-sales-btn{background:var(--mf-accent);color:#132a2e!important;white-space:nowrap}
.mframe-sales-edited{padding:65px var(--mf-gutter);max-width:var(--mf-container);margin:auto}
.mframe-sales-edited>.mframe-prose{max-width:none}
.mframe-footer:has(.mframe-footer-bottom:first-child){padding:25px 0}
@media(max-width:1020px){
 .mframe-header--standard .mframe-header-actions{margin-left:auto}
 .mframe-header--standard .mframe-mobile-menu{order:3}
 .mframe-sales-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
 .mframe-header-promise{display:none}
 .mframe-header--conversion .mframe-header-inner{min-height:70px;gap:10px}
 .mframe-brand>a{font-size:1.32rem}
 .mframe-brand img.custom-logo{max-height:49px}
 .mframe-header-cta{padding:9px 13px;font-size:.74rem;white-space:normal;text-align:center}
 .mframe-header--standard .mframe-header-actions{display:none}
 .mframe-sales-hero-inner{min-height:520px;padding-top:75px;padding-bottom:85px}
 .mframe-sales-hero h1{font-size:clamp(2.7rem,11vw,4.3rem)}
 .mframe-sales-grid{grid-template-columns:1fr}
 .mframe-sales-card{min-height:220px}
 .mframe-sales-closing-inner{align-items:flex-start;flex-direction:column}
 .mframe-sales-closing .mframe-sales-btn{white-space:normal}
 .mframe-width-full .mframe-page-content>.wp-block-shortcode{max-width:100%}
}
@media(prefers-reduced-motion:reduce){
 .mframe-sales-btn,.mframe-header-cta{transition:none}
}
