/*
Theme Name: Plan a Flan — Atelier
Theme URI: https://planaflan.com/
Author: Plan a Flan
Description: A bespoke Bengali block theme with full site editing, WooCommerce styling, local fonts and subtle motion.
Version: 1.1.0
Requires at least: 6.6
Requires PHP: 8.0
Text Domain: plan-a-flan
License: GPL-2.0-or-later
*/
@font-face{font-family:'Flan Bangla';src:url(assets/bangla-regular.ttf) format('truetype');font-weight:400;font-display:swap}@font-face{font-family:'Flan Bangla';src:url(assets/bangla-bold.ttf) format('truetype');font-weight:800;font-display:swap}
:root{--pf-cream:var(--wp--preset--color--cream,#fbf8f1);--pf-ink:var(--wp--preset--color--ink,#241d16);--pf-yellow:var(--wp--preset--color--yellow,#ffda16);--pf-muted:var(--wp--preset--color--muted,#71685e);--pf-line:color-mix(in srgb,var(--pf-ink) 14%,transparent)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}:where(body){margin:0;font-family:'Flan Bangla',sans-serif;font-size:16px;line-height:1.8;color:var(--pf-ink);background:var(--pf-cream)}a{color:inherit}img{max-width:100%;height:auto}button,input,select,textarea{font:inherit}button,a,input,select,summary{touch-action:manipulation}button,[type=submit]{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #a65b28;outline-offset:5px}::selection{background:var(--pf-yellow);color:var(--pf-ink)}h1,h2,h3,p,figure{margin:0}:where(h1,h2,h3){font-weight:800;line-height:1.4}:where(h1){font-size:clamp(40px,5.15vw,76px);letter-spacing:-.035em}:where(h2){font-size:clamp(32px,3.6vw,51px);letter-spacing:-.025em}:where(h3){font-size:23px}p+h1,p+h2{margin-top:18px}h1+p,h2+p,h3+p,p+p{margin-top:20px}.pf-container{width:min(1240px,calc(100% - 96px));margin-inline:auto!important}.wp-site-blocks>*,.pf-main,.pf-main>.wp-block-post-content>*,.pf-main>.wp-block-post-content{margin-block-start:0}.pf-header{position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--pf-cream) 94%,transparent);backdrop-filter:blur(18px);border-bottom:1px solid var(--pf-line)}.admin-bar .pf-header{top:32px}.pf-header-inner{height:103px;display:flex;align-items:center;gap:40px}.pf-header .wp-block-site-logo{margin-right:auto;flex-shrink:0}.wp-block-site-logo img{display:block;width:116px;max-height:83px;object-fit:contain}.pf-nav{font-size:14px}.pf-nav .wp-block-navigation__container{gap:32px}.pf-nav a{text-decoration:none}.pf-header .wp-block-buttons{flex-shrink:0;margin:0}.pf-header .wp-block-button__link{padding:9px 22px;font-size:14px}.pf-header .wp-block-button.is-style-outline>.wp-block-button__link{border:1px solid var(--pf-line)}.wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.wp-block-button__link,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.pf-action{display:inline-flex;justify-content:center;align-items:center;gap:12px;padding:16px 26px 14px;border:1px solid var(--pf-ink);border-radius:100px;background:var(--pf-ink);color:var(--pf-cream);text-decoration:none;font-weight:800;font-size:15px;line-height:1.8;transition:transform .25s,box-shadow .25s,background .25s}.wp-block-button__link:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.pf-action:hover{transform:translateY(-3px);box-shadow:0 7px 0 #a65b2820;background:#45362a;color:white}.is-style-outline>.wp-block-button__link{background:transparent;color:var(--pf-ink);border-color:var(--pf-line)}.is-style-outline>.wp-block-button__link:hover{background:white;color:var(--pf-ink)}.pf-eyebrow{font-size:11px;font-weight:800;letter-spacing:.19em;line-height:1.5;color:var(--pf-muted)}.pf-lead{font-size:17px;color:var(--pf-muted);line-height:1.95}.pf-hero{overflow:hidden;position:relative}.pf-hero-grid{display:grid;grid-template-columns:1fr 1.02fr;gap:30px;min-height:700px;align-items:center;padding-block:64px 70px}.pf-hero-copy{position:relative;z-index:1;padding-block:24px}.pf-hero-note{font-size:12px;color:var(--pf-muted);margin-top:35px}.pf-hero-art{position:relative;aspect-ratio:1;isolation:isolate;display:grid;place-items:center;--x:0px;--y:0px}.pf-hero-art:before{content:'';position:absolute;inset:8% 0 0 0;background:var(--pf-yellow);border-radius:50% 50% 12% 12%;z-index:-2}.pf-hero-art:after{content:'';position:absolute;inset:0;background-image:linear-gradient(#45362a0d 1px,transparent 1px),linear-gradient(90deg,#45362a0d 1px,transparent 1px);background-size:36px 36px;mask-image:linear-gradient(transparent,#000 40%,transparent);z-index:-1;animation:pf-grid 28s linear infinite}.pf-hero-image{width:118%;max-width:none;transform:translate(var(--x),var(--y));transition:transform .8s cubic-bezier(.2,.75,.2,1);filter:drop-shadow(0 20px 14px #4d260d17)}.pf-hero-image img{display:block;width:100%;height:auto}.pf-image-caption{position:absolute;bottom:-19px;font-size:9px;letter-spacing:.23em;color:var(--pf-muted)}.pf-benefit-section{border-top:1px solid var(--pf-line);border-bottom:1px solid var(--pf-line)}.pf-benefits{display:grid;grid-template-columns:repeat(3,1fr);padding-block:34px;gap:36px}.pf-benefit{display:grid;grid-template-columns:30px 1fr;column-gap:16px}.pf-index{grid-row:1/3;font-size:11px;color:#a65b28;margin-top:5px}.pf-benefit h3{font-size:17px}.pf-benefit p:last-child{margin:5px 0 0;font-size:13px;color:var(--pf-muted)}.pf-shop{padding-block:112px;background:#fffdf8}.pf-section-heading{text-align:center;margin-bottom:52px}.pf-section-heading .pf-lead{margin-top:14px}.pf-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.pf-product{padding:22px;border:1px solid var(--pf-line);border-radius:18px;background:var(--pf-cream);transition:border-color .25s,transform .35s;position:relative}.pf-product:hover{transform:translateY(-7px);border-color:#ad7341}.pf-product-photo{aspect-ratio:1.25;background:radial-gradient(ellipse at center,#f4dfb7,transparent 66%);display:block}.pf-product-photo img{height:100%;width:100%;object-fit:contain;transition:transform .7s cubic-bezier(.2,.75,.2,1)}.pf-product:hover .pf-product-photo img{transform:translateY(-5px) rotate(-2deg)}.pf-product-top{display:flex;align-items:center;justify-content:space-between;gap:15px}.pf-product h3{font-size:25px}.pf-product .price{font-size:22px;font-weight:800}.pf-product .price del{font-size:13px;color:var(--pf-muted)}.pf-product .price ins{text-decoration:none}.pf-product-note{font-size:13px;color:var(--pf-muted);margin-top:5px}.pf-product-form{display:flex;gap:10px;margin-top:24px}.pf-product-form .quantity input{width:62px;height:53px;border:1px solid var(--pf-line);border-radius:100px;text-align:center;background:transparent}.pf-product-form .pf-action{flex:1;padding:12px}.pf-stock{font-size:12px;margin-top:15px;color:var(--pf-muted)}.pf-fineprint{font-size:11px;text-align:center;color:var(--pf-muted);margin-top:24px}.pf-story{padding-block:112px}.pf-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.pf-story-photo{position:relative;overflow:hidden;aspect-ratio:.92;border-radius:16px}.pf-story-photo img{width:100%;height:100%;object-fit:cover;transition:transform 1s}.pf-story-photo:hover img{transform:scale(1.03)}.pf-story-copy>p:not(.pf-eyebrow){color:var(--pf-muted)}.pf-faq{padding-block:85px;border-top:1px solid var(--pf-line)}.pf-faq-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.wp-block-details{border-bottom:1px solid var(--pf-line);padding:21px 0}.wp-block-details summary{font-weight:800;cursor:pointer;list-style:none;padding-right:30px;position:relative}.wp-block-details summary::-webkit-details-marker{display:none}.wp-block-details summary:after{content:'+';position:absolute;right:0;font-size:22px;font-weight:400;top:-2px;transition:transform .25s}.wp-block-details[open] summary:after{transform:rotate(45deg)}.wp-block-details p{font-size:14px;color:var(--pf-muted);animation:pf-in .3s ease}.pf-contact{background:var(--pf-yellow);padding-block:74px;position:relative;overflow:hidden}.pf-contact-grid{display:grid;grid-template-columns:1fr auto;gap:60px;align-items:center}.pf-contact h2{font-size:clamp(30px,3.6vw,48px)}.pf-contact-actions .wp-block-buttons{display:grid;margin:0}.pf-contact-actions .is-style-outline>.wp-block-button__link{border-color:#241d16}.pf-contact-number{text-align:center;font-size:18px;margin-top:20px}.pf-contact-number a{text-decoration:none}.pf-footer{padding:55px 0 24px;background:#f2eee6}.pf-footer-top{display:flex;justify-content:space-between;align-items:center;gap:32px}.pf-footer-tagline{font-size:13px;margin-top:14px;color:var(--pf-muted)}.pf-footer-links p{font-size:13px}.pf-footer-links a{text-decoration:none}.pf-footer-links a:hover{text-decoration:underline}.pf-footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--pf-line);padding-top:25px;margin-top:42px!important;font-size:11px;color:var(--pf-muted)}.pf-footer-bottom p{margin:0}.pf-page{padding-block:64px 96px;min-height:60vh}.pf-page>h1{font-size:clamp(32px,4vw,48px);margin-bottom:35px}.pf-page .wp-block-post-content{max-width:none}.pf-motion .pf-reveal{opacity:0;transform:translateY(28px);transition:opacity .7s,transform .85s cubic-bezier(.2,.75,.2,1)}.pf-motion .pf-reveal.pf-visible{opacity:1;transform:none}.pf-progress{position:fixed;left:0;top:0;height:3px;width:100%;background:var(--pf-ink);z-index:100;transform:scaleX(0);transform-origin:left}.pf-preview-ribbon{padding:10px;text-align:center;background:#241d16;color:#fff;font-size:12px}.pf-preview-ribbon a{color:#ffda16}.screen-reader-text{border:0;clip-path:inset(50%);height:1px;width:1px;margin:-1px;overflow:hidden;position:absolute;white-space:nowrap}.pf-mobile-nav{display:none}.pf-mobile-nav summary{cursor:pointer}.pf-mobile-nav nav{position:absolute;right:20px;background:var(--pf-cream);padding:24px;border:1px solid var(--pf-line);border-radius:14px;display:grid;gap:12px;z-index:50}.pf-mobile-nav a{text-decoration:none}
/* Native WooCommerce, including account, cart, checkout and product pages. */
.pf-header-inner>*,.pf-hero-grid>*,.pf-benefits>*,.pf-benefit>*,.pf-story-grid>*,.pf-faq-grid>*,.pf-contact-grid>*,.pf-footer-top>*,.pf-footer-bottom>*{margin-block-start:0}
.pf-header .wp-block-woocommerce-customer-account,.pf-header .wp-block-woocommerce-mini-cart{display:none}
.woocommerce{--wc-primary:var(--pf-ink)}.woocommerce div.product{margin-block:45px}.woocommerce div.product .product_title{font-size:40px}.woocommerce ul.products li.product a img{border-radius:15px}.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt{background:var(--pf-ink);color:var(--pf-cream)}.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{background:#45362a}.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.select2-container--default .select2-selection--single{min-height:50px;border:1px solid var(--pf-line);border-radius:10px;background:#fff;padding:11px 14px;color:var(--pf-ink)}.woocommerce form .form-row label{font-size:14px;margin-bottom:7px}.woocommerce form .form-row{margin-bottom:17px}.woocommerce #customer_details{margin-bottom:35px}.woocommerce table.shop_table{border:1px solid var(--pf-line);border-radius:12px;overflow:hidden}.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:17px}.woocommerce #payment{background:#f0e9db;border-radius:15px}.woocommerce #payment div.payment_box{background:#fffdf7}.woocommerce #payment div.payment_box:before{border-bottom-color:#fffdf7}.woocommerce-info,.woocommerce-message{border-top-color:#a65b28;background:#f3ede2;color:var(--pf-ink)}.woocommerce-info:before,.woocommerce-message:before{color:#a65b28}.woocommerce form.login,.woocommerce form.register{border-radius:14px}.woocommerce-MyAccount-navigation ul{list-style:none;padding:0}.woocommerce-MyAccount-navigation a{display:block;padding:12px 18px;text-decoration:none}.woocommerce-MyAccount-navigation .is-active a{background:var(--pf-yellow);border-radius:8px}.pf-delivery-box{border:1px solid var(--pf-line);border-radius:14px;padding:22px;margin:24px 0;background:var(--pf-cream)}.pf-delivery-box h3{margin-bottom:18px}.pf-delivery-box .form-row{width:100%;float:none}.pf-delivery-box small{color:var(--pf-muted)}.woocommerce .quantity .qty{width:70px;border:1px solid var(--pf-line);padding:10px;border-radius:8px}.woocommerce .star-rating span{color:#a65b28}.woocommerce .woocommerce-breadcrumb{font-size:12px}.woocommerce div.product form.cart .button{margin-left:12px}.pf-notice{padding:20px;background:#fff2cc;border-radius:10px}.pf-admin-only{padding:15px;border:1px dashed #ab693e}
@keyframes pf-grid{to{background-position:36px 36px}}@keyframes pf-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(max-width:1050px){.pf-container{width:calc(100% - 56px)}.pf-header-inner{gap:24px}.pf-nav .wp-block-navigation__container{gap:18px}.pf-hero-grid{min-height:570px}.pf-story-grid{gap:45px}.pf-products{gap:15px}.pf-product{padding:18px}.pf-product-top{display:block}.pf-faq-grid{gap:40px}}
@media(max-width:767px){html{scroll-padding-top:80px}.pf-container{width:calc(100% - 36px)}.pf-header-inner{height:79px;gap:18px}.wp-block-site-logo img{width:90px;max-height:61px}.pf-header .wp-block-buttons{margin-left:auto}.pf-header .wp-block-button__link{font-size:12px;padding:8px 16px}.pf-nav{margin-left:auto}.pf-hero-grid{grid-template-columns:1fr;gap:16px;min-height:0;padding-block:38px 55px}.pf-hero-copy{padding:0}.pf-hero-copy h1{font-size:44px;line-height:1.4}.pf-lead{font-size:15px}.pf-hero-copy>.wp-block-buttons{margin-top:26px;gap:8px}.wp-block-button__link{font-size:13px;padding:13px 20px}.pf-hero-note{margin-top:22px;font-size:11px}.pf-hero-art{width:min(440px,100%);margin:auto!important;margin-top:3px!important}.pf-hero-image{width:110%}.pf-image-caption{bottom:-15px}.pf-benefits{grid-template-columns:1fr;gap:20px;padding-block:28px}.pf-benefit{grid-template-columns:30px 1fr}.pf-benefit h3{font-size:16px}.pf-benefit p:last-child{font-size:12px}.pf-shop,.pf-story{padding-block:66px}.pf-section-heading{margin-bottom:32px}.pf-section-heading h2{font-size:34px}.pf-products{grid-template-columns:1fr;gap:20px}.pf-product{padding:20px 22px}.pf-product-photo{aspect-ratio:1.5;max-height:250px}.pf-product-top{display:flex}.pf-product h3{font-size:26px}.pf-product-form{margin-top:18px}.pf-stock{margin-top:10px}.pf-story-grid{grid-template-columns:1fr;gap:38px}.pf-story-photo{aspect-ratio:1.06}.pf-story-copy h2{font-size:34px}.pf-faq{padding-block:62px}.pf-faq-grid{grid-template-columns:1fr;gap:22px}.pf-faq-intro h2{font-size:34px}.pf-contact{padding-block:55px}.pf-contact-grid{grid-template-columns:1fr;gap:30px}.pf-contact-actions .wp-block-buttons{display:flex}.pf-contact-number{text-align:left}.pf-footer{padding-top:38px}.pf-footer-top{align-items:flex-start;flex-direction:column;gap:28px}.pf-footer-bottom{gap:8px;flex-direction:column}.pf-page{padding-block:38px 60px}.pf-mobile-nav{display:block}.pf-preview-desktop-nav{display:none!important}.admin-bar .pf-header{top:46px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.pf-motion .pf-reveal{opacity:1;transform:none}.pf-hero-image{transform:none!important}.pf-product:hover,.wp-block-button__link:hover{transform:none}}
/* Three size identities: individual, shared and family. */
.pf-product-250{background:#f2ede3;border-color:#ded5c6}.pf-product-500{background:var(--pf-yellow);border-color:var(--pf-yellow)}.pf-product-1000{background:#67361e;border-color:#67361e;color:#fff8e9}.pf-product-1000 .pf-product-note,.pf-product-1000 .pf-stock{color:#eee0cd}.pf-product-1000 .pf-action{background:#fff4dc;color:#40200e;border-color:#fff4dc}.pf-product-1000 .pf-product-form .quantity input,.pf-product-1000 .pf-product-form input[type=number]{color:#fff8e9;border-color:#b58d73!important}.pf-product-500 .pf-product-note,.pf-product-500 .pf-stock{color:#50400e}.pf-product-1000 .pf-product-photo{background:radial-gradient(ellipse at center,#a26235,transparent 70%)}.pf-product-photo{overflow:hidden;aspect-ratio:1.2}.pf-product-photo img{object-fit:contain!important;object-position:center bottom}.pf-product-250 .pf-action{background:transparent;color:var(--pf-ink)}.pf-product-250 .pf-action:hover{background:var(--pf-ink);color:var(--pf-cream)}
