.nd-campaign-page{background:#fff9f5;color:#183f46;font-family:'DM Sans',Arial,sans-serif;overflow:hidden}.nd-campaign-page .wrap{max-width:1200px}.nd-campaign-page h1,.nd-campaign-page h2,.nd-campaign-page h3{font-family:Georgia,serif;letter-spacing:-.035em;line-height:1.09}.nd-campaign-page h1{font-size:clamp(42px,5.5vw,76px);color:#143f45}.nd-campaign-page h2{font-size:clamp(33px,3.5vw,52px)}.nd-campaign-page h3{font-size:29px}.nd-campaign-page p{line-height:1.68}.nd-camp-kicker{font-size:11px;font-weight:800;letter-spacing:.18em;color:#bb5177}.nd-camp-hero{padding:68px 0 90px;background:radial-gradient(ellipse at 93% 35%,#f8e8eb 0%,transparent 55%),#fff9f5;position:relative}.nd-camp-grid{display:grid;grid-template-columns:1.07fr .93fr;gap:7%;align-items:center}.nd-camp-hero-copy{position:relative;z-index:2}.nd-camp-hero-copy h1{margin:18px 0 18px}.nd-camp-hero-copy>p{font-size:18px;max-width:640px}.nd-camp-date{display:flex;flex-direction:column;background:#f8e8eb;border:1px solid #eed6dd;border-radius:24px;padding:18px 22px;gap:3px;max-width:500px;margin:28px 0 23px}.nd-camp-date span{font-size:10px;letter-spacing:.14em;color:#bb5177;font-weight:800}.nd-camp-date strong{font-size:21px;color:#743d50}.nd-camp-date small{font-size:13px;color:#665a5e}.nd-camp-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:999px;background:#bc4e78!important;color:white!important;padding:17px 25px;font-weight:800;font-size:15px;cursor:pointer;text-decoration:none;box-shadow:0 10px 25px #743d5025}.nd-camp-button:hover{background:#a53a62!important;transform:translateY(-2px)}.nd-camp-fine{font-size:12px!important;color:#806a73;margin:12px 0 0}.nd-camp-visual{position:relative;min-height:500px;display:flex;align-items:flex-end;justify-content:center}.nd-camp-visual-blob{position:absolute;inset:2%;background:#f1d4d9;border-radius:48% 52% 42% 58%/44% 38% 62% 56%;transform:rotate(9deg)}.nd-camp-visual>img{position:relative;z-index:1;width:100%;height:510px;object-fit:cover;object-position:center 13%;border-radius:43% 46% 12% 10%/35% 39% 12% 14%}.nd-camp-person{position:absolute;z-index:2;bottom:15px;left:14px;background:#fff9f5eb;border-radius:18px;padding:12px 19px;color:#743d50;font:700 18px Georgia,serif}.nd-camp-person small{display:block;font:12px Arial,sans-serif;margin-top:4px}.nd-camp-days{padding:82px 0 92px;background:#f8e8eb;border-radius:7% 10% 6% 9%/3% 5% 3% 5%}.nd-camp-heading{text-align:center;max-width:730px;margin:0 auto 40px}.nd-camp-heading h2{margin:14px 0}.nd-camp-day-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.nd-camp-day-grid article{position:relative;background:#fff9f5;border:1px solid #f0d8df;border-radius:35px 40px 54px 32px;padding:38px 29px}.nd-camp-num{display:block;font:700 50px Georgia,serif;color:#df7d95;margin-bottom:10px}.nd-camp-day-label{font:800 10px Arial,sans-serif;letter-spacing:.14em;color:#a34c6c}.nd-camp-day-grid h3{margin:10px 0 16px;color:#743d50}.nd-camp-day-grid p{font-size:14px;color:#52656a}.nd-camp-about{padding:84px 0;background:#fff9f5}.nd-camp-about-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:8%;align-items:center}.nd-camp-about p{font-size:17px}.nd-camp-small{font-size:13px!important;color:#a04f6b}.nd-camp-about-visual{max-width:360px;justify-self:center;background:#f8e8eb;padding:12px;border-radius:43% 44% 18% 20%}.nd-camp-about-visual img{border-radius:43% 44% 18% 20%;width:100%;max-height:350px;object-fit:cover;object-position:center 15%}.nd-camp-signup{background:#075968;padding:95px 0;color:#fff;border-radius:65px 65px 0 0}.nd-camp-signup-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.nd-camp-signup h2{color:#fff}.nd-camp-signup p{color:#e5f1f0}.nd-camp-signup .nd-camp-date{background:#ffffff18;border-color:#ffffff30}.nd-camp-signup .nd-camp-date strong,.nd-camp-signup .nd-camp-date small{color:white}.nd-camp-form-card{background:#fff9f5;color:#743d50;border-radius:35px;padding:35px;box-shadow:0 15px 60px #002a3333}.nd-camp-form-card h3{margin-bottom:20px}.nd-camp-form-card form{display:grid;gap:13px}.nd-camp-form-card label{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:700}.nd-camp-form-card input:not([type=checkbox]){border:1px solid #e3c7d0;border-radius:12px;padding:13px 15px;background:white;font:16px Arial,sans-serif;width:100%;min-height:48px}.nd-camp-form-card .nd-camp-consent{flex-direction:row;gap:10px;align-items:flex-start;font-size:12px;font-weight:400}.nd-camp-consent input{margin-top:4px}.nd-camp-consent a{color:#853b58;text-decoration:underline}.nd-camp-form-card button{width:100%;margin-top:4px}.nd-camp-hp{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important}.nd-camp-error{background:#fff0f1;border-left:3px solid #b84a75;color:#733449;padding:12px;border-radius:6px}.nd-camp-thank-section{padding:90px 0;background:radial-gradient(circle at 90% 20%,#f9e2e7,transparent 50%),#fff9f5}.nd-camp-thank-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:9%;align-items:center}.nd-camp-check{display:grid;place-items:center;width:65px;height:65px;background:#dcf3ea;border-radius:50%;color:#075968;font-size:32px;margin:22px 0}.nd-camp-thank-grid h1{margin:0 0 20px}.nd-camp-thank-grid p{font-size:18px}.nd-camp-thank-steps{background:#f8e8eb;border-radius:28px;padding:24px;margin:22px 0}.nd-camp-thank-steps p{font-size:15px;margin:8px 0}.nd-camp-thank-grid small{display:block;margin-top:17px;color:#7d656a}.nd-camp-thanks-image img{border-radius:48% 48% 14% 14%;width:100%;max-height:530px;object-fit:cover}.nd-camp-thanks-image{background:#f1d4d9;border-radius:48% 48% 14% 14%;padding:10px}@media(max-width:850px){.nd-camp-grid,.nd-camp-about-grid,.nd-camp-signup-grid,.nd-camp-thank-grid{grid-template-columns:1fr;gap:35px}.nd-camp-day-grid{grid-template-columns:1fr}.nd-camp-hero{padding:50px 0}.nd-camp-visual{min-height:360px}.nd-camp-visual>img{height:380px}.nd-camp-about-visual{display:none}.nd-camp-days,.nd-camp-signup{padding:60px 0;border-radius:28px}.nd-camp-thank-section{padding:55px 0}.nd-camp-thanks-image{max-width:400px}.nd-camp-form-card{padding:24px}.nd-campaign-page h1{font-size:clamp(40px,10vw,60px)}}

/* v2.9.7 – landing original: fotografia ampla + capas das aulas */
.nd-camp-hero{background:linear-gradient(90deg,#fff9f5 0%,#fff9f5 46%,rgba(255,249,245,.15) 82%),#fff9f5;padding:42px 0 65px;isolation:isolate}
.nd-camp-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.06fr);gap:3%;max-width:1240px}
.nd-camp-hero-copy h1{font-size:clamp(39px,4.3vw,64px);line-height:1.07;max-width:660px;letter-spacing:-.045em}
.nd-camp-hero-copy>p{font-size:17px;line-height:1.6}
.nd-camp-visual{height:575px;min-height:490px;align-self:end;overflow:visible;z-index:0}
.nd-camp-visual-blob{inset:0 -6% -4%;background:linear-gradient(135deg,#f8e8eb,#f4d7df);border-radius:41% 59% 28% 72%/39% 35% 65% 61%;transform:rotate(-3deg)}
.nd-camp-visual>img{height:575px;width:113%;max-width:none;object-fit:cover;object-position:42% 32%;border-radius:41% 38% 11% 17%/31% 39% 12% 16%;box-shadow:0 20px 50px rgba(116,61,80,.1)}
.nd-camp-person{bottom:17px;left:10px;z-index:3}
.nd-camp-days{border-radius:4% 5% 4% 4%/2% 3% 2% 2%;padding:64px 0 76px}
.nd-camp-day-grid{gap:22px;align-items:stretch}
.nd-camp-day-grid .nd-camp-day{padding:15px 15px 25px;display:flex;flex-direction:column;border-radius:28px 28px 38px 28px}
.nd-camp-day-cover{aspect-ratio:1.65;display:block;overflow:hidden;border-radius:18px;background:#f2dce2}
.nd-camp-day-cover img{width:100%;height:100%;display:block;object-fit:cover}
.nd-camp-day-grid .nd-camp-day-label{display:inline-block;align-self:start;background:#fae6ec;color:#8f3e60;border-radius:999px;font:800 12px Arial,sans-serif;padding:8px 13px;margin-top:18px}
.nd-camp-day-grid h3{font-size:clamp(25px,2.3vw,33px);margin:12px 0 9px}
.nd-camp-day-grid p{font-size:14px;line-height:1.62;color:#394e52;margin-bottom:4px}
.nd-camp-day-grid .nd-camp-day-subtitle{font-size:15px;font-weight:700;color:#994764;margin-bottom:12px}
.nd-camp-days-action{text-align:center;margin-top:30px}
@media(max-width:850px){.nd-camp-grid{grid-template-columns:1fr}.nd-camp-hero-copy h1{font-size:clamp(38px,9vw,58px)}.nd-camp-visual{max-height:420px;height:420px;min-height:0;margin-top:20px}.nd-camp-visual>img{height:420px;width:100%}.nd-camp-day-grid{grid-template-columns:1fr;gap:18px}.nd-camp-day-cover{aspect-ratio:16/9}.nd-camp-hero{padding:34px 0 56px}}

/* v2.9.8 — Hero TRF: fotografia alinhada ao bloco de texto */
@media (min-width:851px) {
  .nd-camp-hero .nd-camp-grid { align-items:start; }
  .nd-camp-hero .nd-camp-visual {
    align-self:start;
    margin-top:12px;
    height:clamp(470px,40vw,565px);
    min-height:0;
    display:flex;
    align-items:flex-start;
  }
  .nd-camp-hero .nd-camp-visual>img {
    height:100%;
    width:100%;
    object-position:42% 28%;
  }
}

/* v2.9.9: foto correta e CTA WhatsApp no agradecimento */
.nd-camp-thanks .nd-camp-thanks-image {padding:9px;background:#f1d4d9;border-radius:36px 36px 48px 36px;overflow:hidden;}
.nd-camp-thanks .nd-camp-thanks-image img {width:100%;height:460px;max-height:none;object-fit:cover;object-position:57% center;border-radius:30px 30px 42px 30px;}
.nd-camp-thanks .nd-camp-whatsapp-button {background:#25D366!important;color:#103b29!important;box-shadow:0 12px 26px rgba(18,123,65,.2);font-size:16px;min-height:58px;padding:18px 30px;}
.nd-camp-thanks .nd-camp-whatsapp-button:hover,.nd-camp-thanks .nd-camp-whatsapp-button:focus-visible {background:#1FBC5A!important;color:#082b1b!important;}
@media(max-width:850px){.nd-camp-thanks .nd-camp-thanks-image img{height:360px}.nd-camp-thanks .nd-camp-whatsapp-button{width:100%;text-align:center;}}
