:root{
      --green:#244033;
      --green-2:#183127;
      --sage:#A7BE8F;
      --sage-soft:#dce7d4;
      --paper:#f7f5ef;
      --paper-2:#efeee7;
      --ink:#1f3229;
      --muted:#66726c;
      --line:rgba(36,64,51,.14);
      --white:#fffdf8;
      --serif:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;
      --sans:Montserrat,Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
      --shadow:0 28px 80px rgba(29,53,42,.12);
    }
    *{box-sizing:border-box}
    html{background:var(--paper);scroll-behavior:smooth}
    body{
      margin:0;
      min-height:100svh;
      font-family:var(--sans);
      color:var(--ink);
      background:
        radial-gradient(circle at 12% 9%, rgba(167,190,143,.20), transparent 24rem),
        radial-gradient(circle at 88% 34%, rgba(36,64,51,.055), transparent 22rem),
        linear-gradient(180deg,#faf9f4 0%,var(--paper) 55%,#f2f1ea 100%);
      -webkit-font-smoothing:antialiased;
      overflow-x:hidden;
    }
    body::before{
      content:"";
      position:fixed;inset:0;pointer-events:none;opacity:.24;
      background-image:linear-gradient(rgba(36,64,51,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(36,64,51,.018) 1px,transparent 1px);
      background-size:34px 34px;
      mask-image:linear-gradient(to bottom,black,transparent 88%);
    }
    a{color:inherit}
    a:focus-visible{outline:3px solid rgba(36,64,51,.42);outline-offset:4px;border-radius:14px}
    .primary:focus-visible{outline-color:rgba(167,190,143,.9)}
    .page{width:min(100%,620px);min-height:100svh;margin:0 auto;padding:26px 18px 28px;position:relative}
    .topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;padding-inline:2px}
    .mini-brand{font-family:var(--serif);font-size:1rem;letter-spacing:-.025em;color:var(--green)}
    .mini-crp{font-size:.63rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}

    .profile{
      position:relative;
      background:rgba(255,253,248,.78);
      border:1px solid rgba(36,64,51,.10);
      border-radius:30px;
      padding:20px 20px 24px;
      box-shadow:var(--shadow);
      backdrop-filter:blur(12px);
      overflow:hidden;
    }
    .profile::after{
      content:"D";position:absolute;right:-20px;top:112px;
      font-family:var(--serif);font-size:15rem;line-height:.7;color:rgba(36,64,51,.035);pointer-events:none;
    }
    .portrait-wrap{position:relative;width:100%;aspect-ratio:1.32/1;border-radius:22px;overflow:hidden;background:var(--paper-2);margin-bottom:24px}
    .portrait-wrap::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.26);border-radius:inherit;pointer-events:none}
    .portrait{width:100%;height:100%;object-fit:cover;object-position:50% 31%;display:block;transform:scale(1.04)}
    .portrait-tag{
      position:absolute;left:14px;bottom:14px;padding:8px 12px;border-radius:999px;
      background:rgba(247,245,239,.88);backdrop-filter:blur(12px);border:1px solid rgba(36,64,51,.12);
      font-size:.66rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase;color:var(--green)
    }
    .eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 10px;font-size:.65rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#52645a}
    .eyebrow::before{content:"";width:32px;height:1px;background:var(--sage)}
    h1{font-family:var(--serif);font-size:clamp(2.4rem,11vw,4rem);font-weight:400;letter-spacing:-.045em;line-height:.92;margin:0;color:var(--green);text-wrap:pretty}
    .intro{margin:16px 0 0;color:var(--muted);font-size:.98rem;line-height:1.58;max-width:39ch}
    .meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:17px}
    .chip{font-size:.68rem;line-height:1;padding:9px 11px;border-radius:999px;background:#eef2eb;color:#455a4e;border:1px solid rgba(36,64,51,.08)}

    .actions{display:grid;gap:12px;margin-top:18px}
    .link{
      position:relative;display:flex;align-items:center;min-height:62px;padding:14px 16px;border-radius:18px;text-decoration:none;
      border:1px solid var(--line);background:rgba(255,253,248,.86);transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease;
      overflow:hidden;
    }
    .link:hover{transform:translateY(-2px);border-color:rgba(36,64,51,.24);box-shadow:0 14px 34px rgba(28,52,40,.08)}
    .link:active{transform:translateY(0)}
    .link.primary{background:var(--green);color:var(--white);border-color:var(--green);min-height:68px}
    .link.primary:hover{background:var(--green-2)}
    .link.whatsapp{background:var(--sage-soft);border-color:transparent}
    .icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;flex:0 0 auto;margin-right:13px;background:rgba(36,64,51,.07)}
    .primary .icon{background:rgba(255,255,255,.09)}
    .link-copy{min-width:0}
    .link small{display:block;font-size:.59rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;opacity:.66;margin-bottom:3px}
    .link strong{display:block;font-size:.93rem;line-height:1.25;letter-spacing:-.01em}
    .arrow{margin-left:auto;font-family:var(--serif);font-size:1.5rem;line-height:1;opacity:.72;padding-left:12px}

    .services{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
    .service{display:flex;flex-direction:column;justify-content:space-between;min-height:148px;padding:16px;border-radius:18px;background:rgba(255,253,248,.66);border:1px solid var(--line);text-decoration:none;transition:.2s ease}
    .service:hover{transform:translateY(-2px);border-color:rgba(36,64,51,.24);background:#fffdf8}
    .service .num{font-family:var(--serif);font-size:1.05rem;color:#829d72}
    .service strong{display:block;font-family:var(--serif);font-weight:400;font-size:1.38rem;line-height:.98;letter-spacing:-.035em;color:var(--green);margin-top:18px}
    .service span:last-child{font-size:.7rem;color:var(--muted);margin-top:9px;line-height:1.35}

    .social{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
    .social .link{min-height:58px}

    /* QR discreto na página de Links, sem modificar botões ou cards existentes. */
    .instagram-qr{
      display:grid;grid-template-columns:minmax(0,1fr) 108px;gap:18px;align-items:center;
      margin-top:12px;padding:14px 16px;border-radius:18px;
      background:rgba(238,242,235,.58);border:1px solid var(--line);
    }
    .instagram-qr__copy{min-width:0}
    .instagram-qr__eyebrow{
      display:block;font-size:.59rem;font-weight:800;letter-spacing:.12em;
      text-transform:uppercase;color:#536f5b;margin-bottom:6px;overflow-wrap:anywhere;
    }
    .instagram-qr__copy strong{
      display:block;font-family:var(--serif);font-size:1.24rem;font-weight:400;
      line-height:1.12;letter-spacing:-.02em;color:var(--green);
    }
    .instagram-qr__copy p{font-size:.75rem;line-height:1.5;color:var(--muted);margin:7px 0 0}
    .instagram-qr__scan{
      display:block;width:108px;aspect-ratio:1/1;border:1px solid rgba(36,64,51,.12);
      border-radius:10px;background:#fff;padding:5px;line-height:0;
    }
    .instagram-qr__scan img{display:block;width:100%;height:100%;object-fit:contain}
    .instagram-qr__scan:hover{border-color:rgba(36,64,51,.34)}

    .availability{margin-top:20px;padding:17px 2px 2px;display:grid;grid-template-columns:1fr 1fr;gap:12px;border-top:1px solid var(--line)}
    .availability div{padding:0 4px}
    .availability small{display:block;font-size:.58rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:#718078;margin-bottom:4px}
    .availability span{font-family:var(--serif);font-size:1rem;color:var(--green)}

    footer{padding:16px 6px 2px;text-align:center;color:#68756f}
    footer .name{font-family:var(--serif);font-size:1.08rem;color:var(--green);margin-bottom:4px}
    footer p{margin:0;font-size:.68rem;line-height:1.5}
    footer a{text-decoration:none}
    .gift-note{margin:14px auto 0;max-width:38ch;font-size:.61rem;opacity:.72}

    .reveal{animation:in .55s both;animation-delay:var(--delay,0s)}
    @keyframes in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
    @media(prefers-reduced-motion:reduce){.reveal{animation:none}.link,.service{transition:none}}
    @media(max-width:520px){
      .page{padding-inline:13px}
      .profile{padding:14px 14px 20px;border-radius:24px}
      .portrait-wrap{border-radius:18px;margin-bottom:18px;aspect-ratio:1.38/1}
      .services{grid-template-columns:1fr 1fr}
      .service{min-height:132px;padding:14px}
      .service strong{font-size:1.18rem}
      .social{grid-template-columns:1fr}
      .instagram-qr{grid-template-columns:minmax(0,1fr) 84px;gap:10px;padding:12px}
      .instagram-qr__scan{width:84px;border-radius:9px;padding:3px}
      .instagram-qr__copy strong{font-size:1.09rem}
      .instagram-qr__copy p{font-size:.69rem}
      .availability{grid-template-columns:1fr 1fr;gap:10px}
    }
    @media(min-width:700px){
      body{display:grid;place-items:start center;padding-block:34px}
      .page{width:min(820px,calc(100vw - 56px));padding-inline:0}
      .profile{padding:26px 28px 28px}
      .portrait-wrap{aspect-ratio:1.72/1;margin-bottom:26px}
      .portrait{object-position:50% 30%;transform:scale(1.02)}
      .intro{max-width:56ch}
      .actions{grid-template-columns:1fr 1fr}
      .link.primary,.link.whatsapp{min-height:66px}
      .services,.social{gap:14px}
      footer{padding-top:14px}
    }

/* Retrato profissional vertical: preservar o topo da cabeça no enquadramento da capa. */
.portrait{object-position:50% 10%}
