/* Public layout: consistent spacing, fixed navigation and responsive content. */
.public-site{--dock-clearance:calc(96px + env(safe-area-inset-bottom));padding-bottom:0}.public-site .site-header{position:sticky;top:0;z-index:100;background:rgba(255,254,252,.97);box-shadow:0 3px 20px #35243108;backdrop-filter:blur(14px)}
.brand,.original-brand{display:block;position:static;width:108px;height:auto;aspect-ratio:31/24;overflow:visible;background:none;border-radius:0;flex-shrink:0}.brand .brand-art{display:block;position:static;width:100%;height:100%;max-width:100%;object-fit:contain;transform:none;mix-blend-mode:multiply}.brand .brand-art-light{mix-blend-mode:normal}.sidebar-brand .original-brand{width:112px;height:auto}.public-site .header-inner{min-height:96px;gap:22px}.public-site .main-nav{gap:23px}.public-site .main-nav a{font-size:var(--text-body)}.nav-close,.nav-account,.compact-label{display:none}
.public-site .inner-content{padding-top:38px;min-height:45vh}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.article-title{font-size:var(--text-page);margin:0 0 24px;line-height:1.15}
.quick-dock{position:fixed;z-index:110;left:50%;bottom:18px;transform:translateX(-50%);display:flex;align-items:center;gap:5px;padding:7px;background:#fffefcf5;border:1px solid #e5d9e1;border-radius:22px;box-shadow:0 8px 36px #35243124;backdrop-filter:blur(16px)}.quick-dock a{min-width:126px;display:flex;align-items:center;justify-content:center;gap:9px;padding:12px 18px;border-radius:16px;font-size:var(--text-body);font-weight:600;color:var(--plum-dark);white-space:nowrap}.quick-dock a:hover,.quick-dock a[aria-current=page]{background:#f0e9ef}.quick-dock .dock-whatsapp{background:#ecf5ee;color:#236d43}.quick-dock .dock-whatsapp:hover{background:#ddf0e3}.quick-dock .icon{width:21px;height:21px}
.process-section{background:#fffdfb;border-top:1px solid #eee7e2;border-bottom:1px solid #eee7e2;padding:50px 0 46px}.process-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:28px}.process-heading h2{font-size:var(--text-heading);max-width:590px}.process-heading .eyebrow{margin-bottom:10px}.process-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:0;padding:0;list-style:none;counter-reset:process}.process-list li{position:relative;padding:24px;border:1px solid #e9e1e6;border-radius:14px;background:#fff;counter-increment:process}.process-list li:before{content:'0' counter(process);display:grid;place-items:center;width:38px;height:38px;margin-bottom:18px;background:#faf0e8;border-radius:12px;color:#b7532d;font-size:var(--text-meta);font-weight:700}.process-list h3{font-size:var(--text-card);color:var(--plum-dark);margin-bottom:9px}.process-list p{font-size:var(--text-body);line-height:1.65;color:#68616a}.process-heading .text-link{font-size:var(--text-body);white-space:nowrap}
.public-site .article-copy .eyebrow{font-size:var(--text-meta)}.public-site .article-meta{font-size:var(--text-meta)}.public-site .package-card p{font-size:var(--text-body)}.public-site .package-card li{font-size:var(--text-body)}.public-site .price-note{font-size:var(--text-meta)}.public-site .package-index{font-size:var(--text-meta)}.public-site .package-ribbon{font-size:var(--text-meta);height:27px;line-height:26px}.public-site .package-card .button{font-size:var(--text-body)}.public-site .package-content{padding:25px}.public-site .package-grid{gap:20px}.public-site .section-intro p{font-size:var(--text-body)}.public-site .service-card{box-shadow:0 2px 10px #49334503}.public-site .form-card{border-radius:16px}.public-site .form-grid{gap:20px}.public-site .field label{font-size:var(--text-label)}.public-site input,.public-site textarea,.public-site select{font-size:var(--text-body);min-height:46px}.public-site input[type=checkbox]{min-height:18px}.public-site .checkbox-label{font-size:var(--text-label);line-height:1.6}.public-site .closing-cta{padding:38px 0}.public-site .closing-cta p{font-size:var(--text-body)}
.public-site .site-footer{padding:48px 0 var(--dock-clearance);background:#442441}.site-footer .footer-grid{grid-template-columns:1.15fr 1fr 1fr 1.35fr;gap:38px}.site-footer .footer-brand{width:133px;height:auto;aspect-ratio:2048/1555;margin:0 0 14px}.site-footer h3{font-size:var(--text-lead);margin-bottom:18px}.site-footer .footer-grid a:not(.brand){font-size:var(--text-body);line-height:1.6;margin:0;padding:6px 0;overflow-wrap:anywhere}.site-footer .footer-grid p,.site-footer .footer-grid .rich-content{font-size:var(--text-body);line-height:1.75;color:#e5d9e2}.site-footer .footer-grid .signature{font-size:1.8125rem;text-align:left;margin-top:20px}.site-footer .footer-bottom{font-size:var(--text-meta);gap:20px;padding:20px 0;line-height:1.6}.site-footer .footer-grid .rich-content p{margin:0 0 8px}.site-footer .footer-grid a:hover{color:#f5b885}.footer-brand-copy{max-width:250px}
@media(max-width:1250px){.public-site .header-inner{gap:16px}.public-site .main-nav{gap:15px}.public-site .main-nav a{font-size:var(--text-body)}.public-site .header-actions .small{padding:12px 16px}.public-site .brand{width:98px}.public-site .header-actions{gap:12px}.process-list{gap:14px}.process-list li{padding:20px}.site-footer .footer-grid{gap:25px}}


@media(prefers-reduced-motion:reduce){.quick-dock,.public-site .site-header{scroll-behavior:auto}}

@media(min-width:1025px){.site-footer .footer-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}}



/* Layout follows the type scale; narrow screens wrap content instead of shrinking text. */
.public-site .header-inner { min-height: 5.75rem; gap: 1.25rem; padding-block: .375rem; }
.public-site .site-header .brand { width: 6rem; }
.public-site .main-nav { gap: 1.125rem; }
.public-site .main-nav a { font-weight: 550; line-height: var(--leading-ui); padding: .75rem .125rem; }
.public-site .main-nav a.active { color: var(--plum-dark); background: transparent; font-weight: 600; border-radius: 0; }
.public-site .main-nav a.active:after { height: 2px; bottom: .375rem; left: .125rem; right: .125rem; border-radius: 2px; }
.public-site .header-actions { gap: 1rem; flex-shrink: 0; }
.public-site .header-actions .small { min-height: 2.75rem; padding: .5rem 1rem; }
.public-site .language { font-weight: var(--weight-semibold); padding-right: 1rem; }
.public-site .utility-bar .container { gap: 1.5rem; align-items: center; padding-block: .25rem; line-height: 1.5; }
.public-site .utility-bar a { min-height: 1.75rem; font-weight: var(--weight-medium); }
.public-site .hero-copy { padding-block: 3.5rem; }
.public-site .hero h1 { line-height: 1.12; letter-spacing: -.025em; }
.public-site .hero-copy p { max-width: 50ch; line-height: 1.75; margin: 1.5rem 0 2rem; }
.public-site .hero .button-row { gap: .875rem; }
.public-site .location { background: #342833c9; text-shadow: none; }
.public-site .benefits-grid { padding-block: 2rem; gap: 0; }
.public-site .benefit { align-items: start; gap: 1rem; padding-inline: 1.5rem; }
.public-site .benefit:first-child { padding-left: 0; }
.public-site .benefit:last-child { padding-right: 0; }
.public-site .benefit > .icon { margin-top: .125rem; }
.public-site .benefit strong { line-height: 1.45; margin-bottom: .375rem; font-weight: var(--weight-semibold); }
.public-site .benefit span { line-height: 1.6; }
.public-site .section { padding-block: 3.5rem; }
.public-site .section-heading, .public-site .process-heading { gap: 1.5rem; margin-bottom: 1.75rem; }
.public-site .section-heading h2, .public-site .section-intro h2, .public-site .process-heading h2 { line-height: 1.2; letter-spacing: -.02em; text-wrap: balance; }
.public-site .section-heading .text-link { flex-shrink: 0; }
.public-site .service-grid { gap: 1rem; }
.public-site .service-card { padding: 1.5rem 1.375rem 4.25rem; min-height: 18rem; border-radius: .75rem; }
.public-site .service-card > .icon { margin-bottom: .875rem; }
.public-site .service-card h3 { max-width: none; line-height: 1.35; margin-bottom: .75rem; }
.public-site .service-card p { max-width: none; line-height: 1.65; color: #514653; }
.public-site .service-card:before { background: linear-gradient(90deg,#fbfaf7fa 0%,#fbfaf7ed 42%,#fbfaf79c 100%),linear-gradient(0deg,#fbfaf7 0%,#fbfaf7ed 35%,transparent 100%); }
.public-site .service-card .circle-arrow { width: 2.75rem; height: 2.75rem; right: 1.25rem; bottom: 1.125rem; background: #fffcf8ed; }
.public-site .process-section { padding-block: 3.5rem; }
.public-site .process-list { gap: 1.25rem; }
.public-site .process-list li { padding: 1.5rem; }
.public-site .process-list h3 { line-height: 1.35; margin-bottom: .75rem; }
.public-site .process-list p { line-height: 1.7; color: var(--text-muted); }
.public-site .process-list li:before { width: 2.75rem; height: 2.75rem; line-height: 1.5; }
.public-site .package-layout, .public-site .journal-layout { gap: 2.5rem; }
.public-site .section-intro p { line-height: 1.75; max-width: 56ch; }
.public-site .package-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.25rem; padding-top: 1.875rem; }
.public-site .package-card { min-width: 0; }
.public-site .package-content { padding: 1.75rem 1.5rem; min-width: 0; }
.public-site .package-ribbon { top: -1.75rem; height: auto; min-height: 2rem; padding: .375rem .75rem; line-height: 1.5; letter-spacing: .06em; }
.public-site .package-index { font-weight: var(--weight-medium); margin-bottom: .75rem; }
.public-site .package-card h3 { line-height: 1.3; margin-bottom: .75rem; }
.public-site .package-card p { min-height: 0; line-height: 1.7; }
.public-site .package-card .price { font-size: 2.25rem; line-height: 1.25; font-weight: 650; margin-top: 1.5rem; font-variant-numeric: tabular-nums; }
.public-site .price-note { line-height: 1.6; margin-top: .375rem; }
.public-site .package-card ul { margin: 1.5rem 0; }
.public-site .package-card li { gap: .625rem; margin-block: .75rem; line-height: 1.65; }
.public-site .package-card li .icon { width: 1.125rem; height: 1.375rem; margin-top: .125rem; }
.public-site .package-card .button { padding: .875rem 1rem; min-height: 3rem; }
.public-site .journal-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.25rem; }
.public-site .article-card { display: flex; flex-direction: column; min-width: 0; }
.public-site .article-card img { height: auto; aspect-ratio: 16/10; }
.public-site .article-copy { display: flex; flex-direction: column; flex: 1; padding: 1.5rem; }
.public-site .article-copy .eyebrow { line-height: 1.5; letter-spacing: .055em; }
.public-site .article-copy h3 { line-height: 1.4; margin-bottom: 1.25rem; }
.public-site .article-meta { margin-top: auto; gap: 1rem; line-height: 1.6; color: var(--text-muted); }
.public-site .closing-cta { padding-block: 3rem; }
.public-site .closing-cta h2 { line-height: 1.25; max-width: 30ch; }
.public-site .closing-cta p { line-height: 1.7; }
.public-site .closing-cta .button { flex-shrink: 0; }
.public-site .site-footer { padding-top: 3.5rem; }
.public-site .footer-grid { gap: 2.5rem; }
.public-site .footer-grid h3 { line-height: 1.4; font-weight: var(--weight-semibold); margin-bottom: 1rem; }
.public-site .footer-grid a:not(.brand) { padding-block: .5rem; line-height: 1.7; min-height: 2.75rem; color: #f0e5ed; }
.public-site .footer-grid p, .public-site .footer-grid .rich-content { line-height: 1.8; color: #eadfe7; }
.public-site .footer-brand-copy { max-width: 30ch; }
.public-site .footer-bottom { padding-block: 1.5rem; margin-top: 2.5rem; color: #e3d2df; }
.public-site .quick-dock a { min-height: 3rem; padding: .75rem 1.125rem; line-height: 1.5; }
.public-site .form-card, .public-site .surface-card { padding: 2rem; }
.public-site .form-card h2 { line-height: 1.25; }
.public-site .form-grid { gap: 1.5rem; }
.public-site .inner-content { padding-top: 2.75rem; }

@media (min-width: 1025px) {
  .public-site .footer-grid { grid-template-columns: repeat(auto-fit,minmax(190px,1fr)); }
}

@media (min-width: 701px) and (max-width: 1359px) {
  .public-site .service-grid { grid-template-columns: repeat(6,minmax(0,1fr)); }
  .public-site .service-card { grid-column: span 2; }
  .public-site .service-card:nth-last-child(-n+2) { grid-column: span 3; }
}
@media (max-width: 1280px) {
  .public-site .package-layout, .public-site .journal-layout { grid-template-columns: 1fr; gap: 2rem; }
  .public-site .section-intro .signature { display: none; }
  .public-site .benefits-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.75rem 2rem; }
  .public-site .benefit { padding: 0; border: 0; }
}





@media (min-width: 1025px) {
  .public-site .header-inner { width: calc(100% - 56px); max-width: 1440px; }
}
@media (min-width: 1025px) and (max-width: 1439px) {
  .public-site .main-nav { gap: .875rem; }
  .public-site .header-actions .language { display: none; }
}

@media (min-width: 1025px) and (max-width: 1279px) {
  .public-site .header-inner { min-height: 5.25rem; gap: .875rem; }
  .public-site .site-header .brand { width: 5.25rem; }
  .public-site .main-nav { gap: .625rem; }
  .public-site .main-nav a { font-size: var(--text-label); font-weight: 550; }
  .public-site .main-nav a.active { font-weight: 600; }
  .public-site .header-actions .small { font-size: var(--text-label); padding: .5rem .875rem; }
  .public-site .header-actions .full-label, .public-site .header-actions .small > .icon { display: none; }
  .public-site .header-actions .compact-label { display: inline; }
}
