/* Girls Guide to Life brand layer for Hello Elementor */
@font-face{font-family:"Fraunces";src:url(fonts/fraunces.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Fraunces";src:url(fonts/fraunces-italic.woff2) format("woff2");font-weight:100 900;font-style:italic;font-display:swap}
@font-face{font-family:"Figtree";src:url(fonts/figtree.woff2) format("woff2");font-weight:300 900;font-style:normal;font-display:swap}
:root{--ggtl-deep:#3F1223;--ggtl-wine:#6E1F3A;--ggtl-rose:#B24A67;--ggtl-mauve:#9C7A8A;--ggtl-petal:#E0A1AE;--ggtl-blush:#F3DADD;--ggtl-cream:#FBF6F1;--ggtl-ink:#2A1019;--ggtl-line:#E7D3D0;--ggtl-soft:#5A3A46}
body{background:var(--ggtl-cream);color:var(--ggtl-ink);font-family:Figtree,"Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5,h6{font-family:Fraunces,Georgia,serif;font-weight:400;color:var(--ggtl-deep);line-height:1.15}
a{color:var(--ggtl-rose)}a:hover{color:var(--ggtl-wine)}
:focus-visible{outline:2px solid var(--ggtl-rose);outline-offset:3px}
.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}

/* Post grid shortcode */
.ggtl-grid{display:grid;gap:2rem 1.5rem;grid-template-columns:repeat(3,minmax(0,1fr))}
.ggtl-grid--1{grid-template-columns:1fr}.ggtl-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.ggtl-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.ggtl-card{display:flex;flex-direction:column}
.ggtl-card__img{display:block;border-radius:6px;overflow:hidden;background:var(--ggtl-blush)}
.ggtl-card__img img,.ggtl-card__ph{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .5s ease}
.ggtl-card:hover .ggtl-card__img img{transform:scale(1.03)}
.ggtl-card__ph{background:var(--ggtl-blush) url(img/clover.svg) center/64px no-repeat}
.ggtl-card__body{display:flex;flex-direction:column;gap:.45rem;padding-top:1rem;flex:1}
.ggtl-card__meta{margin:0;font-size:.8125rem;display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.ggtl-card__cat{font-weight:600;color:var(--ggtl-rose);text-decoration:none!important}
.ggtl-card__time{color:var(--ggtl-soft)}
.ggtl-card__time::before{content:"";display:inline-block;width:3px;height:3px;border-radius:50%;background:var(--ggtl-mauve);margin-right:.5rem;vertical-align:middle}
.ggtl-card__title{font-size:1.3rem;margin:0;line-height:1.25}
.ggtl-card__title a{color:var(--ggtl-deep);text-decoration:none!important}.ggtl-card__title a:hover{color:var(--ggtl-rose)}
.ggtl-card__excerpt{color:var(--ggtl-soft);font-size:.95rem;line-height:1.55;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ggtl-card__more{margin-top:auto;padding-top:.4rem;font-size:.875rem;font-weight:600;color:var(--ggtl-deep);text-decoration:none!important}
.ggtl-card__more:hover{color:var(--ggtl-rose)}
.ggtl-grid--boxed .ggtl-card{background:#fff;border:1px solid var(--ggtl-line);border-radius:14px;overflow:hidden}
.ggtl-grid--boxed .ggtl-card__img{border-radius:0}
.ggtl-grid--boxed .ggtl-card__body{padding:1.1rem 1.25rem 1.3rem}
.ggtl-empty{color:var(--ggtl-soft)}

/* Text-only cards */
.ggtl-grid--text{gap:2.2rem 2rem}
.ggtl-grid--text .ggtl-card{border-top:1px solid var(--ggtl-line);padding-top:1.1rem}
.ggtl-grid--text .ggtl-card__body{padding-top:0}
.ggtl-grid--text .ggtl-card__title{font-size:1.25rem}
/* Featured card */
.ggtl-grid--featured .ggtl-card{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:2.5rem;align-items:center;background:#fff;border:1px solid var(--ggtl-line);border-radius:18px;padding:1.6rem}
.ggtl-grid--featured .ggtl-card__img img,.ggtl-grid--featured .ggtl-card__ph{aspect-ratio:4/3}
.ggtl-grid--featured .ggtl-card__body{padding:0 1rem 0 0;gap:.6rem}
.ggtl-card__kicker{margin:0;font-size:.8125rem;font-weight:600;color:var(--ggtl-rose)}
.ggtl-grid--featured .ggtl-card__title{font-size:clamp(1.6rem,2.6vw,2.1rem);line-height:1.15}
.ggtl-grid--featured .ggtl-card__excerpt{-webkit-line-clamp:3;font-size:1rem}
@media (max-width:760px){.ggtl-grid--featured .ggtl-card{grid-template-columns:1fr;gap:1.2rem;padding:1rem}.ggtl-grid--featured .ggtl-card__body{padding:0}}
/* Dark band cards (HTML widget) */
.ggtl-band-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.ggtl-band-cards a{display:block;text-decoration:none!important;background:rgba(251,246,241,.06);border:1px solid rgba(233,191,198,.28);border-radius:14px;padding:1.3rem 1.4rem;color:#FBF6F1;transition:background .2s,border-color .2s}
.ggtl-band-cards a:hover{background:rgba(251,246,241,.12);border-color:#E0A1AE}
.ggtl-band-cards small{display:block;font:600 .8125rem Figtree,sans-serif;color:#E0A1AE;margin-bottom:.4rem}
.ggtl-band-cards strong{display:block;font:400 1.3rem/1.25 Fraunces,Georgia,serif;margin-bottom:.9rem}
.ggtl-band-cards span{font:600 .875rem Figtree,sans-serif;color:#F3DADD}
@media (max-width:760px){.ggtl-band-cards{grid-template-columns:1fr}}
/* Breadcrumb + in-this-guide box */
.ggtl-crumbs{font-size:.8125rem;color:var(--ggtl-soft)}
.ggtl-crumbs a{color:var(--ggtl-soft);text-decoration:none!important}.ggtl-crumbs a:hover{color:var(--ggtl-rose)}
.ggtl-crumbs span{margin:0 .4rem;color:var(--ggtl-mauve)}
.ggtl-toc{background:var(--ggtl-blush);border-radius:14px;padding:1.2rem 1.4rem}
.ggtl-toc p{margin:0 0 .7rem;font:600 .8125rem Figtree,sans-serif;color:var(--ggtl-wine)}

/* Light cards built from Elementor columns: add the CSS class ggtl-lightcard to a column */
.ggtl-lightcard>.elementor-widget-wrap,.ggtl-lightcard>.elementor-column-wrap>.elementor-widget-wrap{background:#fff;border:1px solid var(--ggtl-line);border-radius:16px;padding:26px!important;height:100%}
.ggtl-lightcard .elementor-widget-image img{border-radius:10px;aspect-ratio:4/3;object-fit:cover}

/* Blog tabs: add the CSS class ggtl-blogtabs to an Elementor Tabs widget */
.ggtl-blogtabs .elementor-tabs-wrapper{display:flex!important;flex-wrap:wrap;gap:.5rem;margin-bottom:1.6rem}
.ggtl-blogtabs .elementor-tab-desktop-title{border:1px solid var(--ggtl-line)!important;background:#fff;border-radius:999px!important;padding:.5rem 1.05rem!important;font:500 .9rem Figtree,sans-serif;color:var(--ggtl-deep)!important;transition:background .2s,color .2s}
.ggtl-blogtabs .elementor-tab-desktop-title:hover{border-color:var(--ggtl-rose)!important;color:var(--ggtl-rose)!important}
.ggtl-blogtabs .elementor-tab-desktop-title.elementor-active{background:var(--ggtl-deep);border-color:var(--ggtl-deep)!important;color:var(--ggtl-cream)!important}
.ggtl-blogtabs .elementor-tab-desktop-title::before,.ggtl-blogtabs .elementor-tab-desktop-title::after{display:none!important}
.ggtl-blogtabs .elementor-tab-content{border:0!important;padding:0!important}
.ggtl-blogtabs .elementor-tabs-content-wrapper{border:0!important}
.ggtl-blogtabs .elementor-tab-mobile-title{border:0!important;border-top:1px solid var(--ggtl-line)!important;padding:.9rem 0!important;font:500 1rem Figtree,sans-serif;color:var(--ggtl-deep)!important}
.ggtl-blogtabs .elementor-tab-mobile-title.elementor-active{color:var(--ggtl-rose)!important}

/* Newsletter form */
.ggtl-form{display:flex;gap:.6rem;flex-wrap:wrap;max-width:30rem}
.ggtl-form input[type=email]{flex:1 1 14rem;border:1px solid var(--ggtl-line);border-radius:999px;padding:.85rem 1.2rem;font:inherit;background:#fff}
.ggtl-form button{border:0;border-radius:999px;background:var(--ggtl-deep);color:var(--ggtl-cream);font:600 .9375rem Figtree,sans-serif;padding:.85rem 1.5rem;cursor:pointer}
.ggtl-form button:hover{background:var(--ggtl-rose)}

/* Sunday reset steps (used in an HTML widget) */
.ggtl-steps{counter-reset:step;list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;color:#EBD6DA}
.ggtl-steps li{counter-increment:step;border-top:1px solid rgba(233,191,198,.35);padding-top:1rem}
.ggtl-steps li::before{content:counter(step,decimal-leading-zero);display:block;font-family:Fraunces,Georgia,serif;font-style:italic;color:var(--ggtl-petal);font-size:1.6rem;margin-bottom:.35rem}
.ggtl-steps strong{display:block;color:var(--ggtl-cream);font-family:Fraunces,Georgia,serif;font-weight:400;font-size:1.15rem;margin-bottom:.2rem}

/* Chips, subcategory cards, footer lists (HTML widgets) */
.ggtl-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none}
.ggtl-chips a{display:inline-block;text-decoration:none;border:1px solid var(--ggtl-line);background:#fff;border-radius:999px;padding:.4rem .95rem;font-size:.875rem;color:var(--ggtl-deep)}
.ggtl-chips a:hover{border-color:var(--ggtl-rose);color:var(--ggtl-rose)}
.ggtl-subcats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.ggtl-subcats a{display:block;text-decoration:none;background:var(--ggtl-cream);border:1px solid var(--ggtl-line);border-radius:14px;padding:1.2rem 1.3rem;color:var(--ggtl-deep)}
.ggtl-subcats a:hover{border-color:var(--ggtl-rose)}
.ggtl-subcats strong{display:block;font-family:Fraunces,Georgia,serif;font-weight:400;font-size:1.25rem;margin-bottom:.2rem}
.ggtl-subcats span{font-size:.9rem;color:var(--ggtl-soft)}
.ggtl-footer-links{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}
.ggtl-footer-links a{color:#F1DDE1;text-decoration:none}.ggtl-footer-links a:hover{color:var(--ggtl-petal)}
.ggtl-brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--ggtl-deep)}
.ggtl-brand img{width:34px;height:34px}
.ggtl-brand span{font-family:Fraunces,Georgia,serif;font-size:1.25rem}

/* Hero photo frame: add the CSS class ggtl-frame to an Image widget (Advanced > CSS Classes) */
.ggtl-frame .elementor-widget-container{position:relative;padding:0 1.8rem 1.8rem 0}
.ggtl-frame .elementor-widget-container::before{content:"";position:absolute;inset:1.8rem 0 0 1.8rem;background:var(--ggtl-blush);border-radius:4px}
.ggtl-frame img{position:relative;z-index:1;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:4px}

/* Articles and category pages (Hello Elementor defaults, restyled) */
body.single-post .site-main,body.archive .site-main,body.search .site-main,body.blog .site-main{max-width:1100px;margin:0 auto;padding:3.5rem clamp(1.25rem,5vw,3rem)}
body.single-post .page-header .entry-title{font-size:clamp(2.2rem,4.6vw,3.4rem);letter-spacing:-.015em;max-width:760px}
body.single-post .page-content{max-width:720px;font-size:1.0625rem;line-height:1.7}
body.single-post .page-content h2{margin-top:2.6rem;font-size:clamp(1.6rem,3vw,2rem)}
body.single-post .page-content h3{margin-top:1.8rem;font-size:1.3rem}
body.single-post .page-content blockquote{border-left:3px solid var(--ggtl-rose);margin-left:0;padding-left:1.2rem;font-family:Fraunces,Georgia,serif;font-style:italic;font-size:1.25rem;color:var(--ggtl-deep)}
body.single-post .page-content li::marker{color:var(--ggtl-rose)}
body.single-post .page-content img{border-radius:6px}
.ggtl-affiliate{font-size:.8125rem;color:var(--ggtl-soft);border-top:1px solid var(--ggtl-line);padding-top:1rem;margin-top:2.5rem}
body.archive .page-header .entry-title,body.blog .page-header .entry-title,body.search .page-header .entry-title{font-size:clamp(2.2rem,4.6vw,3.2rem)}
body.archive .page-content article,body.blog .page-content article,body.search .page-content article{border-top:1px solid var(--ggtl-line);padding:1.6rem 0}
body.archive .page-content .entry-title a,body.blog .page-content .entry-title a,body.search .page-content .entry-title a{color:var(--ggtl-deep);text-decoration:none;font-family:Fraunces,Georgia,serif}
body.archive .page-content .entry-title a:hover{color:var(--ggtl-rose)}
.pagination,.nav-links{margin-top:2rem;font-weight:600}

@media (max-width:960px){.ggtl-grid,.ggtl-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}.ggtl-steps{grid-template-columns:repeat(2,1fr)}.ggtl-subcats{grid-template-columns:1fr}}
@media (max-width:600px){.ggtl-grid,.ggtl-grid--2,.ggtl-grid--4{grid-template-columns:1fr}.ggtl-steps{grid-template-columns:1fr}}
