/* Estilos exclusivos da apresentação pública; cadastro e pagamento usam noivei.css. */
.noivei-home { --ink:#343b32; --muted:#686b62; --rose:#925163; --rose-dark:#743c4c; --paper:#fbf9f5; --soft:#f4ece9; --line:#e5ddd5; background:var(--paper); }
.noivei-home :focus-visible { outline:3px solid #925163; outline-offset:5px; }
.skip-link { position:absolute; left:16px; top:-100px; z-index:10; padding:14px; background:#fff; color:var(--ink); }.skip-link:focus { top:12px; }
.noivei-home .topbar { padding:20px max(24px,calc((100vw - 1160px)/2)); min-height:86px; border-color:var(--line); gap:20px; }.noivei-home .brand { font-size:36px; letter-spacing:-2px; }.noivei-home .login-link { color:var(--ink); }.noivei-home .header-links { align-items:center; gap:24px; }.noivei-home .header-links a:last-child { border:1px solid var(--line); border-radius:30px; padding:12px 18px; }
.noivei-home .hero { max-width:1240px; padding:86px 40px 80px; min-height:680px; grid-template-columns:1.05fr 1fr; gap:55px; }.noivei-home .eyebrow { font-size:10px; letter-spacing:2px; line-height:1.7; }.noivei-home .hero h1 { font-size:clamp(44px,4.8vw,66px); line-height:1.09; font-weight:400; letter-spacing:-2px; margin:22px 0; }.noivei-home .hero h1 em { color:var(--rose); font-weight:400; }.noivei-home .hero-text { font:17px/1.8 Arial,sans-serif; max-width:470px; }.hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:24px; margin-top:30px; }.noivei-home .primary-button { border-radius:30px; min-height:50px; padding:15px 24px; }.noivei-home .hero-copy .primary-button { margin:0; }.primary-button span { margin-left:16px; }.text-link { color:var(--ink); font:600 13px/1.6 Arial,sans-serif; text-underline-offset:6px; }.hero-note { color:var(--muted); font:11px/1.6 Arial,sans-serif; margin-top:20px; }
.preview-scene { position:relative; padding:34px 18px 44px; background:#efe9df; border-radius:48% 48% 12px 12px; }.preview-note { font-size:18px; font-style:italic; text-align:center; margin:0 0 24px; color:#6a705e; }.site-preview { background:#fffdf8; border:6px solid #fff; border-radius:12px; overflow:hidden; box-shadow:0 22px 45px #51473420; transform:rotate(-3deg); }.preview-toolbar { display:flex; justify-content:space-between; gap:10px; padding:12px; background:#fff; color:#75796c; font:9px Arial,sans-serif; }.preview-toolbar span:first-child { color:#c5bdad; letter-spacing:2px; }.preview-cover { text-align:center; padding:38px 16px 44px; background:radial-gradient(ellipse at 0 0,#c7cfb555,transparent 55%),radial-gradient(ellipse at 100% 100%,#d1b8a755,transparent 60%),#f5f2e9; }.preview-kicker { font:8px Arial,sans-serif; letter-spacing:2.5px; }.preview-monogram { width:150px; height:150px; border:1px solid #a2ac92; border-radius:80px 80px 0 0; margin:24px auto; display:flex; align-items:center; justify-content:center; gap:8px; font-size:48px; color:#59674d; }.preview-monogram i { font-size:24px; font-weight:400; }.preview-cover h2 { font-weight:400; font-size:33px; margin:10px 0; }.preview-cover p { font:10px Arial,sans-serif; letter-spacing:1px; }.preview-invitation { display:block; margin-top:24px; font-size:13px; font-style:italic; }.preview-bottom { display:flex; justify-content:space-around; gap:8px; padding:20px 10px; font:8px Arial,sans-serif; }.preview-tag { position:relative; width:max-content; max-width:100%; margin:-5px auto 0; background:#fffdfa; border:1px solid #e5ddd5; border-radius:7px; box-shadow:0 8px 20px #51473410; padding:16px; font:11px Arial,sans-serif; transform:rotate(2deg); }.preview-tag span { color:var(--rose); font-size:20px; margin-right:8px; }.preview-disclaimer { margin:24px 0 0; text-align:center; color:#686b62; font:10px/1.5 Arial,sans-serif; }
.promise-strip { border-block:1px solid var(--line); padding:24px; display:flex; justify-content:center; gap:70px; font-size:18px; color:#68705b; }.home-section { max-width:1160px; padding:90px 30px; margin:auto; }.section-heading h2,.noivei-home .chat-intro h2 { font-size:clamp(32px,3.5vw,46px); font-weight:400; line-height:1.16; letter-spacing:-1px; margin:16px 0; }.section-heading>p:last-child { color:var(--muted); font:15px/1.8 Arial,sans-serif; max-width:490px; }.resource-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-top:40px; }.resource-card { position:relative; padding:30px; border:1px solid var(--line); border-radius:12px; background:#fffdf9; }.resource-symbol { display:block; font-size:38px; color:#7b866c; height:56px; }.resource-label { position:absolute; right:22px; top:28px; font:9px Arial,sans-serif; letter-spacing:1.5px; color:var(--rose); background:var(--soft); border-radius:20px; padding:7px 9px; }.resource-card h3 { font-size:24px; font-weight:400; margin:22px 0 14px; }.resource-card p { color:var(--muted); font:14px/1.8 Arial,sans-serif; margin:0; }.section-footnote { color:var(--muted); font:12px/1.8 Arial,sans-serif; margin:24px 0 0; }.how-section { background:#edf0e7; }.noivei-home .benefits { background:transparent; color:var(--ink); padding:28px 0 32px; gap:40px; }.noivei-home .benefits article { max-width:none; }.noivei-home .benefits span { color:#677158; font-size:10px; letter-spacing:1.5px; }.noivei-home .benefits h3 { font-size:25px; font-weight:400; margin:18px 0 12px; }.noivei-home .benefits p { color:#5f6856; font:14px/1.8 Arial,sans-serif; }
.faq-section { display:grid; grid-template-columns:1fr 1.2fr; gap:65px; }.section-heading a { color:var(--rose); text-underline-offset:3px; }.faq-list details { border-bottom:1px solid var(--line); }.faq-list summary { cursor:pointer; padding:23px 24px 23px 0; font:600 15px/1.5 Arial,sans-serif; }.faq-list details p { margin:0; padding:0 20px 24px 0; color:var(--muted); font:14px/1.8 Arial,sans-serif; }.noivei-home .chat-section { max-width:none; padding:80px 24px 90px; background:#f3e9e6; }.noivei-home .chat-intro { max-width:600px; margin:0 auto 32px; }.noivei-home .chat-intro p:last-child { font:15px/1.8 Arial,sans-serif; }.noivei-home .chat-window { max-width:650px; margin:auto; padding:32px; border-color:#e2d4ce; box-shadow:0 15px 45px #663d4a0a; }.noivei-home .chat-message { font-size:26px; }.noivei-home .secondary-button { border-radius:25px; }.noivei-home .chat-answer input { font:16px Arial,sans-serif; min-height:50px; }.home-footer { max-width:1160px; margin:auto; padding:48px 30px 26px; display:grid; grid-template-columns:1fr 1fr; gap:24px; text-align:left; border:0; }.home-footer p { line-height:1.8; }.home-footer nav { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:22px; }.home-footer nav a { color:var(--ink); text-decoration:none; padding:8px 0; }.footer-copyright { grid-column:1/-1; border-top:1px solid var(--line); padding-top:22px; margin:0; }
@media(max-width:850px) { .noivei-home .hero { gap:30px; padding:60px 25px; }.noivei-home .hero h1 { font-size:46px; }.preview-cover h2 { font-size:27px; }.resource-card { padding:22px; }.faq-section { gap:30px; }.promise-strip { gap:30px; font-size:16px; } }
@media(max-width:650px) { .noivei-home .topbar { padding:16px 20px; min-height:76px; }.noivei-home .brand { font-size:31px; }.noivei-home .header-links { gap:14px; }.noivei-home .login-link { font-size:12px; }.noivei-home .header-links a:last-child { padding:10px 12px; }.noivei-home .hero { grid-template-columns:1fr; padding:44px 24px; gap:36px; }.noivei-home .hero h1 { font-size:46px; max-width:480px; }.noivei-home .hero-text { font-size:16px; }.preview-scene { max-width:450px; width:100%; margin:auto; padding:28px 20px; }.promise-strip { flex-wrap:wrap; gap:10px 22px; font-size:15px; }.home-section { padding:60px 24px; }.resource-grid,.noivei-home .benefits,.faq-section { grid-template-columns:1fr; gap:20px; }.resource-card { padding:28px; }.noivei-home .benefits { padding:22px 0; }.noivei-home .benefits article { border-top:1px solid #d9dece; padding-top:24px; }.faq-section { gap:16px; }.noivei-home .chat-section { padding:60px 18px; }.noivei-home .chat-window { padding:22px; }.home-footer { padding:36px 24px 24px; grid-template-columns:1fr; }.home-footer nav { justify-content:flex-start; gap:18px; }.hero-actions { gap:20px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }.noivei-home *, .noivei-home *::before, .noivei-home *::after { transition:none!important; } }
