/* Blog chrome. Matches the published homepage (Mangueira Alt body, Moskau
   Grotesk headings and links, pink accent, fixed pill nav, white footer).
   Fonts and logos are the site's existing files. This sheet is not generated. */

@font-face{font-family:'Mangueira Alt';src:url('/assets/fonts/mangueira-alt-regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap;}
@font-face{font-family:'Moskau Grotesk';src:url('/assets/fonts/moskau-grotesk.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap;}

:root{--pink:#ff66c4;--pink-deep:#f0459a;--pink-soft:#ffd0e8;--ink:#141414;--paper:#0d0d0d;}
*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{margin:0;background:#0d0d0d;color:#f2f2f2;font-family:'Mangueira Alt',Arial,sans-serif!important;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
img{display:block;max-width:100%;height:auto;}
a{color:inherit;text-decoration:none;}
h1,h2,h3,h4,p,ul,ol{margin:0;padding:0;}
ul{list-style:none;}
button{font-family:inherit;}
body :is(h1,h2,h3,h4,h5,h6,strong,b,summary,button,a){font-family:'Moskau Grotesk',Arial,sans-serif!important;font-weight:700!important;}
a[href="/#/quote"],[data-cta] a,#navCta a{font-family:'Moskau Grotesk',Arial,sans-serif!important;font-weight:900!important;-webkit-text-stroke:.75px currentColor;letter-spacing:.035em!important;}

.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:clamp(28px,4vw,56px);}
@media (max-width:820px){.footer-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:520px){.footer-grid{grid-template-columns:1fr;}}
@media (max-width:640px){.footer-btm{justify-content:center !important;text-align:center;}}

footer{background:#fff!important;color:#111!important;}
footer :is(p,a,span,h1,h2,h3,h4,h5,h6){color:#111!important;}
footer .footer-btm{border-color:rgba(20,20,20,.15)!important;}
footer .footer-grid > div:first-child > img{width:auto!important;height:46px!important;object-fit:contain!important;margin-bottom:26px!important;}
footer .footer-brand-wordmark{display:block;margin:-16px 0 26px;font-family:'Moskau Grotesk',Arial,sans-serif!important;font-weight:900!important;font-size:22px!important;letter-spacing:.055em;color:#111!important;}
footer .footer-brand-wordmark small{display:block;margin-top:3px;font-family:'Moskau Grotesk',Arial,sans-serif!important;font-size:10px!important;font-weight:700!important;letter-spacing:.23em;color:var(--pink)!important;}
footer .footer-grid h4{font-family:'Moskau Grotesk',Arial,sans-serif!important;font-weight:700!important;font-size:18px!important;letter-spacing:.06em!important;color:var(--pink)!important;}
footer .footer-grid a{font-weight:700!important;color:#111!important;}
footer .footer-grid > div:first-child > div a[aria-label]{background:#111!important;border-color:#111!important;color:var(--pink)!important;box-shadow:0 10px 20px -12px rgba(255,102,179,.7);}
footer .footer-grid > div:first-child > a:not([aria-label]){font-family:'Moskau Grotesk',Arial,sans-serif!important;font-weight:700!important;}
.amplify-credit{display:inline-flex;align-items:center;opacity:1!important;}
.amplify-credit img{display:block!important;height:30px!important;width:auto!important;filter:brightness(0)!important;}

.brand{flex:0 0 auto;display:flex;align-items:center;gap:11px;transition:transform .25s ease;}
.brand:hover{transform:scale(1.04);}
.brand img:first-child{height:48px;width:auto;}
.brand img:last-child{height:30px;width:auto;}
#navLinks a{transition:color .22s ease,transform .22s ease;}
#navLinks a:hover{color:var(--pink-deep)!important;transform:translateY(-2px);}
#navCta a[href^="tel:"]:hover{background:#141414!important;color:#fff!important;border-color:#141414!important;transform:translateY(-2px);}
#navCta a[href="/#/quote"]:hover{background:var(--pink-deep)!important;transform:translateY(-2px);box-shadow:0 16px 34px -12px rgba(240,69,154,.9)!important;}
.panel-link:hover{color:var(--pink)!important;}
#burger{display:none;}
@media (max-width:899px){
  #navLinks,#navCta{display:none!important;}
  #burger{display:block!important;}
}
@media (min-width:900px){
  #navPanel{display:none!important;}
}

footer .footer-grid ul a:hover{color:var(--pink)!important;padding-left:5px;}
footer .footer-grid > div:first-child > a:not([aria-label]):hover{color:var(--pink)!important;}
footer .footer-grid > div:first-child > div a[aria-label]:hover{background:var(--pink)!important;color:#2b0a1b!important;border-color:var(--pink)!important;transform:translateY(-2px);}
[data-cta] a:hover{background:#fff!important;color:#141414!important;transform:translateY(-3px);box-shadow:0 22px 48px -16px rgba(255,255,255,.25)!important;}

.blog-hero{width:min(1000px,calc(100% - clamp(40px,10vw,80px)));margin:0 auto;text-align:center;padding:clamp(140px,18vh,200px) 0 clamp(28px,4vw,42px);}
.eyebrow{font-family:'Moskau Grotesk',Arial,sans-serif!important;font-weight:800!important;text-transform:uppercase;letter-spacing:.06em;font-size:clamp(14px,1.5vw,18px);color:var(--pink);}
.blog-hero h1{font-weight:900;text-transform:uppercase;line-height:.9;letter-spacing:-.015em;font-size:clamp(42px,7vw,92px);margin-top:.12em;color:#fff;text-wrap:balance;}
.lede{font-weight:500;font-size:clamp(17px,1.9vw,22px);line-height:1.45;color:#dcdcdc;max-width:52ch;margin:clamp(16px,2.4vw,24px) auto 0;}
.crumbs{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;align-items:center;margin-bottom:16px;font-family:'Moskau Grotesk',Arial,sans-serif!important;font-weight:700!important;font-size:13px;letter-spacing:.06em;text-transform:uppercase;}
.crumbs a{color:#fff!important;}
.crumbs a:hover{color:var(--pink)!important;}
.crumbs [aria-current="page"]{color:var(--pink);font-family:'Moskau Grotesk',Arial,sans-serif;font-weight:700;}
.blog-date{margin-top:16px;color:#f2f2f2;font-family:'Moskau Grotesk',Arial,sans-serif!important;font-weight:700!important;letter-spacing:.08em;text-transform:uppercase;font-size:13px;}

.blog-section{width:min(820px,calc(100% - clamp(40px,10vw,80px)));margin:0 auto;padding-bottom:clamp(56px,8vw,100px);}
.blog-card,.post-card{background:#fff;color:#141414;border-radius:26px;padding:clamp(26px,4vw,42px);box-shadow:0 24px 50px -32px rgba(0,0,0,.65);}
.post-list{display:flex;flex-direction:column;gap:16px;}
.post-card h2{text-transform:uppercase;line-height:.95;font-size:clamp(26px,3.2vw,40px);margin:.35em 0 .4em;}
.post-card h2 a{color:#141414!important;}
.post-card h2 a:hover{color:var(--pink-deep)!important;}
.post-card p{font-size:17px;line-height:1.55;color:#333;}
.post-card .post-date{color:var(--pink-deep);margin:0;}
.post-more{display:inline-flex;margin-top:16px;color:var(--pink-deep)!important;letter-spacing:.04em;text-transform:uppercase;font-size:14px;}
.post-more:hover{transform:translateY(-2px);}
.empty-note{font-size:clamp(18px,2vw,22px);line-height:1.5;color:#222;text-align:center;}

.blog-figure{margin:0 0 22px;}
.blog-figure img{width:100%;border-radius:18px;}
.blog-body{font-size:clamp(17px,1.7vw,19px);line-height:1.65;color:#222;}
.blog-body h2,.blog-body h3,.blog-body h4{text-transform:uppercase;line-height:1.05;letter-spacing:.01em;color:#141414;margin:1.25em 0 .4em;}
.blog-body h2{font-size:clamp(28px,4vw,42px);}
.blog-body h3{font-size:clamp(22px,3vw,30px);}
.blog-body p{margin:0 0 .9em;}
.blog-body a{color:var(--pink-deep)!important;text-decoration:underline;text-underline-offset:.15em;}
.blog-body ul,.blog-body ol{margin:0 0 1em;padding-left:1.25em;}
.blog-body ul{list-style:disc;}
.blog-body ol{list-style:decimal;}
.blog-body li{margin:.28em 0;}
.blog-body blockquote{margin:0 0 1em;padding:.15em 0 .15em 16px;border-left:4px solid var(--pink);color:#333;}
.blog-body code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace!important;font-size:.92em;background:#f4f4f4;padding:.1em .35em;border-radius:6px;}
.blog-body pre{margin:0 0 1em;padding:16px 18px;border-radius:16px;background:#141414;color:#fff;overflow:auto;}
.blog-body pre code{background:transparent;color:inherit;padding:0;}
.blog-body hr{border:0;border-top:1px solid rgba(20,20,20,.12);margin:1.4em 0;}
.blog-service{margin-top:8px;padding-top:18px;border-top:1px solid rgba(20,20,20,.12);font-size:17px;line-height:1.5;color:#222;}
.blog-service a{color:var(--pink-deep)!important;text-decoration:underline;text-underline-offset:.15em;}

@media (max-width:640px){
  .blog-card,.post-card,.empty-note{text-align:center;}
  .blog-body ul,.blog-body ol{display:inline-block;text-align:left;}
}
