/*
Theme Name: Parentif
Theme URI: https://parentif.com/
Description: Light shell theme for parentif.com. The Parentif plugin draws the header, footer, articles, archives and tools; this theme gives WordPress a clean, fast frame for everything else (simple pages, full-width landing pages, products, cart, search, 404).
Version: 1.0.3
Requires at least: 6.4
Requires PHP: 7.4
Author: Parentif
Text Domain: parentif
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
/* Base reset: the landing pages and tools were designed on a zero-margin reset, so keep it. */
body{margin:0;background:#fff;color:#1E2F36;font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased}
html,body{overflow-x:clip}
h1,h2,h3,h4,h5,h6,p,ul,ol,figure,blockquote,hr,dl,dd,pre{margin:0}
ul,ol{padding:0}
/* Headings take the colour of their section (landing pages put light titles on dark bands). */
h1,h2,h3,h4,h5,h6{font-family:"Plus Jakarta Sans",Inter,system-ui,sans-serif;color:inherit}
.single-page :is(h1,h2,h3,h4,h5,h6),.pf-list-head h1,.pfw :is(h1,h2,h3,h4,h5,h6),.pf-card b{color:#264653}
h1{font-size:42px;line-height:1.2;font-weight:900;letter-spacing:-.02em}
h2{font-size:34px;line-height:1.25;font-weight:900;letter-spacing:-.02em}
h3{font-size:24px;line-height:1.3;font-weight:800}
h4{font-size:19px;line-height:1.45;font-weight:800}
a{color:inherit;text-decoration:none}
img,svg,video,iframe{max-width:100%}
img{height:auto;vertical-align:middle}
blockquote{padding-left:1.5em}
small{font-size:.8em}
button,input,select,textarea{font:inherit}
button{border:0;font-size:12px;font-weight:700;line-height:normal;cursor:pointer}
input[type=text],input[type=email],input[type=search],input[type=tel],input[type=url],input[type=number],input[type=password],textarea,select{border:0;background:rgba(136,136,136,.07);padding:12px 20px;font-size:14px;line-height:1.7;border-radius:6px;max-width:100%}
table{border-collapse:collapse}
td,th{padding:.5em;border:1px solid rgba(136,136,136,.25);vertical-align:baseline}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip-link:focus{position:fixed;top:8px;left:8px;width:auto;height:auto;clip:auto;z-index:100000;background:#fff;color:#264653;padding:10px 16px;border-radius:999px;font-weight:700}
.pf-w{width:100%;max-width:1240px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.site-main{display:block;min-height:50vh}

/* Simple pages (cart, account, plain text pages) */
.single-page{padding-bottom:64px}
.single-page>.page-header{background:#FCF1E5;border-radius:30px;padding:clamp(28px,4vw,52px) clamp(22px,4vw,56px);margin:18px auto 34px;max-width:1160px}
.single-page>.page-header h1{margin:0}
.single-page>.entry-content a{color:#E76F51}
.single-page>.page-header p{margin:12px 0 0;color:#5D6C71;font-size:18px;max-width:60ch}
.single-page>.entry-content{max-width:820px;margin:0 auto}
.single-page.pf-wide>.entry-content{max-width:1160px}
.entry-content>*:first-child{margin-top:0}
.entry-content .alignwide{max-width:1160px;margin-left:auto;margin-right:auto}
.entry-content .aligncenter{margin-left:auto;margin-right:auto;text-align:center}

/* Full width template: the content carries its own layout */
.pf-full{display:block;width:100%}
.pf-full>*{margin-top:0}
.pf-full>.pf-box{max-width:var(--pf-box,1240px);margin-left:auto;margin-right:auto;padding-left:var(--pf-box-pad,0);padding-right:var(--pf-box-pad,0)}

/* Contact form and separators on full-width pages keep a readable width */
.pf-full>.srfm-form-container,.pf-full>form,.pf-full>div[class*="srfm"],.pf-full>.wp-block-shortcode{max-width:900px;margin-left:auto;margin-right:auto;padding-left:20px;padding-right:20px}
.pf-full>hr,.pf-full>.wp-block-separator{max-width:860px;margin:24px auto;border:0;border-top:1px solid #F1DCC6}

/* Lists: search results and odd archives */
.pf-list-head{background:#FCF1E5;border-radius:28px;padding:clamp(24px,4vw,44px);margin:18px 0 30px}
.pf-list-head h1{margin:0;font-size:clamp(30px,4.2vw,48px);font-weight:800;letter-spacing:-.025em}
.pf-list-head p{margin:10px 0 0;color:#5D6C71}
.pf-none{margin:0 0 18px}
.pf-search{display:flex;gap:10px;max-width:560px;margin:20px 0 0}
.pf-search input[type=search]{flex:1;min-width:0;border:1px solid #F1DCC6;border-radius:999px;padding:13px 18px;background:#fff;color:#1E2F36}
.pf-search button{border:0;border-radius:999px;padding:13px 24px;background:#E76F51;color:#fff;font-weight:800;cursor:pointer}
.pf-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:22px;margin:0 0 40px}
.pf-card{display:flex;flex-direction:column;background:#fff;border:1px solid #EFE6DC;border-radius:22px;overflow:hidden;text-decoration:none;color:#1E2F36;box-shadow:0 8px 24px rgba(38,70,83,.07);transition:transform .15s,box-shadow .15s}
.pf-card:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(38,70,83,.14)}
.pf-card img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block;background:#F1DCC6}
.pf-card div{padding:16px 18px 20px}
.pf-card small{display:inline-block;font-weight:800;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:#E76F51;margin-bottom:6px}
.pf-card b{display:block;font-family:"Plus Jakarta Sans",Inter,sans-serif;font-size:19px;line-height:1.25;color:#264653}
.pf-card span{display:block;margin-top:8px;font-size:14.5px;color:#5D6C71;line-height:1.5}
.pf-pager{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:0 0 56px}
.pf-pager .page-numbers{display:inline-flex;min-width:44px;height:44px;align-items:center;justify-content:center;padding:0 14px;border-radius:999px;border:1px solid #F1DCC6;text-decoration:none;font-weight:700;color:#264653}
.pf-pager .page-numbers.current{background:#264653;color:#fff;border-color:#264653}
.pf-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin:0 0 56px}
.pf-links a{display:block;background:#fff;border:1px solid #F1DCC6;border-radius:18px;padding:16px 18px;text-decoration:none;font-weight:700;color:#264653}
.pf-links a:hover{border-color:#E76F51;color:#E76F51}

/* WooCommerce: product page and plain shop pages */
.pfw{background:#FCF1E5;padding:26px 0 64px}
.pfw .woocommerce-breadcrumb{font-size:13px;color:#5D6C71;margin:0 0 18px}
.pfw .woocommerce-breadcrumb a{color:#264653}
.pfw div.product{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:start;position:relative}
.pfw div.product>.woocommerce-product-gallery,.pfw div.product>.images{width:100%!important;float:none!important;margin:0!important;min-width:0}
.pfw div.product>.summary{width:100%!important;float:none!important;margin:0!important;min-width:0}
.pfw div.product>.woocommerce-tabs,.pfw div.product>.related,.pfw div.product>.upsells,.pfw div.product>.pf-after{grid-column:1/-1;min-width:0}
.pfw .woocommerce-product-gallery img{border-radius:22px;display:block;width:100%}
.pfw .woocommerce-product-gallery__wrapper{margin:0}
.pfw .flex-control-thumbs{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.pfw .flex-control-thumbs li{margin:0;float:none!important;width:auto!important}
.pfw .flex-control-thumbs img{border-radius:14px;cursor:pointer;opacity:.7}
.pfw .flex-control-thumbs img.flex-active,.pfw .flex-control-thumbs img:hover{opacity:1}
.pfw .woocommerce-product-gallery__trigger{position:absolute;top:14px;right:14px;z-index:5;width:40px;height:40px;border-radius:50%;background:#fff;text-indent:-9999px;overflow:hidden;box-shadow:0 6px 16px rgba(0,0,0,.14)}
.pfw .woocommerce-product-gallery{position:relative}
.pfw h1.product_title{font-size:clamp(30px,4.2vw,48px);font-weight:800;letter-spacing:-.025em;line-height:1.12;margin:0 0 14px}
.pfw div.product p.price,.pfw div.product span.price{font-family:"Plus Jakarta Sans",Inter,sans-serif;font-weight:800;font-size:clamp(28px,3.4vw,40px);color:#264653;margin:0 0 18px;display:block}
.pfw .woocommerce-product-details__short-description{font-size:17px;color:#1E2F36;margin-bottom:22px}
.pfw div.product form.cart{margin:0 0 20px}
.pfw div.product .single_add_to_cart_button,.pfw div.product form.cart .button{display:inline-flex;align-items:center;justify-content:center;min-width:260px;border:0;border-radius:999px;background:#E76F51;color:#fff;font-family:"Plus Jakarta Sans",Inter,sans-serif;font-weight:800;font-size:18px;padding:16px 34px;cursor:pointer;text-decoration:none;box-shadow:0 14px 26px -14px rgba(231,111,81,.9);transition:transform .15s,background .15s}
.pfw div.product .single_add_to_cart_button:hover{background:#264653;transform:translateY(-2px)}
.pfw .product_meta{font-size:13.5px;color:#5D6C71;border-top:1px solid #F1DCC6;padding-top:14px}
.pfw .product_meta>span{display:block}
.pfw .product_meta a{color:#264653}
.pfw .woocommerce-tabs{margin-top:44px}
.pfw .woocommerce-tabs ul.tabs{list-style:none;margin:0 0 0;padding:0;display:flex;gap:8px;border-bottom:1px solid #F1DCC6}
.pfw .woocommerce-tabs ul.tabs li{margin:0}
.pfw .woocommerce-tabs ul.tabs li a{display:block;padding:12px 4px;margin-right:18px;font-family:"Plus Jakarta Sans",Inter,sans-serif;font-weight:800;font-size:20px;text-decoration:none;color:#5D6C71;border-bottom:3px solid transparent}
.pfw .woocommerce-tabs ul.tabs li.active a{color:#E76F51;border-color:#E76F51}
.pfw .woocommerce-Tabs-panel{padding:26px 0 0;max-width:860px;font-size:17px}
.pfw .woocommerce-Tabs-panel>h2:first-child{display:none}
.pfw .woocommerce-Tabs-panel p,.pfw .woocommerce-product-details__short-description p{margin:0 0 1em}
.pfw .woocommerce-Tabs-panel ul,.pfw .woocommerce-Tabs-panel ol{margin:0 0 1.2em;padding-left:1.3em}
.pfw .woocommerce-Tabs-panel a{color:#E76F51;text-decoration:underline}
.pfw section.related>h2,.pfw section.upsells>h2{margin:0 0 20px}
.pfw .woocommerce-Tabs-panel h2,.pfw .woocommerce-Tabs-panel h3{margin-top:1.4em}
.pfw section.related,.pfw section.upsells{margin-top:48px}
.pfw ul.products{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.pfw ul.products::before,.pfw ul.products::after{display:none!important}
.pfw ul.products li.product{float:none!important;width:auto!important;margin:0!important;background:#fff;border-radius:22px;padding:12px 12px 18px;text-align:center;box-shadow:0 8px 24px rgba(38,70,83,.07);display:flex;flex-direction:column}
.pfw ul.products li.product a.woocommerce-LoopProduct-link{text-decoration:none;color:#264653;display:block}
.pfw ul.products li.product img{border-radius:14px;width:100%;display:block;margin:0 0 12px}
.pfw ul.products li.product .woocommerce-loop-product__title{font-size:16.5px;font-weight:700;line-height:1.3;margin:0 0 6px;padding:0}
.pfw ul.products li.product .price{font-weight:800;color:#264653;display:block;margin:0 0 12px;font-size:17px}
.pfw ul.products li.product .button{margin-top:auto;align-self:center;display:inline-flex;align-items:center;justify-content:center;background:#E76F51;color:#fff;border-radius:999px;font-weight:800;padding:11px 22px;line-height:1.2;text-decoration:none}
.pfw ul.products li.product .button:hover{background:#264653}
.pfw .onsale{display:none}
.pfw .woocommerce-notices-wrapper:empty{display:none}
.pf-shop .entry-content .button,.pf-shop .entry-content button[type=submit],.pf-shop .wc-block-components-button{border-radius:999px}

/* Fallback chrome, only if the Parentif plugin is off */
.pft-fallback{background:#264653;padding:16px 20px;font-weight:800}
.pft-fallback a{color:#FCF1E5;text-decoration:none}
.pft-fallback-f{background:#1E2F36;color:#C9D3D6;padding:24px 20px;font-size:14px;text-align:center}

@media (max-width:900px){.pfw div.product{grid-template-columns:1fr}.pfw ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.pfw div.product .single_add_to_cart_button{width:100%;min-width:0}}
@media (max-width:767px){.single-page>.page-header{border-radius:22px;margin:10px 0 26px}.pfw{padding-top:16px}.pfw .woocommerce-tabs ul.tabs li a{font-size:17px}}
@media print{.pfh-top,#pfn,.pff,.pfn-ck,.pfn-up{display:none!important}}
