/* Parendigm theme additions: header cart, classic pages, blog, breadcrumbs, shop wrappers. */

/* Header cart */
.pd-cart{position:relative;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;color:var(--ink);transition:background .25s}
.pd-cart:hover{background:var(--gold-soft)}
.pd-cart svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.pd-cart-count{position:absolute;top:3px;right:1px;min-width:17px;height:17px;padding:0 4px;border-radius:99px;background:var(--gold);color:var(--ink);font-size:10px;font-weight:700;line-height:17px;text-align:center}
.pd-cart-count.is-empty{opacity:.9}
@media(max-width:980px){.nav-right .pd-cart{display:inline-flex}}

/* Classic pages (cart, checkout, account, policies, blog) */
body.pd-generic{background:var(--cream)}
body.pd-generic .content-area{width:100%;max-width:1200px;margin:0 auto;padding:130px 24px 80px;float:none}
body.pd-generic .site-main{margin:0}
body.pd-generic .inside-article{background:#fff;border:1px solid var(--border);border-radius:var(--r-card);padding:44px}
body.pd-generic .entry-header{margin-bottom:26px}
body.pd-generic .entry-title,body.pd-generic .page-title{font-family:var(--serif);font-weight:500;font-size:clamp(32px,4vw,46px);line-height:1.1;color:var(--ink)}
body.pd-generic .entry-content{font-size:16px;line-height:1.7;color:var(--charcoal)}
body.pd-generic .entry-content a{color:var(--gold-deep);text-decoration:underline;text-underline-offset:3px}
body.pd-generic .entry-content h2,body.pd-generic .entry-content h3{font-family:var(--serif);font-weight:500;margin:1.4em 0 .5em}
body.pd-generic .entry-content p,body.pd-generic .entry-content ul,body.pd-generic .entry-content ol{margin-bottom:1em}
body.pd-generic .entry-content ul,body.pd-generic .entry-content ol{padding-left:1.3em}
body.pd-generic .entry-meta{font-size:14px;color:var(--muted);margin-top:8px}
body.pd-generic .featured-image img{border-radius:var(--r-img);margin-bottom:26px;width:100%;height:auto}
.pd-archive-head{margin-bottom:30px}
.pd-post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.pd-post-card .inside-article{padding:0!important;overflow:hidden;display:flex;flex-direction:column;height:100%}
.pd-post-card .post-image img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.pd-post-card .entry-header,.pd-post-card .entry-summary,.pd-post-card .pd-read{margin-left:26px;margin-right:26px}
.pd-post-card .entry-header{margin-top:24px;margin-bottom:10px}
.pd-post-card .entry-title{font-size:22px!important}
.pd-post-card .entry-summary{font-size:15px;color:var(--muted);margin-bottom:20px}
.pd-post-card .pd-read{margin-top:auto;margin-bottom:26px;align-self:flex-start}
.nav-links.pagination,.pagination .nav-links{display:flex;gap:8px;justify-content:center;margin-top:36px}
.pd-breadcrumbs{font-size:13px;color:var(--muted);margin-bottom:14px}
.pd-breadcrumbs a{color:var(--muted)}
.pd-breadcrumbs a:hover{color:var(--gold-deep)}
.pd-breadcrumbs .sep{margin:0 8px;opacity:.6}
.pd-404{text-align:center}
.pd-404 .search-form{margin:22px auto;max-width:420px}
@media(max-width:980px){.pd-post-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.pd-post-grid{grid-template-columns:1fr}body.pd-generic .inside-article{padding:26px}body.pd-generic .content-area{padding-top:110px}}

/* WooCommerce (classic wrappers) */
.woocommerce .page-header-image-single{display:none}
.woocommerce .entry-content,.woocommerce .product .entry-summary{margin-top:0}
.related.products{clear:both}
.checkout-subscribe-prompt.clear{visibility:visible;height:initial;width:initial}
@media(max-width:768px){.woocommerce .woocommerce-ordering,.woocommerce-page .woocommerce-ordering{float:none}.woocommerce .woocommerce-ordering select{max-width:100%}}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{border-radius:var(--pill);background:var(--gold);color:var(--ink);font-weight:600}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{background:var(--gold-hover);color:var(--ink)}
.woocommerce a.button.alt,.woocommerce button.button.alt{background:var(--ink);color:#fff}
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{background:var(--charcoal);color:#fff}

/* Editor helper text inside widgets */
.pd-el-notice{padding:18px 20px;border:2px dashed var(--gold);border-radius:14px;background:var(--gold-soft);color:var(--ink);font:500 14px/1.5 var(--sans);text-align:center}

/* Core / WooCommerce header and footer tags inside content are not the site header / footer. */
.content-area header,.content-area footer,.pd-main article header,.pd-main article footer.comment-meta{position:static;padding:0;background:none;color:inherit;z-index:auto;transition:none}
.comment-list{list-style:none;padding:0}
.comment-list .comment-body{padding:18px 0;border-bottom:1px solid var(--border)}
.comment-list .avatar{border-radius:50%;margin-right:10px;vertical-align:middle}
.comment-respond input[type=text],.comment-respond input[type=email],.comment-respond input[type=url],.comment-respond textarea{width:100%;border:1px solid var(--border);border-radius:12px;padding:12px 14px}
.comment-respond .submit{border:0;border-radius:var(--pill);background:var(--gold);color:var(--ink);font-weight:600;padding:13px 26px;cursor:pointer}
body.pd-generic .comments-area{background:#fff;border:1px solid var(--border);border-radius:var(--r-card);padding:36px 44px;margin-top:26px}

/* Newsletter / notify forms (Contact Form 7): email + button on one line, Parendigm style. */
.newsletter .wpcf7,.pp-form .wpcf7,.nform .wpcf7{max-width:520px;margin:0 auto;position:relative;z-index:2}
.newsletter .wpcf7-form,.newsletter .wpcf7-form>p,.newsletter .wpcf7-form .nform,
.pp-form .wpcf7-form,.pp-form .wpcf7-form>p,
.nform .wpcf7-form,.nform .wpcf7-form>p{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px;margin:0}
.newsletter .wpcf7-form>p,.pp-form .wpcf7-form>p,.nform .wpcf7-form>p{display:contents}
.newsletter .wpcf7 br,.pp-form .wpcf7 br,.nform .wpcf7 br{display:none}
.newsletter .wpcf7-form-control-wrap,.pp-form .wpcf7-form-control-wrap,.nform .wpcf7-form-control-wrap{flex:1 1 240px;display:block;min-width:0}
.newsletter .wpcf7 input[type=email],.newsletter .wpcf7 input[type=text],.nform .wpcf7 input[type=email]{width:100%;border:none;border-radius:var(--pill);padding:16px 24px;font-family:var(--sans);font-size:15px;background:#fff;color:var(--ink);box-shadow:none;outline:none}
.pp-form .wpcf7 input[type=email]{width:100%;border-radius:var(--pill);padding:15px 22px}
.newsletter .wpcf7 input[type=email]:focus,.nform .wpcf7 input[type=email]:focus{outline:3px solid var(--gold)}
.newsletter .wpcf7 .wpcf7-submit,.pp-form .wpcf7 .wpcf7-submit,.nform .wpcf7 .wpcf7-submit{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:var(--pill);background:var(--gold);color:var(--ink);font-family:var(--sans);font-weight:600;font-size:15px;line-height:1;padding:17px 30px;cursor:pointer;box-shadow:0 10px 24px -10px rgba(254,194,0,.6);transition:background .25s,transform .25s;margin:0;width:auto;height:auto}
.newsletter .wpcf7 .wpcf7-submit:hover,.pp-form .wpcf7 .wpcf7-submit:hover,.nform .wpcf7 .wpcf7-submit:hover{background:var(--gold-hover);transform:translateY(-1px)}
.newsletter .wpcf7 .wpcf7-spinner,.pp-form .wpcf7 .wpcf7-spinner,.nform .wpcf7 .wpcf7-spinner{position:absolute;right:-34px;top:50%;margin:-12px 0 0}
.newsletter .wpcf7 .wpcf7-not-valid-tip,.pp-form .wpcf7 .wpcf7-not-valid-tip,.nform .wpcf7 .wpcf7-not-valid-tip{font-size:13px;margin-top:6px;padding-left:18px;text-align:left}
.newsletter .wpcf7 .wpcf7-response-output,.pp-form .wpcf7 .wpcf7-response-output,.nform .wpcf7 .wpcf7-response-output{flex:1 1 100%;margin:14px 0 0;border-radius:14px;font-size:14px;text-align:center;color:#fff}
@media(max-width:560px){
  .newsletter .wpcf7 .wpcf7-submit,.pp-form .wpcf7 .wpcf7-submit,.nform .wpcf7 .wpcf7-submit{flex:1 1 100%}
  .newsletter .wpcf7 .wpcf7-spinner,.pp-form .wpcf7 .wpcf7-spinner,.nform .wpcf7 .wpcf7-spinner{display:none}
}
.pd-main [hidden]{display:none!important}
.pd-main section.gallery{margin-bottom:0}
@media(max-width:600px){.pg-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px}}

/* Contact Form 7 buttons: Parendigm pill buttons (the base form CSS made them grey squares). */
.pd-main .wpcf7 input.wpcf7-submit{-webkit-appearance:none;appearance:none;border:none;border-radius:var(--pill);background:var(--gold);color:var(--ink);font-family:var(--sans);font-weight:600;font-size:15px;line-height:1;padding:17px 30px;cursor:pointer;transition:background .25s,transform .25s;box-shadow:0 10px 24px -10px rgba(254,194,0,.6)}
.pd-main .wpcf7 input.wpcf7-submit:hover{background:var(--gold-hover);transform:translateY(-1px)}
.pd-main .story-form .wpcf7 input.wpcf7-submit,.pd-main .share .wpcf7 input.wpcf7-submit{background:var(--ink);color:#fff;box-shadow:none}
.pd-main .story-form .wpcf7 input.wpcf7-submit:hover,.pd-main .share .wpcf7 input.wpcf7-submit:hover{background:var(--charcoal)}
.pd-main .cp-form .wpcf7-submit,.pd-main .oc-form .wpcf7-submit,.pd-main .cu-form .wpcf7-submit{width:100%;justify-content:center}
.pd-main .wpcf7 .wpcf7-form-control-wrap{display:block}
.pd-main .wpcf7 .wpcf7-acceptance .wpcf7-list-item{margin:0}
.pd-main .wpcf7 select{width:100%;border:1.5px solid var(--border);border-radius:12px;padding:13px 14px;font-family:var(--sans);font-size:15px;background:#fff;color:var(--ink)}
.pd-main .wpcf7 form p:empty,.pd-main .wpcf7 form>br{display:none}
.pd-main .wpcf7 .wpcf7-acceptance input{margin-right:8px;vertical-align:middle}

/* ==========================================================================
   Contact Form 7: full Parendigm styling for every form (any form markup).
   Low specificity (:where) so the page designs (cu-, cp-, oc- forms) still win.
   ========================================================================== */
:where(.pd-main) .wpcf7{--f-bg:var(--cream);--f-line:var(--border);--f-text:var(--ink);--f-label:var(--ink);--f-ph:#9a958c;--f-focus:var(--gold);font-family:var(--sans)}
:where(.pd-main) .wpcf7 form{margin:0}
:where(.pd-main) .wpcf7 form>p,:where(.pd-main) .wpcf7 .wpcf7-form>div:not(.wpcf7-response-output):not(.nform){margin:0 0 18px}
:where(.pd-main) .wpcf7 label{display:block;font-size:14px;font-weight:600;line-height:1.4;color:var(--f-label);margin-bottom:0}
:where(.pd-main) .wpcf7 label br{display:none}
:where(.pd-main) .wpcf7 label .wpcf7-form-control-wrap{margin-top:8px}
:where(.pd-main) .wpcf7 .wpcf7-form-control-wrap{display:block;position:relative}
:where(.pd-main) .wpcf7 :is(input[type=text],input[type=email],input[type=tel],input[type=url],input[type=number],input[type=date],input[type=password],input[type=search],select,textarea){
  display:block;width:100%;max-width:100%;box-sizing:border-box;-webkit-appearance:none;appearance:none;
  background:var(--f-bg);color:var(--f-text);border:1.5px solid var(--f-line);border-radius:14px;
  padding:14px 16px;font-family:var(--sans);font-size:16px;line-height:1.4;box-shadow:none;outline:none;
  transition:border-color .2s,box-shadow .2s,background .2s}
:where(.pd-main) .wpcf7 textarea{min-height:130px;resize:vertical}
:where(.pd-main) .wpcf7 select{padding-right:44px;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23D99E00' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:16px}
:where(.pd-main) .wpcf7 ::placeholder{color:var(--f-ph);opacity:1}
:where(.pd-main) .wpcf7 :is(input,select,textarea):focus{border-color:var(--f-focus);background-color:#fff;box-shadow:0 0 0 3px rgba(254,194,0,.25)}
:where(.pd-main) .wpcf7 input[type=file]{display:block;width:100%;font-size:14px;color:var(--muted);padding:12px;border:1.5px dashed var(--f-line);border-radius:14px;background:var(--f-bg)}
:where(.pd-main) .wpcf7 input[type=file]::file-selector-button{border:0;border-radius:var(--pill);background:var(--ink);color:#fff;font-weight:600;padding:9px 16px;margin-right:12px;cursor:pointer}
/* checkboxes, radios, acceptance */
:where(.pd-main) .wpcf7 .wpcf7-checkbox,:where(.pd-main) .wpcf7 .wpcf7-radio,:where(.pd-main) .wpcf7 .wpcf7-acceptance{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:6px}
:where(.pd-main) .wpcf7 .wpcf7-list-item{margin:0;display:inline-flex}
:where(.pd-main) .wpcf7 .wpcf7-list-item label{display:inline-flex;align-items:flex-start;gap:10px;font-weight:500;cursor:pointer}
:where(.pd-main) .wpcf7 :is(input[type=checkbox],input[type=radio]){-webkit-appearance:none;appearance:none;flex:0 0 20px;width:20px;height:20px;margin:1px 0 0;border:1.5px solid var(--f-line);background:#fff;border-radius:6px;cursor:pointer;display:grid;place-items:center;transition:.2s}
:where(.pd-main) .wpcf7 input[type=radio]{border-radius:50%}
:where(.pd-main) .wpcf7 :is(input[type=checkbox],input[type=radio]):checked{background:var(--gold);border-color:var(--gold-deep)}
:where(.pd-main) .wpcf7 input[type=checkbox]:checked::after{content:"";width:5px;height:10px;border:solid var(--ink);border-width:0 2.4px 2.4px 0;transform:rotate(45deg) translate(-1px,-1px)}
:where(.pd-main) .wpcf7 input[type=radio]:checked::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--ink)}
:where(.pd-main) .wpcf7 :is(input[type=checkbox],input[type=radio]):focus-visible{box-shadow:0 0 0 3px rgba(254,194,0,.35)}
/* submit */
:where(.pd-main) .wpcf7 :is(input[type=submit],button[type=submit],.wpcf7-submit){display:inline-flex;align-items:center;justify-content:center;-webkit-appearance:none;appearance:none;border:none;border-radius:var(--pill);background:var(--gold);color:var(--ink);font-family:var(--sans);font-weight:600;font-size:16px;line-height:1;padding:17px 32px;cursor:pointer;box-shadow:0 10px 24px -10px rgba(254,194,0,.6);transition:background .25s,transform .25s,opacity .25s}
:where(.pd-main) .wpcf7 :is(input[type=submit],button[type=submit],.wpcf7-submit):hover{background:var(--gold-hover);transform:translateY(-1px)}
:where(.pd-main) .wpcf7 :is(input[type=submit],.wpcf7-submit):disabled{opacity:.55;cursor:not-allowed;transform:none}
:where(.pd-main) .wpcf7 .wpcf7-spinner{margin:0 0 0 12px;vertical-align:middle;background-color:var(--gold-deep)}
:where(.pd-main) .wpcf7 form.submitting .wpcf7-submit{opacity:.7}
/* validation and messages */
:where(.pd-main) .wpcf7 .wpcf7-not-valid{border-color:#b3261e!important;box-shadow:0 0 0 3px rgba(179,38,30,.12)!important}
:where(.pd-main) .wpcf7 .wpcf7-not-valid-tip{display:block;color:#b3261e;font-size:13px;font-weight:500;margin-top:6px}
:where(.pd-main) .wpcf7 form .wpcf7-response-output{margin:18px 0 0;padding:14px 18px;border:1.5px solid var(--gold);border-radius:14px;background:var(--gold-soft);color:var(--ink);font-size:14px;line-height:1.5}
:where(.pd-main) .wpcf7 form.sent .wpcf7-response-output{border-color:#4f8a3c;background:#eef6e9;color:#24451a}
:where(.pd-main) .wpcf7 form:is(.invalid,.unaccepted,.payment-required) .wpcf7-response-output{border-color:var(--gold-deep);background:var(--gold-soft);color:var(--ink)}
:where(.pd-main) .wpcf7 form:is(.failed,.aborted,.spam) .wpcf7-response-output{border-color:#b3261e;background:#fbecea;color:#7a1712}
:where(.pd-main) .wpcf7 .screen-reader-response{position:absolute;overflow:hidden;clip:rect(1px,1px,1px,1px);width:1px;height:1px;margin:-1px;padding:0;border:0}
/* forms on dark or gold sections */
:where(.pd-main) :is(.cp-dark,.oc-dark,.news,.closing,.pp-page) .wpcf7:not(:has(.cp-form,.oc-form,.cu-form)){--f-label:#fff}
:where(.pd-main) :is(.share,.story-form) .wpcf7{--f-bg:var(--cream);--f-line:rgba(17,17,17,.18)}
:where(.pd-main) :is(.share,.story-form) .wpcf7 :is(input[type=submit],.wpcf7-submit){background:var(--ink);color:#fff;box-shadow:none}
:where(.pd-main) :is(.share,.story-form) .wpcf7 :is(input[type=submit],.wpcf7-submit):hover{background:var(--charcoal)}
:where(.pd-main) :is(.share,.story-form) .wpcf7 :is(input[type=checkbox],input[type=radio]):checked{background:var(--ink);border-color:var(--ink)}
:where(.pd-main) :is(.share,.story-form) .wpcf7 input[type=checkbox]:checked::after{border-color:var(--gold)}
/* full width buttons in card forms and on phones */
:where(.pd-main) :is(.cu-form,.cp-form,.oc-form,.form-c,.partner-form,.parent-form) .wpcf7-submit{width:100%}
@media(max-width:560px){:where(.pd-main) .wpcf7 :is(input[type=submit],.wpcf7-submit){width:100%}}

/* ---------------- Mobile header + menu ---------------- */
.hamburger,.hamburger:hover,.hamburger:focus,.hamburger:active,
.mclose,.mclose:hover,.mclose:focus,.mclose:active{background:none!important;box-shadow:none!important;color:var(--ink)!important;border:none!important;padding:0}
.hamburger:focus-visible,.mclose:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:10px}
.mclose{width:44px;height:44px;display:flex;align-items:center;justify-content:center;font-family:var(--sans);font-size:38px;font-weight:300}
@media(max-width:980px){
  #hdr{padding:14px 0}
  #hdr .navbar{background:rgba(255,255,255,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:var(--shadow-sm);padding:8px 8px 8px 18px}
  #hdr .nav-logo img{height:46px!important;width:auto;max-width:180px;object-fit:contain}
  #hdr .nav-right{gap:4px}
  .pd-main section.hero{padding-top:128px}
}
.mobile-menu{padding:88px 28px 32px;overflow-y:auto}
.mobile-menu ul{display:flex;flex-direction:column;margin:0;padding:0;width:100%}
.mobile-menu li{margin:0;width:100%}
.mobile-menu li a{display:flex;align-items:center;justify-content:space-between;width:100%;font-family:var(--serif);font-weight:500;font-size:26px;line-height:1.2;color:var(--ink);padding:16px 0;border-bottom:1px solid var(--border)}
.mobile-menu li a::after{content:"";width:9px;height:9px;border-top:2px solid var(--gold-deep);border-right:2px solid var(--gold-deep);transform:rotate(45deg);margin-right:4px}
.mobile-menu li a:hover,.mobile-menu .current-menu-item>a{color:var(--gold-deep)}
.mobile-menu>.btn{margin-top:auto;width:100%;justify-content:center;font-family:var(--sans);font-size:16px;font-weight:600;padding:17px 24px}
body:has(.mobile-menu.open){overflow:hidden}
body:has(.mobile-menu.open) .pd-whatsapp{opacity:0;pointer-events:none}

/* ---------------- Contact Form 7: two fields per row ---------------- */
.pd-main .wpcf7-form.pd-cf7-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;row-gap:0;align-items:start}
.pd-main .wpcf7-form.pd-cf7-grid>*{grid-column:1/-1;min-width:0}
.pd-main .wpcf7-form.pd-cf7-grid>.pd-half{grid-column:auto}
.pd-main .wpcf7-form.pd-cf7-grid>fieldset.hidden-fields-container,.pd-main .wpcf7-form.pd-cf7-grid>.screen-reader-response{display:none}
@media(max-width:600px){.pd-main .wpcf7-form.pd-cf7-grid>.pd-half{grid-column:1/-1}}
