/* Exo 2, local variable fonts; SIL OFL 1.1 in fonts/OFL.txt. */
@font-face{font-family:'Exo 2';src:url('fonts/exo2-normal.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:'Exo 2';src:url('fonts/exo2-italic.woff2') format('woff2');font-style:italic;font-weight:100 900;font-display:swap}
:root{--serif:'Exo 2',Arial,sans-serif;--sans:'Exo 2',Arial,sans-serif}
body{font-family:'Exo 2',Arial,sans-serif}
/* Frontend text only: preserve icon fonts and the WordPress toolbar. */
body :is(h1,h2,h3,h4,h5,h6,p,a,button,input,select,textarea,label,small,strong,em,blockquote,summary,th,td,dt,dd,li,legend,figcaption,.brand,.cert-brand,.sb-cert-brand,.hero-price,.step-number,.sb-fields-heading,.sb-preview-label,.sb-cert-end,.sbr-brand):not(#wpadminbar *):not(.dashicons):not(.ab-icon):not(.fa):not(.fas):not(.far):not(.fab){font-family:'Exo 2',Arial,sans-serif!important}
body :is(h1,h2,h3,h4,h5,h6){letter-spacing:normal}

/* Readable text, navigation and larger click targets. */
body{font-size:17px}
.header nav{font-size:16px;gap:24px}
.header nav>a{font-size:16px;min-height:48px;display:inline-flex;align-items:center;line-height:1.4}
.header .cart-link{min-height:50px;padding:12px 19px;font-weight:600}
.header .brand small{font-size:14px;line-height:1.4;letter-spacing:.2px;font-weight:500;color:#d8dfe7;margin-top:8px}
.hero-copy .lead,.steps p,.gift-info>p,.about-grid>div p,.faqs p{font-size:16px;line-height:1.8}
.button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce #payment #place_order,.sb-personalizer .sb-submit{font-size:16px!important;min-height:56px!important;padding:16px 25px!important;line-height:1.4!important}
.sb-personalizer label{font-size:14px}
.sb-personalizer input:not([type=checkbox]),.sb-personalizer textarea,.sb-personalizer select,.sbr-input input{font-size:16px;min-height:50px}
.sb-personalizer .sb-inspire{font-size:15px;min-height:48px}
@media(max-width:1100px){.header nav{gap:18px}.header .brand small{font-size:13px}}
@media(max-width:800px){
 .header{gap:12px}.header .brand{gap:8px;font-size:30px}.header .brand svg{width:34px;flex-shrink:0}
 .header .brand small{font-size:clamp(10.5px,2.8vw,12px);letter-spacing:0;line-height:1.4}
 .header .menu{min-width:44px;min-height:44px;flex-shrink:0;font-size:24px}
 .header nav>a{font-size:17px;min-height:48px}.header .cart-link{font-size:17px}
 .button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce #payment #place_order,.sb-personalizer .sb-submit{padding:15px 20px!important;font-size:16px!important}
 .hero-actions{flex-wrap:wrap;row-gap:16px}.hero-copy .lead{font-size:16px}
}

/* Package price: readable WooCommerce nested amount and aligned label. */
body .gift-info .gift-price{display:flex;align-items:center;justify-content:flex-start;gap:20px;padding-top:24px;margin:24px 0;min-width:0}
body .gift-info .gift-price>strong{display:block;flex:0 0 auto;white-space:nowrap;margin:0}
body .gift-info .gift-price>strong,body .gift-info .gift-price>strong *{font-size:clamp(36px,4vw,44px)!important;line-height:1.15!important;font-weight:600;color:#f9f5ee}
body .gift-info .gift-price>span{display:block;font-size:16px;line-height:1.55;color:#c4cdd8;text-align:left;min-width:0}
@media(max-width:580px){body .gift-info .gift-price{gap:16px}body .gift-info .gift-price>span{font-size:14px}}
