/*
 * "Cannabis medicinal faz sentido para mim?" — `GET /cannabis-medicinal`.
 * Origem: cannabis_faz_sentido.html do cliente (memorando 08/10/2026). O CSS é
 * o dele; mudou a tipografia (Sora nos títulos no lugar de DM Serif Display,
 * DM Sans no texto, como as outras LPs), o logo e o menu do celular.
 */
:root { --ink:#0c463c; --deep:#07342d; --mint:#5bd0ba; --sky:#b8f1e9; --paper:#fff; --soft:#eff8f4; --cream:#fafbf8; --line:#d7e5de; --copy:#60746c; --shadow:0 22px 54px rgba(10,63,53,.12); }
* { box-sizing:border-box; } html { scroll-behavior:smooth; background:var(--cream); } body { margin:0; color:var(--ink); background:var(--cream); font-family:"DM Sans",Arial,sans-serif; } a { color:inherit; } button { font:inherit; }
.container { width:min(1120px,calc(100% - 48px)); margin:0 auto; } .header { height:76px; display:flex; align-items:center; justify-content:space-between; gap:22px; } .brand { display:inline-flex; } .brand img { display:block; width:124px; height:auto; } nav { display:flex; gap:25px; } nav a { color:#58726a; font-size:11px; font-weight:600; text-decoration:none; } .header-actions { display:flex; align-items:center; gap:18px; } .login { color:#365a50; font-size:11px; font-weight:600; text-decoration:none; } .button { min-height:47px; display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:0 19px; border:1px solid transparent; border-radius:12px; background:var(--ink); color:white; font-size:12px; font-weight:700; text-decoration:none; box-shadow:0 12px 21px rgba(10,62,53,.12); transition:.2s; } .button:hover { transform:translateY(-1px); background:var(--deep); } .button-outline { background:transparent; border-color:#b9d4c9; color:var(--ink); box-shadow:none; }
.hero { overflow:hidden; padding:47px 0 88px; background:radial-gradient(circle at 87% 26%,rgba(127,229,208,.4),transparent 22%),radial-gradient(circle at 75% 101%,rgba(180,231,218,.38),transparent 30%),#f7faf6; } .breadcrumb { display:flex; gap:8px; margin-bottom:39px; color:#72857e; font-size:10px; } .breadcrumb strong { color:var(--ink); } .hero-grid { display:grid; grid-template-columns:.95fr 1.05fr; gap:70px; align-items:center; } .eyebrow { display:inline-flex; align-items:center; gap:8px; color:#3ebaa4; font-size:10px; font-weight:700; letter-spacing:.17em; } .eyebrow::before { content:""; width:28px; height:3px; border-radius:7px; background:currentColor; } h1,h2,h3,p { margin-top:0; } h1 { max-width:615px; margin:17px 0 21px; font-family:Sora,sans-serif; font-size:clamp(44px,5.2vw,70px); font-weight:600; letter-spacing:-.065em; line-height:.95; } .highlight { box-shadow:inset 0 -13px 0 var(--sky); } .hero-copy { max-width:540px; margin-bottom:24px; color:var(--copy); font-size:16px; line-height:1.65; } .hero-actions { display:flex; flex-wrap:wrap; gap:11px; } .hero-note { display:flex; align-items:flex-start; gap:9px; max-width:540px; margin-top:25px; padding:14px 15px; border:1px solid #d3e7de; border-radius:13px; background:rgba(255,255,255,.56); color:#41665c; font-size:11px; line-height:1.48; } .hero-note b { color:var(--ink); }
.decision-card { position:relative; min-height:450px; display:grid; place-items:center; } .orb { position:absolute; width:414px; height:414px; border-radius:50%; background:linear-gradient(145deg,#124f43 0%,#1d705d 47%,#90dfcb 100%); box-shadow:0 26px 46px rgba(16,77,64,.15); } .orb::before,.orb::after { content:""; position:absolute; border:1px solid rgba(255,255,255,.27); border-radius:50%; } .orb::before { inset:27px; } .orb::after { inset:73px; } .decision-content { position:relative; z-index:1; width:272px; padding:27px; border-radius:21px; background:rgba(255,255,255,.97); box-shadow:0 18px 34px rgba(5,48,40,.18); } .decision-content small { color:#45bba5; font-size:10px; font-weight:700; letter-spacing:.15em; } .decision-content h3 { margin:13px 0 15px; font-family:Sora,sans-serif; font-size:31px; font-weight:600; letter-spacing:-.055em; line-height:1; } .decision-list { display:grid; gap:10px; margin:0; padding:0; list-style:none; color:#506f65; font-size:11px; } .decision-list li { display:flex; gap:9px; align-items:center; } .decision-list i { width:19px; height:19px; display:grid; place-items:center; border-radius:50%; background:#dff6ed; color:#14735d; font-style:normal; font-size:10px; font-weight:800; } .floating-tag { position:absolute; z-index:2; padding:12px 14px; border-radius:12px; background:white; color:#1d5549; box-shadow:0 15px 26px rgba(7,57,48,.13); font-size:11px; font-weight:700; } .floating-tag.one { top:55px; left:0; } .floating-tag.two { right:0; bottom:61px; }
.section { padding:94px 0; } .section-soft { background:var(--soft); } .section-heading { max-width:685px; margin-bottom:42px; } h2 { margin:15px 0 13px; font-family:Sora,sans-serif; font-size:clamp(34px,4.2vw,54px); font-weight:600; letter-spacing:-.066em; line-height:1.03; } .section-heading p { margin-bottom:0; color:var(--copy); font-size:14px; line-height:1.7; }
.reframe { display:grid; grid-template-columns:.8fr 1.2fr; gap:70px; align-items:start; } .reframe-aside { position:sticky; top:25px; } .reframe-aside h2 { font-size:47px; } .statement { display:grid; gap:13px; } .statement article { padding:23px 24px; border:1px solid var(--line); border-radius:18px; background:white; } .statement b { display:block; margin-bottom:8px; color:var(--ink); font-size:15px; } .statement p { margin:0; color:#5d746b; font-size:13px; line-height:1.65; } .statement article:first-child { border-color:#b9dccc; background:#f7fcf9; } .statement article:first-child b::before { content:"Pergunta mais útil: "; color:#45ad99; }
.prep-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; } .prep { min-height:191px; padding:21px; border:1px solid var(--line); border-radius:17px; background:white; } .number { display:grid; place-items:center; width:33px; height:33px; margin-bottom:35px; border-radius:10px; background:#ddf4ec; color:#16745e; font-size:11px; font-weight:700; } .prep h3 { margin:0 0 8px; font-size:14px; letter-spacing:-.03em; } .prep p { margin:0; color:#64776f; font-size:11px; line-height:1.55; }
.topic-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; } .topic { min-height:207px; padding:22px; border-radius:18px; background:var(--ink); color:white; } .topic:nth-child(2) { background:#176352; } .topic:nth-child(3) { background:#2b7c68; } .topic:nth-child(4) { background:#7ccdb9; color:#103f35; } .topic-icon { width:39px; height:39px; display:grid; place-items:center; margin-bottom:35px; border-radius:12px; background:rgba(255,255,255,.14); } .topic:nth-child(4) .topic-icon { background:rgba(255,255,255,.42); } .topic svg { width:21px; height:21px; stroke:currentColor; } .topic h3 { margin:0 0 8px; font-size:14px; letter-spacing:-.03em; } .topic p { margin:0; color:rgba(255,255,255,.72); font-size:11px; line-height:1.53; } .topic:nth-child(4) p { color:#285f52; } .topic-caption { margin:21px 0 0; color:#6b7f78; font-size:11px; line-height:1.55; }
.assessment { display:grid; grid-template-columns:.83fr 1.17fr; gap:70px; align-items:center; } .assessment-note { padding:30px; border-radius:21px; background:#e3f5ee; } .assessment-note h3 { margin:0 0 12px; font-family:Sora,sans-serif; font-size:30px; font-weight:600; letter-spacing:-.055em; line-height:1.08; } .assessment-note p { margin:0; color:#527267; font-size:12px; line-height:1.7; } .assessment-flow { display:grid; gap:12px; } .assessment-step { display:grid; grid-template-columns:39px 1fr; gap:15px; align-items:center; padding:17px; border-bottom:1px solid #dbe7e1; } .assessment-step:last-child { border-bottom:0; } .assessment-step span { width:31px; height:31px; display:grid; place-items:center; border-radius:50%; background:var(--ink); color:white; font-size:10px; font-weight:700; } .assessment-step b { display:block; margin-bottom:3px; font-size:13px; } .assessment-step p { margin:0; color:#6c7d77; font-size:11px; line-height:1.45; }
.roles { display:grid; grid-template-columns:1fr 1fr; gap:14px; } .role { padding:34px; border-radius:21px; } .role.professional { background:var(--ink); color:white; } .role.serena { border:1px solid #b8d7c8; background:#f5fcf8; color:var(--ink); } .role-label { margin-bottom:20px; font-size:10px; font-weight:700; letter-spacing:.17em; } .role h3 { margin:0 0 11px; font-family:Sora,sans-serif; font-size:31px; font-weight:600; letter-spacing:-.06em; } .role p { margin:0 0 20px; font-size:12px; line-height:1.65; } .role.professional p { color:rgba(255,255,255,.75); } .role.serena p { color:#537368; } .check-list { display:grid; gap:9px; margin:0; padding:0; list-style:none; font-size:11px; } .check-list li { display:flex; gap:9px; } .check-list li::before { content:"✓"; color:var(--mint); font-weight:800; } .role.serena .check-list li::before { color:#1b765f; }
.access-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; } .access-step { position:relative; min-height:208px; padding:22px; border:1px solid var(--line); border-radius:17px; background:white; } .access-step:not(:last-child)::after { content:"→"; position:absolute; z-index:1; right:-20px; top:50%; display:grid; place-items:center; width:28px; height:28px; border-radius:50%; background:#e2f6ee; color:#187660; transform:translateY(-50%); font-weight:700; } .access-step span { display:block; margin-bottom:36px; color:#55bba7; font-size:10px; font-weight:700; letter-spacing:.13em; } .access-step h3 { margin:0 0 9px; font-size:14px; letter-spacing:-.03em; } .access-step p { margin:0; color:#62766e; font-size:11px; line-height:1.58; }
.safety { display:grid; grid-template-columns:.74fr 1.26fr; gap:70px; align-items:start; } .safety-intro { position:sticky; top:24px; } .safety-intro p { max-width:345px; color:#64776f; font-size:13px; line-height:1.65; } .faq { display:grid; gap:10px; } details { padding:0 20px; border:1px solid var(--line); border-radius:14px; background:white; } summary { min-height:67px; display:flex; align-items:center; justify-content:space-between; cursor:pointer; color:var(--ink); font-size:13px; font-weight:700; list-style:none; } summary::-webkit-details-marker { display:none; } summary::after { content:"+"; color:#38675b; font-size:22px; font-weight:400; } details[open] summary::after { content:"−"; } details p { margin:-4px 0 0; padding-bottom:20px; color:#61756d; font-size:12px; line-height:1.65; }
.final { padding:78px 0; } .final-box { position:relative; overflow:hidden; padding:55px 63px; border-radius:27px; background:var(--ink); color:white; } .final-box::before { content:""; position:absolute; width:420px; height:420px; right:-120px; top:-255px; border:1px solid rgba(255,255,255,.19); border-radius:50%; } .final-box::after { content:""; position:absolute; width:230px; height:230px; right:110px; bottom:-160px; border:1px solid rgba(255,255,255,.14); border-radius:50%; } .final-box > * { position:relative; z-index:1; } .final-box h2 { max-width:680px; margin-top:15px; color:white; } .final-box p { max-width:640px; color:rgba(255,255,255,.76); font-size:14px; line-height:1.7; } .final-box .button { margin-top:7px; background:var(--mint); color:var(--deep); box-shadow:none; } .final-box .button:hover { background:#a7eee0; }
footer { padding:36px 0; border-top:1px solid var(--line); color:#74867f; font-size:11px; } .footer { display:flex; align-items:center; justify-content:space-between; gap:20px; } .footer .brand img { width:96px; }
@media(max-width:920px) { nav { display:none; } .hero-grid,.reframe,.assessment,.safety { grid-template-columns:1fr; gap:42px; } .decision-card { max-width:520px; width:100%; margin:0 auto; } .reframe-aside,.safety-intro { position:static; } .prep-grid,.topic-grid,.access-grid { grid-template-columns:1fr 1fr; } .access-step:nth-child(2)::after { display:none; } .roles { grid-template-columns:1fr; } }
@media(max-width:620px) { .container { width:min(100% - 34px,1120px); } .header { height:69px; } .header-actions .login { display:none; } .hero { padding:30px 0 60px; } .breadcrumb { margin-bottom:31px; } h1 { font-size:45px; } .hero-copy { font-size:14px; } .hero-actions { display:grid; } .button { min-height:50px; } .decision-card { min-height:395px; } .orb { width:330px; height:330px; } .decision-content { width:247px; padding:23px; } .floating-tag.one { top:19px; } .floating-tag.two { bottom:18px; } .section { padding:67px 0; } .prep-grid,.topic-grid,.access-grid { grid-template-columns:1fr; } .access-step:not(:last-child)::after { top:auto; right:auto; bottom:-21px; left:50%; transform:translateX(-50%) rotate(90deg); } .access-step { min-height:167px; } .topic { min-height:165px; } .topic-icon,.number,.access-step span { margin-bottom:23px; } .final { padding:60px 0; } .final-box { padding:38px 26px; } .footer { align-items:flex-start; flex-direction:column; } }

h1,h2,h3,.eyebrow,.number,.access-step span,.role-label { font-family:Sora,sans-serif; }
.menu-toggle { display:none; border:0; background:transparent; color:var(--ink); font-size:24px; cursor:pointer; }
.header { position:relative; }
.so-celular { display:none; }
footer nav { display:flex; flex-wrap:wrap; gap:16px; } footer nav a { color:#58726a; font-size:11px; font-weight:600; text-decoration:none; } footer nav a:hover { text-decoration:underline; }
@media(max-width:920px) { .menu-toggle { display:block; } .header nav.aberto { display:flex; position:absolute; z-index:5; top:100%; left:0; right:0; flex-direction:column; gap:16px; padding:20px 4px 24px; background:var(--cream); border-bottom:1px solid var(--line); } .header nav.aberto .so-celular { display:block; } footer nav { display:flex; } }
@media(min-width:1024px) { body { zoom:.75; } }
