/*
Theme Name: Pathpragati Premium
Author: 9XCEL
Description: Custom corporate gifting, payments and technology theme for Pathpragati.
Version: 1.10.3
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: pathpragati-premium
*/
:root{--ink:#202321;--gold:#a58149;--paper:#f8f6f0;--muted:#686b65;--line:#deddd4}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 system-ui,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:5px}img{max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,serif;font-weight:400;line-height:1.08;letter-spacing:-.035em}h1{font-size:clamp(3.2rem,6.5vw,6rem)}h2{font-size:clamp(2.4rem,4vw,4rem)}h3{font-size:1.3rem;line-height:1.3}.wrap{width:min(1240px,90%);margin:auto}.top{background:var(--ink);color:#eee;font-size:12px;padding:8px 0;letter-spacing:.06em}.top .wrap{display:flex;justify-content:space-between}body > header{position:sticky;top:0;z-index:20;background:rgba(248,246,240,.97);border-bottom:1px solid var(--line)}.nav{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font:700 21px/1.2 Georgia,serif;letter-spacing:.04em}.brand small{display:block;font:9px/2 system-ui;letter-spacing:.16em}.custom-logo{max-height:66px;width:auto}.links{display:flex;align-items:center;gap:26px;font-size:14px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;background:var(--ink);color:#fff;padding:12px 24px;border:1px solid var(--ink);font-size:14px;transition:background .2s}.button:hover{background:#454a43}.button.gold{background:var(--gold);border-color:var(--gold)}.button.outline{background:transparent;color:var(--ink)}.menu-toggle{display:none;border:1px solid var(--line);background:transparent;padding:12px;color:var(--ink)}.hero{padding:90px 0 70px;display:grid;grid-template-columns:1.12fr 1fr;align-items:center;gap:60px}.eyebrow{text-transform:uppercase;font-size:11px;font-weight:600;letter-spacing:.2em;color:var(--gold);margin-bottom:24px}.hero p{max-width:540px;color:var(--muted);font-size:18px}.hero h1 em{color:var(--gold);font-weight:400}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0}.hero-art{min-height:490px;position:relative;background:#e7e4d9;border-radius:50% 50% 3px 3px;display:grid;place-items:center;overflow:hidden}.hero-art:before{content:'';position:absolute;width:360px;height:360px;border:1px solid #c0b89f;border-radius:50%}.hero-art img{width:100%;height:490px;object-fit:cover}.card-visual{width:77%;aspect-ratio:1.58;background:linear-gradient(130deg,#323c35,#17231b);color:#f1e6ca;border-radius:16px;padding:28px;transform:rotate(-10deg);box-shadow:15px 35px 40px #20232133;z-index:1;display:flex;flex-direction:column;justify-content:space-between}.card-visual strong{font:24px Georgia}.card-visual span{font-size:10px;letter-spacing:.2em}.visual-label{position:absolute;bottom:24px;left:30px;font-size:11px;color:#5b6258}.strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);padding:24px 0;gap:20px;color:var(--muted);font-size:13px}.strip strong{display:block;color:var(--ink);font-size:15px}section{padding:85px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:36px}.section-head h2{max-width:620px;margin-bottom:0}.section-head p{max-width:340px;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service{border:1px solid var(--line);padding:30px;min-height:270px;background:#fff9;display:flex;flex-direction:column}.service .num{color:var(--gold);font:italic 28px Georgia;margin-bottom:24px}.service p{color:var(--muted);font-size:14px}.service a{margin-top:auto;font-size:13px;font-weight:600}.service:hover{border-color:var(--gold)}.dark{background:#202b23;color:var(--paper)}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.dark p{color:#c0c8bd}.steps{counter-reset:steps}.step{border-top:1px solid #ffffff25;padding:22px 0}.step h3{margin-bottom:8px}.step p{margin-bottom:0;font-size:14px}.cta{background:#eee9dc}.cta .wrap{display:flex;justify-content:space-between;gap:40px;align-items:center}.cta h2{max-width:700px;margin:0}.content{max-width:860px;min-height:350px}.content p{color:var(--muted)}.page-title{padding:65px 0 30px}footer{padding:55px 0 20px;background:var(--ink);color:#eee}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:40px;font-size:14px}footer p,footer li{color:#b9bdb6}footer ul{list-style:none;padding:0}footer li{margin-bottom:9px}.copyright{border-top:1px solid #ffffff20;margin-top:40px;padding-top:20px;font-size:11px;color:#b9bdb6;display:flex;justify-content:space-between}.skip{position:absolute;top:-100px}.skip:focus{top:10px;background:#fff;z-index:100;padding:10px}.entry-content a{text-decoration:underline}.entry-content ul{padding-left:22px}@media(max-width:900px){.hero{gap:25px;padding-top:55px}.hero-art{min-height:390px}.hero-art img{height:390px}.links{gap:15px}.grid{grid-template-columns:repeat(2,1fr)}.split{gap:35px}}@media(max-width:700px){.top .wrap span:last-child{display:none}.nav{min-height:76px}.menu-toggle{display:block}.links{display:none;position:absolute;top:76px;left:0;right:0;padding:24px 5%;background:var(--paper);border-bottom:1px solid var(--line);align-items:stretch}.links.open{display:flex;flex-direction:column}.hero{grid-template-columns:1fr;padding:45px 0;gap:30px}.hero-art{min-height:330px}.hero-art img{height:330px}.hero h1{font-size:3.3rem}.hero p{font-size:16px}.strip{grid-template-columns:1fr;gap:16px}.grid,.split,.footer-grid{grid-template-columns:1fr}.section-head,.cta .wrap{display:block}.section-head p{margin-top:24px}section{padding:55px 0}.cta .button{margin-top:25px}.copyright{display:block}.content{width:90%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* WooCommerce storefront */
.commerce{padding-top:50px;padding-bottom:70px;min-height:55vh}.voucher-section{background:#eee9dc}.brand-links{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:30px}.brand-links a{background:var(--paper);border:1px solid var(--line);padding:12px 22px}.store-note{border:1px solid var(--line);background:#fff9;padding:20px;margin:20px 0;color:var(--muted)}.store-note a{color:var(--ink);text-decoration:underline}.woocommerce ul.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin:30px 0!important}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none!important}.woocommerce ul.products li.product{width:auto!important;float:none!important;margin:0!important;background:var(--paper);border:1px solid var(--line);padding:20px}.woocommerce ul.products li.product img{aspect-ratio:1.58;object-fit:contain;background:#fff;padding:16px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:18px}.woocommerce ul.products li.product .price{color:var(--ink);font-size:16px}.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{border-radius:0;background:var(--ink);color:#fff;line-height:1.4;padding:13px 20px;font-weight:500}.woocommerce a.button:hover,.woocommerce button.button:hover{background:#454a43;color:#fff}.woocommerce a.button.alt,.woocommerce button.button.alt{background:var(--gold)}.woocommerce div.product .product_title{font-size:clamp(2.2rem,4vw,4rem)}.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--gold)}.woocommerce input,.woocommerce select,.woocommerce textarea{border:1px solid var(--line);padding:12px;background:#fff;color:var(--ink);font:inherit;max-width:100%}.woocommerce .quantity .qty{width:80px}.woocommerce div.product div.images img{background:#fff;object-fit:contain}.woocommerce-message,.woocommerce-info,.woocommerce-error{background:#eee9dc;color:var(--ink)}.woocommerce nav.woocommerce-pagination ul{border:0}.woocommerce nav.woocommerce-pagination ul li{border:1px solid var(--line);margin:4px}.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{padding:12px}.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;padding:0}.woocommerce-account .woocommerce-MyAccount-navigation li{padding:12px;border-bottom:1px solid var(--line)}.woocommerce-account .woocommerce-MyAccount-navigation .is-active{color:var(--gold)}.woocommerce table.shop_table{border-radius:0}.woocommerce-tabs .panel{padding:20px 0!important}.woocommerce div.product .woocommerce-tabs ul.tabs li{border-radius:0;background:#eee9dc}.woocommerce div.product .woocommerce-tabs ul.tabs li:before,.woocommerce div.product .woocommerce-tabs ul.tabs li:after{display:none}.wc-block-components-button{border-radius:0}.woocommerce form .form-row label{font-weight:500}.woocommerce .related.products h2{font-size:2.5rem}@media(max-width:1100px){.links{gap:12px;font-size:12px}.nav{gap:15px}.links .button{padding:10px 14px}}@media(max-width:900px){.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.woocommerce ul.products{gap:12px}.woocommerce ul.products li.product{padding:12px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:16px}.woocommerce ul.products li.product img{padding:8px}.woocommerce ul.products li.product .button{padding:10px;font-size:12px}.commerce{padding-top:30px}.brand-links a{padding:10px 15px}.woocommerce div.product .product_title{font-size:2.4rem}}

.pp-default-logo{display:block;width:270px;height:auto}.brand{flex-shrink:0}@media(max-width:1100px){.pp-default-logo{width:220px}}@media(max-width:700px){.pp-default-logo{width:215px}}

.pp-footer-brand{display:inline-block;max-width:100%;margin-bottom:20px}.pp-footer-logo{display:block;width:280px;max-width:100%;height:auto}@media(max-width:700px){.pp-footer-logo{width:240px}}

@media(max-width:700px){.copyright{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.pp-policy-links{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px}.pp-policy-links a{display:inline-flex;align-items:center;min-height:44px}.pp-policy-links>span{display:none}}

/* Homepage refinement 1.2.0 */
body > header{background:var(--paper);isolation:isolate}.hero h1{white-space:pre-line;font-size:clamp(3rem,5.9vw,5.4rem)}.hero{min-height:660px}.hero-art{background:#e9e5da;border-radius:180px 180px 12px 12px}.pp-card-scene{position:relative;width:100%;height:490px;overflow:hidden}.pp-gift-card{position:absolute;width:78%;aspect-ratio:1.58;border-radius:16px;padding:26px;left:11%;top:23%}.pp-gift-card-back{background:#b3945f;transform:rotate(12deg) translate(8px,-28px);color:#342e22;display:flex;align-items:flex-end;font-size:9px;letter-spacing:.13em}.pp-gift-card-front{background:#202b23;color:#fff;transform:rotate(-9deg);box-shadow:0 22px 36px #20232126;display:flex;flex-direction:column;justify-content:space-between}.pp-gift-card-front img{width:62%;height:auto}.pp-gift-card-front strong{font:clamp(24px,3vw,40px)/1.06 Georgia,serif;font-weight:400;letter-spacing:-.02em}.pp-gift-card-front span{font-size:9px;letter-spacing:.14em;color:#d1bd96}.pp-gift-caption{position:absolute;bottom:38px;width:100%;text-align:center;font-size:12px;color:#5b6258}.pp-faq p{color:var(--muted)}.pp-faq details{border-bottom:1px solid var(--line);padding:20px 0}.pp-faq summary{cursor:pointer;font-weight:600;padding-right:15px}.pp-faq details p{margin:15px 0 0;font-size:14px}.hero .button{min-height:50px}.hero-art:before{width:80%;height:80%;top:10%;left:10%}.pp-faq details[open] summary{color:#806033}html{scroll-padding-top:110px}body.admin-bar > header{top:32px}@media(max-width:1100px){.nav{min-height:76px}.menu-toggle{display:block}.links{display:none;position:absolute;top:100%;left:0;right:0;padding:24px 5%;background:var(--paper);border-bottom:1px solid var(--line);align-items:stretch;font-size:15px}.links.open{display:flex;flex-direction:column}.links a{padding:8px 0}.links .button{padding:12px 24px}.hero{gap:32px}.pp-gift-card{padding:20px}}@media(max-width:782px){body.admin-bar > header{top:46px}}@media(max-width:700px){.hero{min-height:auto;padding:42px 0 45px}.hero h1{font-size:clamp(2.65rem,10.6vw,3.4rem);line-height:1.08}.hero-art,.pp-card-scene{height:350px;min-height:350px}.hero-art{border-radius:130px 130px 10px 10px}.pp-gift-card{width:75%;left:12.5%;top:24%;padding:20px}.pp-gift-card-front strong{font-size:30px}.pp-gift-caption{bottom:24px;font-size:11px}.hero .actions{display:grid;grid-template-columns:1fr;margin-bottom:0}.hero .button{width:100%}.pp-faq .split{gap:20px}.pp-gift-card-front span{font-size:8px}.hero .eyebrow{margin-bottom:18px}html{scroll-padding-top:95px}}@media(max-width:360px){.pp-gift-card{padding:16px}.pp-gift-card-front strong{font-size:25px}.pp-default-logo{width:190px}.nav{gap:8px}.menu-toggle{padding:10px}}@media(max-width:600px){body.admin-bar > header{top:0}}

/* Edge-to-edge hero with aligned content and viewport-aware desktop height. */
.pp-hero-band{width:100%;padding:0;background:linear-gradient(115deg,#f8f6f0 0%,#f4f0e6 60%,#eae4d6 100%)}
.pp-hero-band .hero{min-height:calc(100vh - 125px);min-height:calc(100svh - 125px);padding:55px 0}
body.admin-bar .pp-hero-band .hero{min-height:calc(100svh - 157px)}
@media(min-width:701px) and (max-width:1100px){.pp-hero-band .hero{min-height:calc(100svh - 111px)}body.admin-bar .pp-hero-band .hero{min-height:calc(100svh - 143px)}}
@media(min-width:701px) and (max-width:782px){body.admin-bar .pp-hero-band .hero{min-height:calc(100svh - 157px)}}
@media(max-width:700px){.pp-hero-band .hero,body.admin-bar .pp-hero-band .hero{min-height:0;padding:42px 0 45px}}

/* Balance headline against the gifting artwork. */
.pp-hero-band .hero h1{margin-bottom:24px}@media(min-width:1101px){.pp-hero-band .hero h1{font-size:clamp(3rem,3.6vw,4rem);line-height:1.1;letter-spacing:-.04em}}@media(min-width:701px) and (max-width:1100px){.pp-hero-band .hero h1{font-size:clamp(2.6rem,4.8vw,3.4rem)}}@media(max-width:700px){.pp-hero-band .hero h1{margin-bottom:24px}}

/* Voucher catalogue */
.voucher-section{background:#f0ece2}.pp-voucher-search{background:var(--paper);padding:24px;border:1px solid var(--line);margin:0 0 35px}.pp-voucher-search label{display:block;font-size:12px;font-weight:600;margin-bottom:10px}.pp-voucher-search>div{display:flex;gap:12px}.pp-voucher-search input[type=search]{flex:1;min-width:0;border:1px solid var(--line);background:#fff;padding:14px 16px;color:var(--ink);font:inherit}.pp-voucher-search input:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.pp-voucher-search button{cursor:pointer;flex-shrink:0}.pp-catalog-label{text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:600;margin:30px 0 16px}.pp-brand-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:38px}.pp-brand-card{background:var(--paper);border:1px solid var(--line);padding:20px;transition:border-color .2s}.pp-brand-card:hover{border-color:var(--gold)}.pp-brand-art{height:100px;display:grid;place-items:center;background:#fff;margin-bottom:16px}.pp-brand-art img{max-height:75px;max-width:80%;object-fit:contain;width:auto}.pp-brand-art>span{font:42px Georgia,serif;color:var(--gold)}.pp-brand-title{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:15px;font-weight:600;overflow-wrap:anywhere}.pp-brand-title>span{color:var(--gold);flex-shrink:0}.pp-catalog-empty{display:flex;justify-content:space-between;align-items:center;gap:35px;padding:36px;background:var(--paper);border:1px solid var(--line)}.pp-catalog-empty .eyebrow{margin-bottom:14px}.pp-catalog-empty h3{font:30px/1.2 Georgia,serif;margin-bottom:14px}.pp-catalog-empty p{max-width:680px;color:var(--muted);margin:0;font-size:15px}.pp-catalog-empty>a{font-size:14px;font-weight:600;white-space:nowrap;text-decoration:underline;text-underline-offset:5px}.pp-voucher-guidance{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;border-top:1px solid var(--line);padding-top:25px;margin-top:30px;color:var(--muted);font-size:13px}.pp-voucher-guidance strong{display:block;color:var(--ink);font-size:14px;margin-bottom:4px}.voucher-section .woocommerce ul.products li.product{background:var(--paper)}@media(max-width:900px){.pp-brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pp-catalog-empty{display:block}.pp-catalog-empty>a{display:inline-block;margin-top:24px}}@media(max-width:700px){.pp-voucher-search{padding:18px}.pp-voucher-search>div{flex-direction:column}.pp-brand-grid{gap:12px}.pp-brand-card{padding:14px}.pp-brand-art{height:85px}.pp-brand-title{font-size:14px}.pp-voucher-guidance{grid-template-columns:1fr;gap:18px}.pp-catalog-empty{padding:24px}.pp-catalog-empty h3{font-size:26px}.voucher-section .actions{display:grid;grid-template-columns:1fr}.pp-voucher-search .button{width:100%}.pp-voucher-search input[type=search]{width:100%}}

/* Product page refinement 1.3.1 */
.single-product .commerce { padding-bottom: 56px; }
.single-product.woocommerce div.product .product_title { font-size: clamp(2rem, 3.7vw, 3.25rem); line-height: 1.15; margin-bottom: 22px; }
.single-product.woocommerce div.product p.price { font-size: 22px; margin-bottom: 22px; }
.single-product .woocommerce-product-details__short-description { color: var(--muted); font-size: 15px; line-height: 1.8; }
.single-product.woocommerce div.product div.images img { border-radius: 14px; }
.single-product .product_meta { display: flex; flex-direction: column; gap: 8px; margin-top: 24px; padding-top: 18px; border-top: 1px solid var(--line); font-size: 13px; line-height: 1.6; color: var(--muted); }
.single-product .product_meta > span { display: block; margin: 0; }
.single-product .product_meta a { color: #806033; text-underline-offset: 3px; }
.single-product .product_meta a:hover { text-decoration: underline; }
.single-product .pp-product-enquiry { padding: 20px; margin: 24px 0; border-radius: 6px; }
.single-product .pp-product-enquiry p { margin: 0 0 14px; font-size: 14px; }
.single-product .pp-product-enquiry a.button { text-decoration: none; color: #fff; background: var(--ink); border-radius: 4px; }
.single-product .pp-product-enquiry a.button:hover { background: #806033; }
.single-product.woocommerce div.product form.cart .variations { margin-bottom: 12px; }
.single-product.woocommerce div.product form.cart .variations th { text-align: left; vertical-align: middle; font-size: 13px; }
.single-product.woocommerce div.product form.cart .variations select { min-height: 48px; border: 1px solid var(--line); border-radius: 4px; background: #fff; padding: 10px 14px; }
.single-product.woocommerce div.product form.cart .reset_variations { font-size: 12px; }
.single-product.woocommerce button.button.alt { background: var(--ink); border-radius: 4px; min-height: 48px; }
.single-product.woocommerce button.button.alt:hover { background: #806033; }
.single-product.woocommerce button.button.alt:disabled { background: var(--ink); opacity: .45; }
.single-product.pp-store-enquiry-only .woocommerce-variation-add-to-cart,
.single-product.pp-store-enquiry-only form.cart > .quantity,
.single-product.pp-store-enquiry-only form.cart > .single_add_to_cart_button { display: none !important; }
.single-product.woocommerce div.product .woocommerce-tabs { clear: both; padding-top: 20px; }
.single-product.woocommerce div.product .woocommerce-tabs ul.tabs { padding-left: 0; }
.single-product.woocommerce div.product .woocommerce-tabs ul.tabs li { margin: 0 4px 0 0; border-color: var(--line); border-radius: 4px 4px 0 0; }
.single-product.woocommerce div.product .woocommerce-tabs ul.tabs li a { font-size: 13px; padding: 12px 14px; }
.single-product.woocommerce div.product .woocommerce-tabs .panel { font-size: 15px; line-height: 1.85; }
.single-product.woocommerce div.product .woocommerce-tabs .panel > h2 { font-size: clamp(26px, 3vw, 34px); line-height: 1.25; margin-bottom: 22px; }
.single-product .woocommerce-tabs .panel p { margin-bottom: 18px; }
@media(max-width:700px) {
    .single-product.woocommerce div.product .product_title { font-size: 2rem; margin-bottom: 18px; }
    .single-product .pp-product-enquiry a.button { width: 100%; }
    .single-product.woocommerce div.product form.cart .variations th,
    .single-product.woocommerce div.product form.cart .variations td { display: block; width: 100%; padding: 0; }
    .single-product.woocommerce div.product form.cart .variations th { margin-bottom: 8px; }
    .single-product.woocommerce div.product form.cart .variations select { width: 100%; max-width: 100%; }
    .single-product.woocommerce div.product .woocommerce-tabs ul.tabs { display: flex; flex-wrap: wrap; gap: 4px; }
    .single-product.woocommerce div.product .woocommerce-tabs ul.tabs li { margin: 0; }
    .single-product.woocommerce div.product .woocommerce-tabs ul.tabs li a { font-size: 12px; padding: 10px; }
}

/* Product flow and tab spacing 1.3.2 */
.single-product.woocommerce div.product form.cart { margin-bottom: 18px; }
.single-product .pp-product-enquiry { margin-top: 12px; }
.single-product.woocommerce div.product .woocommerce-tabs .panel { padding-top: 12px !important; }
.single-product.woocommerce div.product .woocommerce-tabs ul.tabs { margin-bottom: 16px; }
.single-product.woocommerce div.product .woocommerce-tabs .panel > h2 { margin-top: 0; margin-bottom: 18px; }

/* Brand voucher artwork 1.3.3 */
.pp-brand-grid .pp-brand-card { padding: 0; overflow: hidden; border-radius: 8px; }
.pp-brand-grid .pp-brand-art { width: 100%; height: auto; aspect-ratio: 1.58; margin: 0; background: var(--paper); }
.pp-brand-grid .pp-brand-art img { display: block; width: 100%; height: 100%; max-width: none; max-height: none; object-fit: contain; }
.pp-brand-grid .pp-brand-title { padding: 16px 18px; margin: 0; }
@media(max-width:700px){
 .pp-brand-grid .pp-brand-title { padding: 12px; }
}

/* Shop and category refinement 1.3.4 */
.woocommerce .commerce .woocommerce-products-header { padding: 12px 0 24px; margin: 0 0 24px; border-bottom: 1px solid var(--line); }
.woocommerce .commerce .woocommerce-products-header__title { font-size: clamp(32px, 4vw, 48px); line-height: 1.15; margin: 0 0 14px; }
.woocommerce .commerce .woocommerce-products-header .term-description { max-width: 720px; color: var(--muted); font-size: 15px; }
.woocommerce .commerce .woocommerce-products-header .term-description p { margin: 0; }
.woocommerce .commerce .woocommerce-result-count { font-size: 13px; color: var(--muted); margin: 12px 0 18px; }
.woocommerce .commerce .woocommerce-ordering { margin: 0 0 18px; }
.woocommerce .commerce .woocommerce-ordering select { min-height: 44px; font-size: 13px; border-radius: 4px; }
.woocommerce ul.products li.product { padding: 0 !important; border-radius: 8px; overflow: hidden; display: flex; flex-direction: column; }
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link { display: block; }
.woocommerce ul.products li.product a img { width: 100%; aspect-ratio: 1.58; object-fit: contain; padding: 0 !important; background: var(--paper); margin: 0 0 16px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { padding: 0 18px !important; margin: 0 0 10px; font: 500 18px/1.4 system-ui, sans-serif; letter-spacing: 0; }
.woocommerce ul.products li.product .price { padding: 0 18px; margin: 0 0 16px; font-size: 16px; }
.woocommerce ul.products li.product > .button { margin: auto 18px 18px; align-self: flex-start; border-radius: 4px; }
@media(max-width:700px){
 .woocommerce .commerce .woocommerce-products-header { padding-top: 8px; padding-bottom: 20px; margin-bottom: 20px; }
 .woocommerce .commerce .woocommerce-products-header__title { font-size: 32px; }
 .woocommerce .commerce .woocommerce-ordering { float: none; width: 100%; }
 .woocommerce .commerce .woocommerce-ordering select { width: 100%; }
 .woocommerce ul.products li.product .woocommerce-loop-product__title { padding: 0 12px !important; font-size: 15px; }
 .woocommerce ul.products li.product .price { padding: 0 12px; font-size: 14px; }
 .woocommerce ul.products li.product > .button { margin-left: 12px; margin-right: 12px; margin-bottom: 12px; }
}

/* Category headers must remain in normal document flow. */
.woocommerce .commerce .woocommerce-products-header {
 position: static;
 top: auto;
 z-index: auto;
 isolation: auto;
 background: transparent;
}
.woocommerce .commerce .woocommerce-breadcrumb { margin-bottom: 20px; }

/* Static voucher product artwork 1.3.7 */
.single-product .woocommerce-product-gallery__image,
.single-product .woocommerce-product-gallery__image img { cursor: default; }
.single-product .woocommerce-product-gallery__trigger { display: none !important; }

/* Compact breadcrumb-to-heading spacing on voucher archives. */
body.woocommerce.archive .commerce .woocommerce-breadcrumb {
 margin: 0 0 12px !important;
 padding: 0;
}
body.woocommerce.archive .commerce header.woocommerce-products-header {
 position: static !important;
 min-height: 0;
 height: auto;
 padding: 0 0 20px !important;
 margin: 0 0 20px !important;
}
body.woocommerce.archive .commerce .woocommerce-products-header__title {
 margin: 0 0 12px !important;
 padding: 0;
 font-size: clamp(32px, 4vw, 48px);
 line-height: 1.15;
}

/* About Us 1.4.0 */
.pp-about section{padding:72px 0}
.pp-about .pp-about-hero{padding:48px 0 64px;background:linear-gradient(115deg,var(--paper),#eee8da)}
.pp-about-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:64px;align-items:center}
.pp-about-breadcrumb{font-size:13px;color:var(--muted);margin-bottom:32px}
.pp-about-breadcrumb a:hover{text-decoration:underline}
.pp-about h1{font-size:clamp(36px,4.2vw,58px);line-height:1.12;margin-bottom:24px}
.pp-about .eyebrow{margin-bottom:18px}
.pp-about-lead{font-size:17px;line-height:1.8;color:var(--muted);max-width:620px;margin-bottom:28px}
.pp-about-art{position:relative;min-height:380px;display:grid;place-items:center;overflow:hidden;border-radius:160px 160px 12px 12px;background:#e5dfd0}
.pp-about-orbit{position:absolute;width:310px;height:310px;border:1px solid #b6a888;border-radius:50%}
.pp-about-card{position:relative;width:80%;aspect-ratio:1.58;padding:26px;background:#202b23;border-radius:14px;color:var(--paper);transform:rotate(-8deg);box-shadow:12px 22px 32px #20232124;display:flex;flex-direction:column;justify-content:space-between}
.pp-about-card img{width:70%;height:auto}
.pp-about-card span{font:28px/1.2 Georgia,serif}
.pp-about-card small{font-size:8px;letter-spacing:.12em;color:#d1bd96}
.pp-about-art-label{position:absolute;bottom:24px;font-size:9px;letter-spacing:.12em;color:#626153}
.pp-about-two{display:grid;grid-template-columns:1fr 1fr;gap:80px}
.pp-about h2{font-size:clamp(30px,3.3vw,44px);line-height:1.16;margin-bottom:24px}
.pp-about-story p:not(.eyebrow){color:var(--muted);margin-bottom:20px}
.pp-about-services{background:#eee9dc}
.pp-about-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.pp-about-service{padding:28px;background:var(--paper);border:1px solid var(--line);display:flex;flex-direction:column}
.pp-about-num{font:italic 26px Georgia,serif;color:var(--gold);margin-bottom:22px}
.pp-about-service h3{margin-bottom:14px}
.pp-about-service p{font-size:14px;color:var(--muted);margin-bottom:24px}
.pp-about-service a{font-size:13px;font-weight:600;margin-top:auto;text-decoration:underline;text-underline-offset:5px}
.pp-about-steps .step{display:flex;gap:22px}
.pp-about-steps .step>span{color:#cfb587;font-size:13px;padding-top:3px}
.pp-about-steps .step:first-child{padding-top:0;border-top:0}
.pp-about-cta p:not(.eyebrow){color:var(--muted);margin-bottom:0}
.pp-about-editor .entry-content{max-width:860px}
@media(max-width:1000px){.pp-about-intro,.pp-about-two{gap:36px}.pp-about-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pp-about-card{padding:20px}.pp-about-card span{font-size:24px}}
@media(max-width:700px){.pp-about section{padding:48px 0}.pp-about .pp-about-hero{padding:28px 0 44px}.pp-about-intro,.pp-about-two{grid-template-columns:1fr;gap:28px}.pp-about-breadcrumb{margin-bottom:24px}.pp-about h1{font-size:clamp(34px,9vw,44px)}.pp-about-lead{font-size:15px}.pp-about-art{min-height:310px}.pp-about-orbit{width:260px;height:260px}.pp-about-card{max-width:360px}.pp-about-service-grid{grid-template-columns:1fr}.pp-about-service{padding:24px}.pp-about .section-head{margin-bottom:26px}.pp-about .section-head p{margin-top:0}.pp-about-cta .button{width:100%;margin-top:24px}}

/* About Us refinement 1.4.1 */
@media(min-width:1001px){
 .pp-about-service-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
 .pp-about-service-grid>.pp-about-service{grid-column:span 2}
 .pp-about-service-grid>.pp-about-service:nth-child(4):nth-last-child(2){grid-column:2 / span 2}
 .pp-about-service-grid>.pp-about-service:nth-child(5):last-child{grid-column:4 / span 2}
}
@media(max-width:700px){
 .pp-about section{padding:36px 0}
 .pp-about .pp-about-hero{padding:24px 0 36px}
 .pp-about-two{gap:20px}
 .pp-about-story p:not(.eyebrow){margin-bottom:16px}
 .pp-about-story p:last-child{margin-bottom:0}
 .pp-about-service-grid{gap:16px}
 .pp-about-service{padding:22px}
 .pp-about-num{margin-bottom:16px}
 .pp-about-service p{margin-bottom:20px}
}

/* Company location beneath the About Us introduction. */
.pp-about-story .pp-about-location{font-size:13px;border-top:1px solid var(--line);padding-top:16px;margin-top:24px}

/* One-time card entrance, retaining the original final composition. */
.pp-card-entrance .pp-gift-card-back{animation:pp-back-card-enter .85s cubic-bezier(.22,.61,.36,1) both}
.pp-card-entrance .pp-gift-card-front{animation:pp-front-card-enter 1s cubic-bezier(.22,.61,.36,1) .12s both}
@keyframes pp-back-card-enter{from{opacity:0;transform:translateY(22px) rotate(5deg)}to{opacity:1;transform:rotate(12deg) translate(8px,-28px)}}
@keyframes pp-front-card-enter{from{opacity:0;transform:translateY(30px) rotate(-3deg)}to{opacity:1;transform:rotate(-9deg)}}
@media(prefers-reduced-motion:reduce){.pp-card-entrance .pp-gift-card{animation:none}}

/* Software Development */
.pp-software-art{position:relative;min-height:420px;display:flex;align-items:center;padding:20px 36px 42px 0}
.pp-software-browser{width:100%;border:1px solid #d5cebc;border-radius:12px;overflow:hidden;background:#fffaf0;box-shadow:0 20px 45px #20232112;transform:rotate(-3deg)}
.pp-browser-bar{display:flex;align-items:center;gap:6px;padding:15px;background:#e8e2d4;border-bottom:1px solid #d5cebc}
.pp-browser-bar i{width:6px;height:6px;background:#a58149;border-radius:50%}
.pp-browser-bar>span{margin-left:8px;font-size:8px;letter-spacing:.1em}
.pp-browser-content{padding:30px}
.pp-browser-content .eyebrow{display:block;font-size:8px}
.pp-browser-content strong{display:block;font:48px/1.08 Georgia,serif;letter-spacing:-.03em;color:#202b23;margin-bottom:20px}
.pp-screen-line{height:5px;background:#dcd5c6;width:65%;margin-bottom:7px;border-radius:3px}
.pp-screen-line.short{width:45%}
.pp-screen-blocks{display:flex;gap:10px;margin-top:22px}
.pp-screen-blocks span{height:36px;width:22%;background:#eee8dc;border:1px solid #ded5c1;border-radius:4px}
.pp-software-mobile{position:absolute;right:0;bottom:16px;width:140px;min-height:245px;border:5px solid #202b23;border-radius:22px;background:#202b23;color:var(--paper);padding:18px 12px;box-shadow:0 15px 25px #20232124;transform:rotate(6deg)}
.pp-software-mobile>span{display:block;width:32px;height:4px;border-radius:5px;background:#7c847b;margin:0 auto 24px}
.pp-software-mobile strong{font:22px/1.15 Georgia,serif;display:block;margin-bottom:25px}
.pp-software-mobile>div{height:26px;border:1px solid #ffffff25;border-radius:4px;margin-top:10px;background:#ffffff08}
.pp-about-service .pp-service-intro{color:var(--ink);font-size:15px;margin-bottom:12px}
.pp-software .pp-faq details:first-child{padding-top:0}
@media(max-width:700px){.pp-software-art{min-height:365px;padding-right:30px}.pp-browser-content{padding:25px}.pp-browser-content strong{font-size:42px}.pp-software-mobile{width:120px;min-height:215px}.pp-software-mobile strong{font-size:19px}.pp-software .actions{display:grid;grid-template-columns:1fr}}

/* One-time Software Development artwork entrance. */
.pp-software-art .pp-software-browser{animation:pp-browser-enter .9s cubic-bezier(.22,.61,.36,1) both}
.pp-software-art .pp-software-mobile{animation:pp-mobile-enter .95s cubic-bezier(.22,.61,.36,1) .18s both}
@keyframes pp-browser-enter{from{opacity:0;transform:translateY(24px) rotate(-1deg)}to{opacity:1;transform:translateY(0) rotate(-3deg)}}
@keyframes pp-mobile-enter{from{opacity:0;transform:translate(16px,28px) rotate(2deg)}to{opacity:1;transform:translate(0,0) rotate(6deg)}}
@media(prefers-reduced-motion:reduce){.pp-software-art .pp-software-browser,.pp-software-art .pp-software-mobile{animation:none}}

/* Decorative reverse side of the rear gifting card. */
.pp-gift-card-back .pp-card-stripe{position:absolute;left:0;right:0;top:9%;height:12%;background:#343b32;opacity:.88}
.pp-gift-card-back .pp-card-reverse-lines{position:absolute;left:8%;top:30%;width:38%;display:grid;gap:5px}
.pp-card-reverse-lines i{display:block;height:2px;background:#f6eed7;opacity:.45}
.pp-card-reverse-lines i:nth-child(2){width:80%}
.pp-card-reverse-lines i:nth-child(3){width:60%}
.pp-gift-card-back>span{position:relative;margin-top:auto}

/* Taxation Services artwork */
.pp-tax-art{position:relative;min-height:420px;padding:36px 18px 12px 40px}
.pp-tax-folder{position:absolute;inset:45px 35px 40px 0;border-radius:12px;background:#b3945f;transform:rotate(-7deg);padding:28px;color:#282e25;display:flex;flex-direction:column;justify-content:space-between}
.pp-tax-folder>span{font-size:10px;letter-spacing:.16em}
.pp-tax-folder>strong{font:24px/1.2 Georgia,serif}
.pp-tax-document{position:relative;border:1px solid #ded5c1;border-radius:9px;padding:30px;background:#fffaf0;box-shadow:0 18px 35px #2023211c;transform:rotate(4deg);min-height:350px;animation:pp-tax-enter 1s cubic-bezier(.22,.61,.36,1) both}
.pp-tax-document .eyebrow{font-size:9px;display:block}
.pp-tax-document>strong{display:block;font:38px/1.12 Georgia,serif;margin-bottom:25px;color:#202b23}
.pp-tax-rule{height:1px;background:var(--line);margin-bottom:22px}
.pp-tax-check{display:flex;gap:12px;align-items:center;color:#806033;font-size:19px;margin-bottom:13px}
.pp-tax-check>span{font-size:13px;color:var(--muted)}
.pp-tax-document small{display:block;font-size:8px;letter-spacing:.12em;margin-top:24px;color:#806033}
@keyframes pp-tax-enter{from{opacity:0;transform:translateY(24px) rotate(1deg)}to{opacity:1;transform:rotate(4deg)}}
@media(max-width:700px){.pp-tax-art{min-height:360px;padding:25px 12px 10px 28px}.pp-tax-document{padding:24px;min-height:310px}.pp-tax-document>strong{font-size:32px}.pp-tax-folder{inset:30px 25px 28px 0;padding:20px}.pp-tax .actions{display:grid;grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.pp-tax-document{animation:none}}

/* Bill Payments */
.pp-bill-art .pp-tax-folder{background:#202b23;color:var(--paper)}
.pp-bill-art .pp-tax-document>strong{font-size:32px}
.pp-bill-row{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:11px 0;font-size:14px;color:var(--muted)}
.pp-bill-row i{font-style:normal;font-size:11px;color:#806033}
@media(max-width:700px){.pp-bills .actions{display:grid;grid-template-columns:1fr}.pp-bill-art .pp-tax-document>strong{font-size:28px}}

/* Prepaid cards: approved concept artwork, one-time entrance */
.pp-prepaid-hero-art{margin:0;text-align:center;min-width:0}
.pp-prepaid-hero-art img{display:block;width:100%;height:auto;animation:pp-prepaid-reveal .95s ease-out both}
.pp-prepaid-hero-art figcaption{font-size:12px;line-height:1.5;color:var(--muted);margin-top:8px}
.pp-prepaid-designs{background:#fff}
.pp-prepaid-designs img{display:block;width:100%;height:auto;border-radius:16px}
@keyframes pp-prepaid-reveal{from{opacity:0;transform:translateY(22px) rotate(-2deg)}to{opacity:1;transform:translateY(0) rotate(0)}}
@media(prefers-reduced-motion:reduce){.pp-prepaid-hero-art img{animation:none}}
@media(max-width:700px){.pp-prepaid-hero-art{max-width:440px;margin:0 auto}.pp-prepaid-hero-art figcaption{font-size:11px}.pp-prepaid-designs img{border-radius:8px}}

/* Account area: native WooCommerce forms and endpoints */
.pp-account{padding:36px 0 64px;min-height:65vh}
.pp-account-heading{margin-bottom:32px}
.pp-account-heading .pp-about-breadcrumb{margin-bottom:22px}
.pp-account-heading .eyebrow{margin-bottom:12px}
.pp-account-heading h1{font-size:clamp(36px,4.3vw,56px);margin-bottom:14px}
.pp-account-heading>p:last-child{color:var(--muted);margin:0;max-width:650px}
.pp-account-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:28px;align-items:start}
.pp-account-intro{background:var(--ink);color:var(--paper);padding:36px;border-radius:12px}
.pp-account-intro .eyebrow{color:#d2b380;margin-bottom:18px}
.pp-account-intro h2{font-size:36px;margin-bottom:18px}
.pp-account-intro p,.pp-account-intro li span{color:#c6cbc4;font-size:14px}
.pp-account-intro ul{list-style:none;padding:0;margin:26px 0}
.pp-account-intro li{padding:16px 0;border-top:1px solid #ffffff26}
.pp-account-intro li strong,.pp-account-intro li span{display:block}
.pp-account-intro li strong{font-size:14px;margin-bottom:3px}
.pp-account-help{border-top:1px solid #ffffff26;padding-top:22px;font-size:13px}
.pp-account-help strong,.pp-account-help a{display:block}
.pp-account-help a{color:#e3c596;margin-top:8px}
.pp-account-panel{padding:32px;background:#fff;border:1px solid var(--line);border-radius:12px;min-width:0}
.pp-account .woocommerce h2{font:400 30px/1.2 Georgia,serif;letter-spacing:-.025em;margin:0 0 22px}
.pp-account .woocommerce form.login,.pp-account .woocommerce form.register{border:0;padding:0;margin:0;text-align:left}
.pp-account .woocommerce form .form-row{padding:0;margin:0 0 18px}
.pp-account .woocommerce form .form-row label{font-size:14px;margin-bottom:7px;line-height:1.6}
.pp-account .woocommerce input.input-text,.pp-account .woocommerce select,.pp-account .woocommerce textarea{width:100%;min-height:48px;border:1px solid #c9c9c1;border-radius:5px;padding:11px 13px;font-size:16px;background:#fff}
.pp-account .woocommerce input[type=checkbox]{width:auto;min-height:0;accent-color:var(--ink)}
.pp-account .woocommerce input:focus-visible,.pp-account .woocommerce select:focus-visible,.pp-account .woocommerce textarea:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.pp-account .woocommerce button.button,.pp-account .woocommerce a.button{border-radius:5px;min-height:46px}
.pp-account .woocommerce .woocommerce-form-login__rememberme{display:inline-flex;align-items:center;gap:7px;margin:12px 16px 12px 0}
.pp-account .woocommerce .lost_password{font-size:13px;margin:18px 0 0}
.pp-account .woocommerce p a:not(.button){text-decoration:underline;text-underline-offset:3px}
.pp-account .woocommerce .u-columns{display:grid;grid-template-columns:1fr;gap:32px;margin:0}
.pp-account .woocommerce .u-columns>.u-column1,.pp-account .woocommerce .u-columns>.u-column2{float:none;width:100%;padding:0}
.pp-account .woocommerce .u-column2{border-top:1px solid var(--line);padding-top:28px!important}
.pp-account .woocommerce-privacy-policy-text{font-size:13px;color:var(--muted)}
.pp-account-member .pp-account-layout{display:block}
.pp-account-member .pp-account-panel>.woocommerce{display:grid;grid-template-columns:230px minmax(0,1fr);gap:32px}
.pp-account .woocommerce-MyAccount-navigation,.pp-account .woocommerce-MyAccount-content{float:none;width:100%;min-width:0}
.pp-account .woocommerce-MyAccount-navigation ul{margin:0;list-style:none;padding:0;border:1px solid var(--line);border-radius:7px;overflow:hidden}
.pp-account .woocommerce-MyAccount-navigation li{padding:0;border-bottom:1px solid var(--line)}
.pp-account .woocommerce-MyAccount-navigation li:last-child{border-bottom:0}
.pp-account .woocommerce-MyAccount-navigation a{display:block;padding:13px 16px;font-size:14px}
.pp-account .woocommerce-MyAccount-navigation .is-active a{background:var(--ink);color:#fff}
.pp-account .woocommerce-MyAccount-navigation a:hover{background:#eee9dc;color:var(--ink)}
.pp-account .woocommerce-MyAccount-content p{font-size:15px}
.pp-account .woocommerce-MyAccount-content fieldset{border:1px solid var(--line);padding:20px;margin:20px 0}
.pp-account .woocommerce table.shop_table{font-size:14px;overflow-wrap:anywhere}
.pp-account .woocommerce-message,.pp-account .woocommerce-info,.pp-account .woocommerce-error{font-size:14px;margin-bottom:24px}
.pp-account-member-help{display:flex;justify-content:space-between;gap:20px;margin-top:24px;font-size:14px;color:var(--muted)}
.pp-account-member-help a{color:var(--ink);text-decoration:underline;text-underline-offset:4px}
@media(max-width:850px){.pp-account-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:18px}.pp-account-intro,.pp-account-panel{padding:24px}.pp-account-member .pp-account-panel>.woocommerce{grid-template-columns:190px minmax(0,1fr);gap:22px}}
@media(max-width:700px){.pp-account{padding:24px 0 44px}.pp-account-heading{margin-bottom:24px}.pp-account-heading h1{font-size:38px}.pp-account-layout{grid-template-columns:1fr}.pp-account-panel{grid-row:1;padding:22px}.pp-account-intro{padding:24px}.pp-account-intro h2{font-size:30px}.pp-account-member .pp-account-panel>.woocommerce{grid-template-columns:1fr;gap:24px}.pp-account .woocommerce-MyAccount-navigation ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.pp-account .woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--line)}.pp-account .woocommerce-MyAccount-navigation a{font-size:13px;padding:11px}.pp-account-member-help{display:block}.pp-account-member-help a{display:inline-block;margin-top:8px}.pp-account .woocommerce .col2-set .col-1,.pp-account .woocommerce .col2-set .col-2{float:none;width:100%}}

.pp-account .woocommerce .u-columns:before,.pp-account .woocommerce .u-columns:after,.pp-account-member .pp-account-panel>.woocommerce:before,.pp-account-member .pp-account-panel>.woocommerce:after{display:none}
.pp-account-member .pp-account-panel>.woocommerce>.woocommerce-notices-wrapper,.pp-account-member .pp-account-panel>.woocommerce>.woocommerce-message,.pp-account-member .pp-account-panel>.woocommerce>.woocommerce-error,.pp-account-member .pp-account-panel>.woocommerce>.woocommerce-info{grid-column:1 / -1}
.pp-account-member .pp-account-panel>.woocommerce>.woocommerce-notices-wrapper:empty{display:none}

/* Contact page */
.pp-contact .pp-contact-hero{padding:32px 0 38px;border-bottom:1px solid var(--line)}
.pp-contact-hero h1{font-size:clamp(40px,5vw,66px);margin-bottom:20px}
.pp-contact-hero .eyebrow{margin-bottom:14px}
.pp-contact-hero .pp-about-lead{max-width:740px;margin-bottom:0}
.pp-contact .pp-contact-main{padding:48px 0 64px}
.pp-contact-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px;align-items:start}
.pp-contact-details h2,.pp-contact-form-panel h2{font-size:34px;margin-bottom:18px}
.pp-contact-method{padding:23px 0;border-top:1px solid var(--line)}
.pp-contact-method>span{display:block;color:var(--gold);font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px}
.pp-contact-method>a,.pp-contact-method>strong{display:block;font-size:19px;font-weight:500;overflow-wrap:anywhere}
.pp-contact-method>a:hover{text-decoration:underline;text-underline-offset:4px}
.pp-contact-method p{color:var(--muted);font-size:14px;margin:8px 0 0}
.pp-contact-note{padding:24px;background:#eee9dc;border-radius:8px;margin-top:8px}
.pp-contact-note h3{font-size:17px;margin-bottom:10px}
.pp-contact-note p{font-size:14px;color:var(--muted);margin:0}
.pp-contact-form-panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:34px;scroll-margin-top:120px}
.pp-contact-form-panel>.eyebrow{margin-bottom:12px}
.pp-contact-form-panel>p:not(.eyebrow){font-size:13px;color:var(--muted);margin-bottom:24px}
.pp-contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}
.pp-contact-form-panel label{display:block;font-size:14px;font-weight:500;margin-bottom:7px}
.pp-contact-form-panel input,.pp-contact-form-panel select,.pp-contact-form-panel textarea{display:block;width:100%;min-height:48px;border:1px solid #c9c9c1;border-radius:5px;background:#fff;font:16px/1.5 system-ui,sans-serif;color:var(--ink);padding:11px 13px;margin-bottom:20px}
.pp-contact-form-panel textarea{resize:vertical}
.pp-contact-form-panel input:focus-visible,.pp-contact-form-panel select:focus-visible,.pp-contact-form-panel textarea:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.pp-contact-form-note{font-size:12px;line-height:1.7;color:var(--muted);margin-bottom:22px}
.pp-contact-form-panel button{cursor:pointer;border-radius:5px}
.pp-contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.pp-contact-status{padding:16px;border:1px solid var(--line);background:var(--paper);font-size:14px;margin-bottom:24px;border-left:4px solid var(--gold)}
.pp-contact-status.is-error{border-left-color:#9f3636}
.pp-contact .pp-contact-faq{background:#eee9dc}
@media(max-width:900px){.pp-contact-grid{gap:28px}.pp-contact-form-panel{padding:26px}.pp-contact-fields{grid-template-columns:1fr}}
@media(max-width:700px){.pp-contact .pp-contact-hero{padding:24px 0 30px}.pp-contact-hero h1{font-size:40px}.pp-contact .pp-contact-main{padding:32px 0 44px}.pp-contact-grid{grid-template-columns:1fr;gap:32px}.pp-contact-form-panel{padding:22px}.pp-contact-form-panel button{width:100%}.pp-contact-details h2,.pp-contact-form-panel h2{font-size:30px}}

/* Full-card service links: one native link per card. */
.pp-service-link{color:var(--ink);text-decoration:none;cursor:pointer;transition:border-color .2s,background-color .2s}
.pp-service-link .pp-service-action{margin-top:auto;font-size:13px;font-weight:600}
.pp-service-link:hover{background:#fff;border-color:var(--gold)}
.pp-service-link:hover .pp-service-action{text-decoration:underline;text-underline-offset:4px}
.pp-service-link:focus-visible{outline:3px solid var(--gold);outline-offset:4px;background:#fff}
@media(prefers-reduced-motion:reduce){.pp-service-link{transition:none}}

/* Navigation disclosures: native buttons and ordinary page links. */
.pp-nav-group{position:relative}
.pp-nav-trigger{display:flex;align-items:center;gap:7px;border:0;background:transparent;color:var(--ink);font:inherit;padding:12px 0;cursor:pointer;white-space:nowrap}
.pp-nav-trigger>span{font-size:16px;line-height:1;transition:transform .18s}
.pp-nav-trigger[aria-expanded=true]>span{transform:rotate(180deg)}
.pp-nav-submenu{position:absolute;left:-18px;top:100%;min-width:235px;padding:9px;background:var(--paper);border:1px solid var(--line);border-radius:6px;box-shadow:0 14px 30px #20232115;z-index:30}
.pp-nav-submenu[hidden]{display:none}
.links .pp-nav-submenu>a{display:block;padding:11px 13px;font-size:14px;line-height:1.45;border-radius:3px;white-space:nowrap}
.links .pp-nav-submenu>a:hover,.links .pp-nav-submenu>a:focus-visible{background:#eee9dc;color:var(--ink)}
.pp-nav-trigger:hover{color:#806033}
@media(max-width:1100px){.links{max-height:calc(100dvh - 130px);overflow-y:auto}.pp-nav-trigger{width:100%;justify-content:space-between;text-align:left;padding:8px 0}.pp-nav-submenu{position:static;min-width:0;box-shadow:none;margin:8px 0 4px;padding:5px 8px;border-radius:4px;background:#eee9dc}.links .pp-nav-submenu>a{padding:12px;font-size:14px;white-space:normal}}
@media(prefers-reduced-motion:reduce){.pp-nav-trigger>span{transition:none}}

/* Aligned vector chevrons instead of font-dependent arrow glyphs. */
.pp-nav-trigger>.pp-nav-chevron{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex:0 0 16px;font-size:0;line-height:0;transform-origin:center}
.pp-nav-chevron svg{display:block;width:16px;height:16px}
.pp-nav-trigger{min-height:44px}
