@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,600;1,600&display=swap');
:root{--ink:#101c2c;--forest:#253951;--copper:#c8a96b;--cream:#f7f3eb;--paper:#fcfbf8;--muted:#657080;--line:#dedbd4;--green:#1fa463;--radius:24px;--shadow:0 24px 70px rgba(16,28,44,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif;line-height:1.55}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.skip-link{position:absolute;left:-999px}.skip-link:focus{left:12px;top:12px;z-index:1000;background:#fff;padding:10px}.topbar{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,5vw,76px);position:sticky;top:0;z-index:50;background:rgba(252,250,246,.88);backdrop-filter:blur(16px);border-bottom:1px solid rgba(20,35,31,.07)}.brand{display:flex;align-items:center;gap:11px}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--ink);color:#fff;font-family:"Playfair Display",serif;font-size:21px}.brand b,.brand small{display:block}.brand b{font-family:"Playfair Display",serif;font-size:17px}.brand small{font-size:9px;letter-spacing:.11em;color:var(--muted);text-transform:uppercase}.topbar nav{display:flex;gap:30px;font-size:14px;font-weight:600}.topbar nav a:hover{color:var(--copper)}.nav-call{padding:11px 18px;border-radius:999px;background:var(--ink);color:#fff;font-size:13px;font-weight:700}.hero{min-height:calc(100vh - 78px);display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:6vw;padding:56px clamp(20px,6vw,92px) 72px;overflow:hidden;background:radial-gradient(circle at 15% 22%,rgba(185,119,69,.13),transparent 30%),var(--paper)}.eyebrow,.kicker{font-size:12px;letter-spacing:.16em;font-weight:700;color:var(--copper)}.eyebrow{display:flex;align-items:center;gap:9px}.eyebrow span{width:8px;height:8px;border-radius:50%;background:#35a86a;box-shadow:0 0 0 5px rgba(53,168,106,.12)}h1,h2{font-family:"Playfair Display",serif;line-height:1.03;letter-spacing:-.035em;margin:18px 0}h1{font-size:clamp(48px,6vw,88px);max-width:820px}h1 em{color:var(--copper);font-weight:600}.hero-lead{font-size:clamp(17px,1.4vw,21px);color:var(--muted);max-width:620px}.hero-actions{display:flex;gap:12px;margin:30px 0 23px}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:999px;padding:15px 22px;font-weight:700;cursor:pointer;transition:.25s}.button:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(20,35,31,.16)}.button-primary{background:var(--ink);color:#fff}.button-whatsapp{background:#e8f6ee;color:#126c40}.trust-row{display:flex;gap:20px;font-size:12px;color:var(--muted)}.hero-visual{position:relative}.portrait-frame{position:relative;border-radius:220px 220px 30px 30px;overflow:hidden;box-shadow:var(--shadow);background:var(--cream)}.portrait-frame>img{width:100%;height:min(68vh,680px);object-fit:cover;object-position:50% 42%}.availability{position:absolute;left:22px;bottom:22px;display:flex;align-items:center;gap:12px;padding:12px 17px;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border-radius:15px}.availability>span{width:10px;height:10px;border-radius:50%;background:#2fb56f;box-shadow:0 0 0 6px rgba(47,181,111,.14)}.availability b,.availability small{display:block}.availability b{font-size:12px}.availability small{font-size:10px;color:var(--muted)}.experience-card{position:absolute;right:-30px;top:18%;width:170px;padding:18px;border-radius:18px;background:var(--forest);color:#fff;box-shadow:var(--shadow)}.experience-card strong{font-family:"Playfair Display",serif;font-size:23px;display:block;color:#e7bd92}.experience-card span{font-size:11px;opacity:.75}.ticker{overflow:hidden;background:var(--ink);color:#fff;padding:14px 0;font-size:12px;letter-spacing:.19em;white-space:nowrap}.ticker div{width:max-content;animation:ticker 24s linear infinite}.ticker i{color:var(--copper);margin:0 26px}@keyframes ticker{to{transform:translateX(-35%)}}.section{padding:110px clamp(20px,7vw,110px)}.section-heading,.reviews-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:44px}.section-heading h2,.reviews-head h2,.method-copy h2,.faq h2,.contact h2{font-size:clamp(38px,4.5vw,64px)}.section-heading>p{max-width:460px;color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{position:relative;min-height:380px;padding:32px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;display:flex;flex-direction:column;transition:.3s}.service-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.service-card.featured{background:var(--forest);color:#fff;border-color:transparent}.service-number{position:absolute;right:26px;top:23px;color:#9aa49f;font-size:12px}.service-icon{font-family:"Playfair Display",serif;font-size:43px;color:var(--copper);margin-bottom:50px}.service-card h3{font-family:"Playfair Display",serif;font-size:29px;margin:0 0 12px}.service-card p{color:var(--muted);font-size:14px}.featured p{color:rgba(255,255,255,.68)}.service-card a{margin-top:auto;padding-top:22px;border-top:1px solid rgba(105,115,110,.2);display:flex;justify-content:space-between;font-weight:700;font-size:13px}.method{display:grid;grid-template-columns:.9fr 1fr;gap:8vw;align-items:center;background:var(--cream)}.method-visual{position:relative}.method-visual img{height:680px;width:100%;object-fit:cover;object-position:50% 38%;border-radius:28px;filter:saturate(.8)}.quote-card{position:absolute;right:-35px;bottom:35px;max-width:260px;padding:20px;background:#fff;border-radius:16px;box-shadow:var(--shadow);font-family:"Playfair Display",serif;font-size:18px}.method-copy>p{font-size:17px;color:var(--muted)}.steps{list-style:none;padding:0;margin:35px 0}.steps li{display:flex;gap:16px;padding:19px 0;border-bottom:1px solid var(--line)}.steps li>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#ead7c4;color:#80512e;font-weight:700}.steps b,.steps small{display:block}.steps small{color:var(--muted);margin-top:3px}.text-link{font-weight:700;border-bottom:1px solid var(--ink);padding-bottom:5px}.video-section{padding-top:80px;padding-bottom:80px}.video-card{position:relative;overflow:hidden;border-radius:30px;height:580px;background:#0c1512}.video-card img{width:100%;height:100%;object-fit:cover;object-position:50% 40%;filter:brightness(.48) saturate(.7)}.video-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:30px;color:#fff;text-align:left}.play{display:grid;place-items:center;width:76px;height:76px;border-radius:50%;background:#fff;color:var(--ink);font-size:23px;padding-left:5px}.video-overlay h2{font-size:clamp(36px,4.5vw,60px);margin:6px 0}.video-overlay small{letter-spacing:.18em}.video-overlay p{margin:0;opacity:.7}.reviews{background:var(--forest);color:#fff}.reviews .kicker{color:#e7bd92}.rating{display:flex;align-items:center;gap:15px}.rating>strong{font:600 60px/1 "Playfair Display",serif}.rating span,.rating small{display:block}.rating span{color:#e7bd92;letter-spacing:.1em}.rating small{color:rgba(255,255,255,.5);letter-spacing:0;font-size:10px}.review-track{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.review-track article{padding:28px;border-radius:20px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12)}.stars{color:#e7bd92}.review-track p{font:600 20px/1.5 "Playfair Display",serif;min-height:145px}.review-track footer{display:flex;align-items:center;gap:10px;font-size:12px}.review-track footer b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#e7bd92;color:var(--ink)}.review-track footer span{opacity:.56}.disclaimer{font-size:10px;opacity:.45;margin-top:20px}.faq{display:grid;grid-template-columns:.7fr 1fr;gap:8vw}.faq-intro p{color:var(--muted);max-width:400px;margin-bottom:30px}.accordion details{border-bottom:1px solid var(--line);padding:22px 0}.accordion summary{display:flex;justify-content:space-between;cursor:pointer;font-weight:700;list-style:none}.accordion summary span{font-size:22px;font-weight:400}.accordion details[open] summary span{transform:rotate(45deg)}.accordion p{color:var(--muted);max-width:670px}.contact{padding:100px clamp(20px,8vw,130px);background:linear-gradient(130deg,#14231f,#24453b);color:#fff;display:grid;grid-template-columns:1fr .82fr;gap:9vw;align-items:center}.kicker.light{color:#e7bd92}.contact-copy>p{color:rgba(255,255,255,.65);font-size:17px}.direct-links{margin-top:35px}.direct-links a{display:flex;align-items:center;gap:14px;padding:17px 0;border-bottom:1px solid rgba(255,255,255,.15)}.direct-links a>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.1)}.direct-links small,.direct-links b{display:block}.direct-links small{font-size:9px;letter-spacing:.15em;color:#e7bd92}.direct-links b{font-size:14px}.contact-form{background:#fff;color:var(--ink);border-radius:24px;padding:30px;box-shadow:var(--shadow)}.form-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.form-head span{font:600 23px "Playfair Display",serif}.form-head small{color:var(--green)}.contact-form label{display:block;font-size:11px;font-weight:700;margin-top:14px}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:12px 13px;margin-top:6px;background:#fbfaf8;color:var(--ink);outline:none}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--copper);box-shadow:0 0 0 3px rgba(185,119,69,.12)}.contact-form .consent{display:flex;gap:9px;align-items:flex-start;font-weight:400;color:var(--muted)}.contact-form .consent input{width:auto;margin-top:3px}.contact-form button{width:100%;margin-top:20px}.form-note{text-align:center;color:var(--muted);font-size:10px}.footer{padding:45px clamp(20px,6vw,90px);display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:20px;font-size:10px;color:var(--muted)}.footer>p:last-child{text-align:right}.mobile-callbar{display:none}.floating-wa{position:fixed;right:23px;bottom:23px;z-index:40;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#1fac67;color:#fff;font-size:28px;box-shadow:0 10px 30px rgba(31,172,103,.35)}
.menu-toggle{display:none;width:46px;height:46px;padding:0;border:1px solid var(--line);border-radius:50%;background:#fff;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer}.menu-toggle span{width:19px;height:2px;border-radius:2px;background:var(--ink);transition:transform .25s ease,opacity .2s ease}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-7px) rotate(-45deg)}
@media(max-width:900px){.topbar nav{display:none}.hero{grid-template-columns:1fr;padding-top:38px}.hero-copy{text-align:center}.eyebrow{justify-content:center}.hero-lead{margin-inline:auto}.hero-actions,.trust-row{justify-content:center}.hero-visual{max-width:620px;margin:auto}.experience-card{right:10px}.section-heading,.reviews-head{align-items:start;flex-direction:column}.service-grid,.review-track{grid-template-columns:1fr}.method,.faq,.contact{grid-template-columns:1fr}.method-visual img{height:520px}.video-card{height:460px}.footer{grid-template-columns:1fr;text-align:center}.footer .brand{justify-content:center}.footer>p:last-child{text-align:center}}
@media(max-width:600px){body{padding-bottom:68px}.topbar{height:66px;padding:0 16px}.brand small{display:none}.nav-call{display:none}.hero{min-height:auto;padding:34px 18px 42px;gap:34px}.eyebrow{font-size:9px}.hero h1{font-size:46px}.hero-lead{font-size:16px}.hero-actions{flex-direction:column}.button{width:100%}.trust-row{gap:8px;flex-wrap:wrap;font-size:10px}.portrait-frame{border-radius:130px 130px 22px 22px}.portrait-frame>img{height:440px}.availability{left:12px;right:12px;bottom:12px}.experience-card{display:none}.ticker{font-size:10px}.section{padding:72px 18px}.section-heading h2,.reviews-head h2,.method-copy h2,.faq h2,.contact h2{font-size:40px}.service-card{min-height:340px}.method{padding-top:70px}.method-visual img{height:450px}.quote-card{right:10px;bottom:16px;max-width:220px}.video-section{padding:18px}.video-card{height:480px;border-radius:20px}.video-overlay{flex-direction:column;text-align:center;padding:25px}.reviews-head{gap:10px}.review-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-right:-18px;padding-right:18px}.review-track article{min-width:85vw;scroll-snap-align:start}.faq{gap:30px}.contact{padding:72px 18px}.direct-links b{font-size:12px;word-break:break-all}.contact-form{padding:22px 18px}.footer{padding-bottom:30px}.floating-wa{display:none}.mobile-callbar{display:grid;grid-template-columns:1fr 1fr;position:fixed;z-index:100;left:0;right:0;bottom:0;height:68px;background:#fff;box-shadow:0 -8px 30px rgba(20,35,31,.14);padding:8px;gap:8px}.mobile-callbar a{display:flex;align-items:center;justify-content:center;gap:7px;border-radius:12px;background:var(--ink);color:#fff;font-weight:700}.mobile-callbar a:last-child{background:var(--green)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker div{animation:none}.button,.service-card{transition:none}}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}.reveal.visible{opacity:1;transform:none}.is-success{background:#287b55!important}

/* Palette Bleu nuit & or pâle */
.topbar{background:rgba(252,251,248,.9);border-bottom-color:rgba(16,28,44,.07)}
.hero{background:radial-gradient(circle at 15% 22%,rgba(200,169,107,.16),transparent 30%),var(--paper)}
.experience-card strong,.reviews .kicker,.rating span,.stars,.kicker.light,.direct-links small{color:var(--copper)}
.steps li>span{background:#eee4ce;color:#70582c}
.video-card{background:#101c2c}
.contact{background:linear-gradient(130deg,#101c2c,#253951)}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{box-shadow:0 0 0 3px rgba(200,169,107,.16)}
.service-media{height:190px;margin:-10px -10px 24px;border-radius:17px;overflow:hidden;background:var(--cream)}.service-media img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}.service-card:hover .service-media img{transform:scale(1.04)}.service-card.featured .service-media{box-shadow:0 0 0 1px rgba(255,255,255,.12)}.service-card:has(.service-media){min-height:500px}.service-card:has(.service-media) .service-number{z-index:2;padding:5px 9px;border-radius:999px;background:rgba(252,251,248,.9);color:var(--ink);backdrop-filter:blur(8px)}.contact-gallery{padding:22px clamp(20px,6vw,90px) 90px;display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:14px;background:var(--paper)}.contact-gallery img{width:100%;height:270px;object-fit:cover;border-radius:18px;box-shadow:var(--shadow)}
.thank-you{min-height:100vh;padding:30px;display:grid;place-items:center;text-align:center;background:radial-gradient(circle at 50% 25%,rgba(200,169,107,.2),transparent 28%),var(--paper)}.thank-you>div{max-width:760px}.thank-you .brand-mark{margin:0 auto 25px}.thank-you h1{font-size:clamp(48px,7vw,82px)}.thank-you p{max-width:590px;margin:0 auto;color:var(--muted);font-size:18px}.thank-you .hero-actions{justify-content:center}

/* Páginas de serviço */
.inner-hero{min-height:620px;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:6vw;padding:70px clamp(20px,7vw,110px);background:radial-gradient(circle at 14% 24%,rgba(200,169,107,.18),transparent 30%),var(--paper)}
.inner-hero h1{font-size:clamp(48px,6vw,82px)}.inner-hero .portrait-frame>img{height:540px}.breadcrumb{display:flex;gap:8px;align-items:center;margin-bottom:20px;font-size:11px;color:var(--muted)}.breadcrumb a:hover{color:var(--copper)}.keyword-line{font-size:12px;color:var(--copper);font-weight:700;letter-spacing:.1em;text-transform:uppercase}.intro-panel{padding:65px clamp(20px,9vw,145px);background:var(--ink);color:#fff;display:grid;grid-template-columns:.7fr 1fr;gap:8vw;align-items:center}.intro-panel h2{font-size:clamp(36px,4vw,56px)}.intro-panel p{color:rgba(255,255,255,.68);font-size:17px}.service-detail{min-height:410px}.service-detail ul{padding-left:18px;color:var(--muted);font-size:14px}.service-detail li{margin:8px 0}.service-detail.featured ul{color:rgba(255,255,255,.7)}.reassurance{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.reassurance div{padding:26px;background:var(--paper);text-align:center}.reassurance b,.reassurance small{display:block}.reassurance b{font-family:"Playfair Display",serif;font-size:19px}.reassurance small{color:var(--muted);margin-top:4px}.page-cta{padding:90px 20px;text-align:center;background:var(--cream)}.page-cta h2{font-size:clamp(40px,5vw,68px);max-width:850px;margin:15px auto}.page-cta p{color:var(--muted);max-width:660px;margin:0 auto 28px}.page-cta .hero-actions{justify-content:center}.legal-note{max-width:850px;margin:22px auto 0;font-size:11px;color:var(--muted)}.contact-page{min-height:calc(100vh - 78px);padding:80px clamp(20px,8vw,130px);background:linear-gradient(130deg,#101c2c,#253951);color:#fff;display:grid;grid-template-columns:1fr .85fr;gap:9vw;align-items:center}.contact-page h1{font-size:clamp(48px,6vw,78px)}.contact-page .breadcrumb{color:rgba(255,255,255,.55)}.contact-page .contact-copy>p{max-width:570px}.contact-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:30px}.contact-options a{padding:20px;border-radius:16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}.contact-options b,.contact-options small{display:block}.contact-options small{color:var(--copper);font-size:9px;letter-spacing:.13em}.contact-options b{margin-top:5px;font-size:13px}.active{color:var(--copper)!important}
@media(max-width:900px){.inner-hero,.intro-panel,.contact-page{grid-template-columns:1fr}.inner-hero .hero-copy{text-align:center}.inner-hero .breadcrumb,.inner-hero .eyebrow{justify-content:center}.inner-hero .hero-lead{margin-inline:auto}.inner-hero .hero-actions,.inner-hero .trust-row{justify-content:center}.reassurance{grid-template-columns:1fr 1fr}.contact-page{padding-top:60px}}
@media(max-width:900px){.contact-gallery{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.inner-hero{padding:38px 18px 55px}.inner-hero h1{font-size:45px}.inner-hero .portrait-frame>img{height:420px}.intro-panel{padding:55px 18px}.reassurance{grid-template-columns:1fr}.page-cta{padding:65px 18px}.contact-page{padding:45px 18px 75px}.contact-options{grid-template-columns:1fr}.service-media{height:210px}.contact-gallery{grid-template-columns:1fr;padding:18px 18px 65px}.contact-gallery img{height:290px}}

@media(max-width:900px){
  .menu-toggle{display:flex;margin-left:auto;margin-right:12px;flex:0 0 auto}
  .topbar nav{display:flex;position:absolute;top:calc(100% + 1px);right:clamp(20px,5vw,76px);width:min(360px,calc(100vw - 40px));padding:12px;gap:4px;flex-direction:column;background:rgba(252,251,248,.98);border:1px solid var(--line);border-radius:18px;box-shadow:0 22px 60px rgba(16,28,44,.18);opacity:0;visibility:hidden;transform:translateY(-10px);pointer-events:none;transition:opacity .22s ease,transform .22s ease,visibility .22s ease}
  .topbar nav.is-open{opacity:1;visibility:visible;transform:none;pointer-events:auto}
  .topbar nav a{padding:13px 14px;border-radius:11px}
  .topbar nav a:hover,.topbar nav a.active{background:var(--cream);color:var(--ink)}
}
@media(max-width:600px){
  .menu-toggle{margin-right:0}
  .topbar nav{left:12px;right:12px;width:auto}
}
