/* O CONFORT ATELIER 1.3 — independent editorial identity, scoped to premium pages.
 * Loading this file is reversible and does not rewrite Elementor data. */
.oc-premium{
 --oc-navy:#242A24;--oc-dark:#202820;--oc-teal:#9E784D;--oc-aqua:#EEEFE7;
 --oc-cream:#F8F6F0;--oc-ink:#30362F;--oc-muted:#746F65;--oc-border:#E4DDD0;
 --oc-sand:#B9976D;
 font-family:Inter,Manrope,"Helvetica Neue",Arial,sans-serif;
 color:#30362F;background:#F9F7F2;
}
.oc-premium .oc-wrap,.elementor .oc-premium .oc-wrap{max-width:1240px!important}
.oc-premium .oc-section{padding:clamp(88px,10vw,150px) 0}
.oc-premium .oc-eyebrow,.oc-premium .oc-eyebrow .elementor-heading-title{
 color:#8B6B45;font-size:11px;font-weight:750;letter-spacing:.28em;line-height:1.55;
}
.oc-premium .oc-eyebrow--light,.oc-premium .oc-eyebrow--light .elementor-heading-title{color:#E2C6A1}
.oc-premium .oc-display,.oc-premium .oc-display .elementor-heading-title{
 font-family:"Iowan Old Style","Baskerville","Palatino Linotype",Georgia,serif;
 font-size:clamp(52px,5.65vw,91px);font-weight:500;letter-spacing:-.059em;
 line-height:1.06;color:#252B25;
}
.oc-premium .oc-display span{font-family:inherit;font-weight:400;font-style:italic;color:#A37C51}
.oc-premium .oc-lede{color:#665F55;font-size:clamp(16px,1.25vw,19px);line-height:1.9;font-weight:400}
.oc-premium .oc-section-title,.oc-premium .oc-section-title .elementor-heading-title{
 font-family:"Iowan Old Style",Baskerville,"Palatino Linotype",Georgia,serif;
 font-weight:500;color:#292F29;font-size:clamp(42px,4.35vw,65px);
 letter-spacing:-.052em;line-height:1.12;
}
.oc-premium .oc-section-intro{color:#726D65;line-height:1.9;max-width:675px;font-size:16px}
.oc-premium .oc-button .elementor-button{
 min-height:58px;border-radius:4px;background:#282F28;border:1px solid #282F28;
 color:#FDFBF5;font-size:13px;font-weight:750;padding:18px 25px;
 box-shadow:0 10px 25px rgba(39,49,38,.08);letter-spacing:.012em;
}
.oc-premium .oc-button .elementor-button:hover{background:#A17B4F;border-color:#A17B4F;color:white;transform:translateY(-2px)}
.oc-premium .oc-button--outline .elementor-button{background:transparent;color:#292F29;border-color:#ABA79D;box-shadow:none}
.oc-premium .oc-button--outline .elementor-button:hover{color:#fff}
.oc-premium .oc-button--light .elementor-button{color:#262D28;border:1px solid #F5F1E8;background:#F5F1E8;box-shadow:none}
.oc-premium .oc-button--light .elementor-button:hover{color:#fff;background:#A17B4F;border-color:#A17B4F}
.oc-premium .oc-button--outline-light .elementor-button{border:1px solid #D3D3C8;background:transparent;color:#fff;box-shadow:none}
.oc-premium .oc-button--outline-light .elementor-button:hover{color:#272D27;background:#F5F1E8;border-color:#F5F1E8}
.oc-premium .oc-button--text .elementor-button{background:none;min-height:unset;color:#2B332C;box-shadow:none;border:0;border-bottom:1px solid #8C7B66;padding:0 0 9px;border-radius:0}
.oc-premium .oc-button--text .elementor-button:hover{color:#997348;background:none;border-color:#997348}
/* Film-still opening: warm light, offset hero, architectural lines. */
.oc-premium .oc-hero{
 background:linear-gradient(114deg,#F8F6F0 0%,#F3F0E8 51%,#E5E1D4 100%);
 position:relative;overflow:hidden;padding:clamp(92px,9vw,143px) 0 clamp(106px,10vw,148px);
}
.oc-premium .oc-hero:before{
 content:"";position:absolute;inset:0;left:auto;right:-17vw;top:-25%;width:70vw;height:120%;
 border-radius:50%;border:1px solid rgba(119,113,94,.13);z-index:0;opacity:1;pointer-events:none;
}
.oc-premium .oc-hero:after{
 content:"O / CONFORT";position:absolute;bottom:28px;right:max(24px,calc((100vw - 1240px)/2));
 color:#8C8679;font-size:10px;letter-spacing:.24em;font-weight:700;opacity:.6;
}
.oc-premium .oc-hero__inner{grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);gap:clamp(34px,6vw,100px);position:relative;z-index:1}
.oc-premium .oc-hero__copy{gap:27px}
.oc-premium .oc-hero__copy .oc-display{max-width:800px}
.oc-premium .oc-actions{gap:14px}
.oc-premium .oc-hero-footnote{color:#817C6F;font-size:12px;font-weight:500;letter-spacing:.014em}
.oc-premium .oc-green-dot{background:#A17B4F;width:7px;height:7px}
.oc-premium .oc-hero-sep{color:#AAA69D}
/* Hero illustration becomes sculptural frosted-glass rather than blue app artwork. */
.oc-premium .oc-waterart{
 min-height:585px;background:radial-gradient(ellipse at 45% 23%,#F2EEE0 0%,#DDD9C9 46%,#AEA995 100%);
 border-radius:200px 200px 5px 5px;
 box-shadow:26px 30px 0 -9px #DBD7C7,0 42px 75px rgba(68,65,54,.16);
 overflow:hidden;border:1px solid rgba(255,255,255,.62);
}
.oc-premium .oc-waterart:before{
 content:"";position:absolute;inset:0;
 background:repeating-linear-gradient(105deg,rgba(255,255,255,.16) 0 1px,transparent 1px 26px),
 radial-gradient(ellipse at 20% 20%,rgba(255,255,255,.55),transparent 55%);
}
.oc-premium .oc-waterart:after{
 content:"";position:absolute;top:29px;right:30px;bottom:29px;left:30px;
 border:1px solid rgba(255,255,255,.35);border-radius:190px 190px 2px 2px;
 pointer-events:none;
}
.oc-premium .oc-waterart-svg{width:105%;max-height:550px;filter:drop-shadow(0 25px 15px rgba(55,59,49,.18)) saturate(.75)}
.oc-premium #ocdrop stop:first-child{stop-color:#FDFBF1}
.oc-premium #ocdrop stop:nth-child(2){stop-color:#B4C0AB}
.oc-premium #ocdrop stop:nth-child(3){stop-color:#566A56}
.oc-premium #oclight stop:first-child{stop-color:#FFFFFF}
.oc-premium #oclight stop:last-child{stop-color:#D4E4D0}
.oc-premium .oc-waterart-svg circle[fill="#E3FAF9"]{fill:#FEFAE9}
.oc-premium .oc-waterart-svg circle[stroke="#A8F1E8"]{stroke:#E8E6D7}
.oc-premium .oc-waterart-svg ellipse[fill="#052E42"]{fill:#3A4939}
.oc-premium .oc-waterart-svg path[stroke="#D5FFFF"]{stroke:#FFFFF6}
.oc-premium .oc-waterart-svg path[stroke="#D8FEFF"]{stroke:#FBFAEF}
.oc-premium .oc-waterart-svg ellipse[fill="#5DE4E0"]{fill:#DDE6D3}
.oc-premium .oc-waterart-badge{
 left:38px;right:38px;bottom:37px;padding:17px 20px;
 border-radius:3px;background:rgba(250,248,241,.9);border:1px solid rgba(255,255,255,.75);
 backdrop-filter:blur(16px);color:#3B4137;box-shadow:0 12px 26px rgba(63,68,55,.07);
 font-size:12px;letter-spacing:.025em;
}
.oc-premium .oc-waterart-badge strong{color:#30372D;font-weight:650;font-size:15px}
.oc-premium .oc-sparkle{color:#9C7750}
/* Three slim guarantees on a quiet gallery-white divider. */
.oc-premium .oc-benefits{background:#FBF9F4;padding:37px 0 32px;box-shadow:none;border-top:1px solid #EAE4D8;border-bottom:1px solid #EAE4D8}
.oc-premium .oc-benefit{border-color:#E1DBCF;padding:21px 36px 21px 28px;gap:12px}
.oc-premium .oc-benefit:first-child{padding-left:0}
.oc-premium .oc-benefit-num,.oc-premium .oc-benefit-num .elementor-heading-title{color:#AD8B5C;font-size:12px;font-weight:650}
.oc-premium .oc-benefit-title,.oc-premium .oc-benefit-title .elementor-heading-title{color:#363A32;font-size:17px;font-weight:700;letter-spacing:-.035em}
.oc-premium .oc-benefit-text{color:#79746B;font-size:13px;line-height:1.8}
/* Problems — paper-collage panels, no app-card shadows. */
.oc-premium .oc-problems{background:#FEFDF9}
.oc-premium .oc-grid-3{gap:18px;margin-top:42px}
.oc-premium .oc-problem-card{background:#F5F1E9;border:1px solid #ECE5D9;
 border-radius:4px;padding:39px 35px;min-height:315px;gap:23px;box-shadow:none;
 transition:transform .2s,border-color .2s;
}
.oc-premium .oc-problem-card:nth-child(2){background:#ECEDE5;border-color:#E0E2D7}
.oc-premium .oc-problem-card:nth-child(3){background:#F0EDE5}
.oc-premium .oc-problem-card:hover{transform:translateY(-5px);border-color:#C6AF8B}
.oc-premium .oc-card-icon{background:transparent;color:#8B7557;border:1px solid #C9C1B2;
 border-radius:50%;height:65px;width:65px;font-size:31px}
.oc-premium .oc-card-title,.oc-premium .oc-card-title .elementor-heading-title{
 font-family:Georgia,serif;font-weight:500;letter-spacing:-.03em;font-size:27px;color:#2E352D;
}
.oc-premium .oc-card-text{color:#716C62;font-size:14px;line-height:1.85}
/* Confident olive-black feature, with precise mechanical diagram. */
.oc-premium .oc-feature{background:#262E27;color:#F8F5EB}
.oc-premium .oc-feature:before{background:radial-gradient(ellipse at 85% 55%,rgba(187,172,128,.15),transparent 54%)}
.oc-premium .oc-feature__inner{grid-template-columns:.95fr 1.05fr;gap:72px}
.oc-premium .oc-title-white,.oc-premium .oc-title-white .elementor-heading-title{color:#F4F1E8}
.oc-premium .oc-feature-text{color:#C4C7BB;font-size:16px;line-height:1.9}
.oc-premium .oc-flowart{border-radius:4px;min-height:330px;padding:36px;
 background:linear-gradient(145deg,rgba(243,236,211,.075),rgba(243,236,211,.018));
 border:1px solid rgba(236,230,206,.27);
}
.oc-premium .oc-flowart__top{color:#E1CDA9;letter-spacing:.21em}
.oc-premium .oc-flowart__node{color:#D9D7C8}
.oc-premium .oc-flowart__node--main .oc-flowart__symbol{background:#BDAD8C;color:#263028;box-shadow:0 0 0 7px rgba(189,173,140,.1)}
.oc-premium .oc-flowart__symbol{border-color:#807F6D;color:#E9DFCA}
.oc-premium .oc-flowart__arrow{color:#BAAC8C}
.oc-premium .oc-flowart__bottom{color:#CAC9BC}
.oc-premium .oc-flowart__dot{background:#BC9C6B}
/* Products — warm two-up editorial covers with large faint model numerals. */
.oc-premium .oc-products{background:#FBFAF6}
.oc-premium .oc-grid-2{gap:22px;margin-top:42px}
.oc-premium .oc-model-card{border-radius:4px;min-height:490px;padding:48px 48px 42px;
 gap:29px;box-shadow:none;border:1px solid #DFD8CA}
.oc-premium .oc-model-card--first{background:linear-gradient(137deg,#E8E5D9,#F5F2E8)}
.oc-premium .oc-model-card--second{background:linear-gradient(137deg,#E9EBE2,#F7F6EE)}
.oc-premium .oc-model-card:before{width:430px;height:430px;right:-135px;top:80px;border-color:rgba(163,148,125,.29)}
.oc-premium .oc-model-card:after{width:315px;height:315px;right:-72px;top:135px;border-color:rgba(163,148,125,.28)}
.oc-premium .oc-model-card:after,.oc-premium .oc-model-card:before{border-radius:50%}
.oc-premium .oc-model-label{color:#81715D;letter-spacing:.18em;font-size:10px;font-weight:750}
.oc-premium .oc-model-label span{color:#9B8A6E}
.oc-premium .oc-model-title,.oc-premium .oc-model-title .elementor-heading-title{
 font-family:Georgia,serif;font-weight:500;color:#293128;
 letter-spacing:-.052em;font-size:clamp(37px,3.7vw,54px);line-height:1.05;
}
.oc-premium .oc-model-copy{color:#706F65;line-height:1.9;font-size:15px;max-width:320px}
/* Sequence — airy editorial timeline. */
.oc-premium .oc-process{background:#EAECE4}
.oc-premium .oc-step{border-top:1px solid #C5C7BB;gap:22px;padding-top:30px;padding-right:22px}
.oc-premium .oc-step-num,.oc-premium .oc-step-num .elementor-heading-title{color:#A27D50;font-weight:650}
.oc-premium .oc-step-title,.oc-premium .oc-step-title .elementor-heading-title{
 font-family:Georgia,serif;color:#30372E;font-weight:500;font-size:28px;line-height:1.16;
}
.oc-premium .oc-step-text{color:#74776D;line-height:1.85;font-size:14px}
/* Reviews — credible, quiet, literary. */
.oc-premium .oc-reviews{background:#FFFEFA}
.oc-premium .oc-review-card{background:#F3F0E8;border:1px solid #E5E0D5;border-radius:4px;
 min-height:300px;padding:43px 46px;align-items:flex-start;
}
.oc-premium .oc-review-card:nth-child(2){background:#EFF0E9}
.oc-premium .oc-quote-mark{color:#A37C50;font-size:73px}
.oc-premium .oc-review-card blockquote{font-size:clamp(22px,2.35vw,29px);line-height:1.42;color:#30382F}
.oc-premium .oc-review-author{color:#383F35;font-weight:750}
.oc-premium .oc-review-author span{color:#8A8579}
/* Diagnostic — booking editorial section and clear accessible form fields. */
.oc-premium .oc-form{background:linear-gradient(135deg,#ECEDE6,#E2E7DE 90%)}
.oc-premium .oc-form__inner{gap:clamp(40px,6vw,92px);grid-template-columns:minmax(0,.91fr) minmax(0,1.09fr)}
.oc-premium .oc-form__copy{gap:26px;padding-top:27px}
.oc-premium .oc-form-intro{color:#72756C;line-height:1.9}
.oc-premium .oc-form-list{color:#495246;line-height:2.5}
.oc-premium .oc-form-list span{color:#A17B4F}
.oc-premium .oc-form__card .ocg-diagnostic{
 border-radius:6px;background:#FCFBF7;border:1px solid #E2DDD0;
 box-shadow:24px 30px 60px rgba(49,56,46,.09);padding:clamp(18px,3vw,40px)
}
.oc-premium .ocg-diagnostic .ocg-diag-submit{background:#2E362E!important;border-color:#2E362E!important;border-radius:4px!important}
.oc-premium .ocg-diagnostic .ocg-diag-submit:hover{background:#A17B4F!important;border-color:#A17B4F!important}
.oc-premium .ocg-diagnostic input:not([type="checkbox"]),
.oc-premium .ocg-diagnostic select,.oc-premium .ocg-diagnostic textarea{
 border-color:#D4D0C5!important;border-radius:4px!important;background:#fff!important;
 color:#293129!important;
}
.oc-premium .ocg-diagnostic input:focus-visible,
.oc-premium .ocg-diagnostic select:focus-visible,
.oc-premium .ocg-diagnostic textarea:focus-visible,
.oc-premium a:focus-visible{
 outline:3px solid #A17B4F!important;outline-offset:3px;
}
/* Elegant signature instead of application-style dark-blue strip. */
.oc-premium .oc-contact{background:#252C25;padding:80px 0;border-top:1px solid #3D493A}
.oc-premium .oc-contact-title,.oc-premium .oc-contact-title .elementor-heading-title{
 font-family:Georgia,serif;font-weight:500;color:#F5F0E5;font-size:clamp(36px,4vw,53px);
}
.oc-premium .oc-contact-text{color:#C7C5BA}
.oc-premium .oc-diagnostic-hero{background:linear-gradient(145deg,#F9F7F0,#E9ECE3);padding:110px 0 95px}
.oc-premium .oc-diagnostic-section{background:#FBFAF5}
.oc-premium .oc-diagnostic-end{background:#FBFAF5}
/* Public shortcode: override its independent blue CRM-like variables without touching /gestion/. */
.oc-premium .ocg-diagnostic{
 --ocg-public-navy:#293129;--ocg-public-teal:#987349;--ocg-public-border:#DED7CB;
 color:#353D33;background:#FCFBF7;border-color:#E2DDD0;border-radius:6px;
}
.oc-premium .ocg-diagnostic h2{font-family:Georgia,serif;color:#293129;font-size:clamp(28px,3vw,39px);font-weight:500;letter-spacing:-.04em}
.oc-premium .ocg-diag-overline{color:#9C784D}
.oc-premium .ocg-diag-heading>p{color:#77736B}
.oc-premium .ocg-diag-grid label,.oc-premium .ocg-diag-message,
.oc-premium .ocg-diag-issues legend{color:#42483F}
.oc-premium .ocg-diag-checks label{border-color:#DDD8CB;border-radius:4px;color:#464D43;background:#FFFDF8}
.oc-premium .ocg-diag-checks input,.oc-premium .ocg-diag-consent input{accent-color:#9C784D}
.oc-premium .ocg-diag-consent{color:#454C42}
.oc-premium .ocg-diag-optional,.oc-premium .ocg-diag-hint,
.oc-premium .ocg-diag-privacy,.oc-premium .ocg-diag-required{color:#77766E}
.oc-premium .ocg-diag-privacy a{color:#84643F}
.oc-premium .ocg-diagnostic select,.oc-premium .ocg-diagnostic textarea,
.oc-premium .ocg-diagnostic input:not([type="checkbox"]):not([type="hidden"]){border-radius:4px!important;color:#2C332D!important;background-color:#FFFDF8!important}
/* Keep design stable for smaller screens. */
@media(max-width:1024px){
 .oc-premium .oc-waterart{min-height:490px}
 .oc-premium .oc-model-card{padding:36px;min-height:420px}
 .oc-premium .oc-feature__inner{gap:38px}
}
@media(max-width:800px){
 .oc-premium .oc-section{padding:85px 0}
 .oc-premium .oc-hero{padding:75px 0 90px}
 .oc-premium .oc-hero__inner{grid-template-columns:minmax(0,1fr)}
 .oc-premium .oc-hero__visual{max-width:590px;width:100%;margin:0 auto}
 .oc-premium .oc-waterart{min-height:430px;max-width:600px;margin:0 auto}
 .oc-premium .oc-waterart-svg{max-height:410px}
 .oc-premium .oc-form__inner,.oc-premium .oc-feature__inner{grid-template-columns:1fr}
 .oc-premium .oc-benefit{padding:21px 4px;border-right:0;border-bottom:1px solid #E1DBCF}
 .oc-premium .oc-review-card{min-height:260px}
}
@media(max-width:540px){
 .oc-premium .oc-section{padding:66px 0}
 .oc-premium .oc-hero{padding:58px 0 72px}
 .oc-premium .oc-display,.oc-premium .oc-display .elementor-heading-title,
 .oc-premium .oc-hero .oc-display{font-size:clamp(45px,11.2vw,61px);letter-spacing:-.06em}
 .oc-premium .oc-section-title,.oc-premium .oc-section-title .elementor-heading-title{font-size:clamp(37px,10vw,48px)}
 .oc-premium .oc-waterart{min-height:350px;border-radius:135px 135px 3px 3px;box-shadow:13px 15px 0 -5px #DBD7C7,0 30px 45px rgba(68,65,54,.1)}
 .oc-premium .oc-waterart-svg{max-height:340px}
 .oc-premium .oc-waterart:after{inset:18px;border-radius:130px 130px 2px 2px}
 .oc-premium .oc-waterart-badge{bottom:15px;left:15px;right:15px;padding:12px;font-size:11px}
 .oc-premium .oc-waterart-badge strong{font-size:13px}
 .oc-premium .oc-problem-card,.oc-premium .oc-model-card,.oc-premium .oc-review-card{padding:29px 27px}
 .oc-premium .oc-problem-card{min-height:250px}
 .oc-premium .oc-model-card{min-height:390px}
 .oc-premium .oc-grid-2,.oc-premium .oc-grid-3{gap:16px}
 .oc-premium .oc-flowart{padding:24px 17px}
 .oc-premium .oc-form__card .ocg-diagnostic{padding:18px}
 .oc-premium .oc-contact{padding:64px 0}
}
@media(prefers-reduced-motion:reduce){.oc-premium *{transition:none!important}}
