/*
Theme Name: Pornflix
Author: Projeto Pornflix
Description: Tema clássico local, independente e responsivo.
Version: 0.1.0
Requires PHP: 8.1
Text Domain: pornflix
*/
:root{color-scheme:dark;--bg:#101111;--panel:#191b1b;--line:#303333;--muted:#a3aaa7;--text:#f3f5f0;--lime:#d1f56a;--radius:16px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:15px;line-height:1.6}a{color:inherit;text-decoration:none}a,button,input,select{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--lime);outline-offset:5px}button,input,textarea,select{font:inherit}button,.button{cursor:pointer}a:hover{color:var(--lime)}.screen-reader-text,.skip-link{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}.skip-link:focus{clip:auto;width:auto;height:auto;top:10px;left:12px;padding:10px;background:var(--lime);color:#151811;z-index:9999}.environment{min-height:30px;background:#20251b;display:flex;justify-content:center;align-items:center;gap:8px;font-size:10px;letter-spacing:1.5px;font-weight:700;color:#d2e4b9;border-bottom:1px solid #303a24}.environment-detail{font-weight:400;color:#b5c0aa;letter-spacing:.4px;margin-left:12px}.status-dot{width:5px;height:5px;display:inline-block;border-radius:50%;background:var(--lime);box-shadow:0 0 10px #d1f54844}.site-header{max-width:1440px;margin:auto;padding:26px 5%;display:flex;align-items:center;gap:48px;min-height:99px}.brand{font-size:29px;font-weight:750;letter-spacing:-1.6px;display:inline-flex;align-items:center;line-height:1}.brand-icon{width:33px;height:33px;border:1px solid #d1f56a88;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-size:28px;color:var(--lime);margin-right:9px;position:relative}.brand-icon span{font-size:17px;margin-left:1px}.brand-period{color:var(--lime)}nav{display:flex;gap:28px;font-size:13px;color:#b8bfbb}nav a[aria-current]{color:var(--text)}nav a[aria-current]:after{content:"";display:block;width:14px;height:2px;background:var(--lime);margin:4px auto -6px}.header-search{margin-left:auto;display:flex;align-items:center;background:#1b1e1d;border:1px solid #303531;border-radius:9px;padding:7px 13px;gap:10px}.header-search span{font-size:24px;color:#b6beb8;line-height:1}.header-search input{background:transparent;border:0;color:var(--text);width:155px;padding:4px;font-size:12px}.account-link{font-size:12px;white-space:nowrap;display:flex;gap:8px;align-items:center}.account-link span{font-size:19px;color:#c8ceca}main{max-width:1440px;margin:auto}.hero{margin:9px 5% 0;min-height:548px;border:1px solid #31372e;border-radius:20px;position:relative;overflow:hidden;background:#1b221c}.hero-content{position:relative;z-index:2;width:57%;padding:54px 48px 93px;background:linear-gradient(90deg,#1b221c 68%,transparent)}.pill{font-size:9px;letter-spacing:1.8px;border:1px solid #66734b6b;border-radius:30px;display:inline-flex;align-items:center;gap:8px;padding:6px 11px;color:#d3ddc8}.hero h1{font-size:clamp(45px,5.4vw,76px);line-height:1.08;letter-spacing:-3.8px;font-weight:500;margin:26px 0 22px}.hero h1 em{font-family:Georgia,serif;font-weight:400;color:var(--lime)}.hero-content>p{max-width:365px;color:#b8c0b8;font-size:14px;line-height:1.8}.hero-actions{display:flex;gap:10px;margin-top:28px}.button,button.button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,#respond input#submit{display:inline-flex;justify-content:center;align-items:center;gap:24px;padding:13px 20px;border-radius:8px;border:1px solid #576443;background:#d1f56a;color:#1a2111;font-size:12px;line-height:1.5;font-weight:650;transition:background .2s,transform .2s}.button.primary:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{background:#e0ff90;color:#161b11;transform:translateY(-1px)}.button.subtle{color:var(--text);background:#ffffff06;border-color:#525c4f}.button.subtle:hover{background:#ffffff13}.hero-content .hero-note{font-size:10px;color:#9ca996;margin:17px 0 0}.hero-art{position:absolute;inset:0 0 0 39%;background:radial-gradient(ellipse at 70% 30%,#8a9d5c22,transparent 65%),linear-gradient(130deg,#1b221c 10%,#303c25 72%,#141c17)}.orb{position:absolute;width:360px;height:360px;right:35px;top:50px;border-radius:50%;transform:rotate(-26deg);background:repeating-linear-gradient(7deg,transparent 0 3px,#d9ef9230 4px,#101c1466 6px),radial-gradient(circle at 29% 25%,#c8d68c,#61733e 35%,#243725 67%,#0e1e15 85%);box-shadow:inset -25px -26px 42px #071a10,15px 30px 80px #050d0677}.orbit{position:absolute;border:1px solid #9dac6866;border-radius:50%;width:500px;height:168px;right:-25px;top:166px;transform:rotate(-35deg);z-index:1}.orbit-b{width:480px;height:340px;right:-32px;top:64px;transform:rotate(40deg);border-color:#b9cb7044}.art-caption{position:absolute;right:37px;bottom:95px;font-size:9px;letter-spacing:2px;color:#bfcda5}.art-caption span{display:block;font-size:11px;color:#d9e1c8;margin-top:5px}.hero-bottom{position:absolute;bottom:0;left:0;right:0;border-top:1px solid #a0b37626;display:flex;justify-content:space-between;padding:17px 47px;background:#151d17b3;color:#bdc7b6;font-size:9px;letter-spacing:1.4px}.catalog-section{padding:53px 5% 10px}.section-heading{display:flex;justify-content:space-between;align-items:center}.eyebrow{font-size:9px;letter-spacing:1.7px;font-weight:650;color:#a7b29d}.section-heading h2{font-size:30px;letter-spacing:-1px;font-weight:500;margin:5px 0 0}.accent{color:var(--lime)}.text-link{font-size:12px;color:#ccd2ca}.text-link span{padding-left:12px;color:var(--lime)}.category-row{display:flex;gap:9px;flex-wrap:wrap;margin:25px 0 25px}.chip{border:1px solid #353b35;border-radius:30px;padding:6px 17px;font-size:11px;color:#b4bcb3}.chip:hover,.chip.active{border-color:#c9e59d;color:#e5f3d5;background:#29301f}.video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:29px 23px}.video-card{display:block;min-width:0}.cover{aspect-ratio:16/10;border:1px solid #ffffff12;border-radius:13px;position:relative;overflow:hidden;isolation:isolate}.cover:before,.cover:after{content:"";position:absolute;transition:transform .4s;z-index:-1}.cover:before{width:65%;height:130%;left:25%;top:-15%;border-radius:50%;transform:rotate(35deg);box-shadow:inset 14px 18px 35px #ffffff30,24px 18px 45px #0009}.cover:after{inset:0;background:linear-gradient(0deg,#0005,transparent 50%)}.art-0{background:radial-gradient(ellipse at 50% 30%,#b4ac8580,transparent),#343e35}.art-0:before{background:repeating-linear-gradient(90deg,#778575,#a9b8a0 2px,#38483a 4px);width:45%;left:33%;border-radius:45%}.art-1{background:linear-gradient(130deg,#3c2532,#976c6655,#23252d)}.art-1:before{background:linear-gradient(70deg,#583948,#d2a192,#433746);transform:rotate(-45deg);width:40%;height:190%;top:-50%;left:35%;border-radius:45%}.art-2{background:radial-gradient(ellipse at 70% 25%,#a38e5f55,transparent),#232f30}.art-2:before{background:repeating-radial-gradient(ellipse at 15% 45%,#8f937e,#354a4988 3px,#a6ab8f 4px,#344547 7px);width:90%;height:190%;top:0%;left:34%;transform:rotate(34deg)}.art-3{background:linear-gradient(155deg,#172e3c,#596e7c)}.art-3:before{background:linear-gradient(65deg,#354450,#c1c7c2,#5b777b);transform:rotate(65deg);width:50%;left:20%;top:-35%;height:180%}.art-4{background:linear-gradient(120deg,#39291b,#a6804f66,#211f1a)}.art-4:before{background:repeating-linear-gradient(15deg,#b8a06c,#635634 5px,#d2b37d 7px,#51462c 9px);width:70%;height:140%;left:39%;transform:rotate(-45deg)}.art-5{background:radial-gradient(ellipse at 20% 20%,#7f8d5177,transparent),#243321}.art-5:before{background:linear-gradient(35deg,#25351e,#b2c880,#5c743e);width:47%;left:35%;border-radius:48%;transform:rotate(-25deg)}.cover img{position:absolute;width:100%;height:100%;object-fit:cover;z-index:-1}.video-card:hover .cover:before{transform:rotate(20deg) scale(1.08)}.card-tag{position:absolute;top:13px;left:13px;font-size:8px;letter-spacing:1.2px;background:#111b15a6;border:1px solid #fff2;border-radius:4px;padding:3px 7px;color:#e3e8dc}.duration{position:absolute;bottom:11px;right:12px;background:#101610b3;border-radius:4px;padding:2px 6px;font-size:10px}.play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:45px;height:45px;display:grid;place-items:center;font-size:28px;border:1px solid #fff6;border-radius:50%;background:#ffffff14;opacity:0;transition:opacity .2s}.video-card:hover .play,.video-card:focus-visible .play{opacity:1}.card-info{padding:13px 1px}.card-info .eyebrow{font-size:8px;letter-spacing:1.4px;color:#b9c4a6}.card-info h3{font-size:16px;font-weight:550;margin:4px 0;letter-spacing:-.3px}.card-info p{font-size:10px;color:#89958c;margin:0}.membership-banner{margin:43px 5% 58px;padding:31px 34px;border:1px solid #35412d;border-radius:14px;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(120deg,#222c1d,#1b211a)}.membership-banner h2{font-weight:500;font-size:25px;letter-spacing:-.8px;margin:7px 0}.membership-banner p{font-size:12px;color:#adb8a4;margin:0}.site-footer{max-width:1440px;margin:auto;padding:38px 5% 35px;display:flex;justify-content:space-between;gap:35px;border-top:1px solid #2d332d}.site-footer .brand{font-size:25px}.site-footer p{font-size:11px;color:#8d998d;line-height:1.8}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:9px 30px;align-content:start;font-size:11px;color:#aeb8ac}.footer-note{text-align:right}.page-section{padding:45px 5% 75px;min-height:60vh}.page-section h1{font-size:clamp(30px,4vw,50px);font-weight:500;line-height:1.2;letter-spacing:-1.8px;margin:17px 0 24px}.lead{font-size:15px;color:#aab6a7;max-width:650px}.prose{line-height:1.8}.prose p,.prose li{color:#bcc5b9}.prose h2{font-weight:500;letter-spacing:-.6px}.prose a:not(.button){text-decoration:underline;text-underline-offset:4px}.video-stage{min-height:440px;border:1px solid #3c4935;border-radius:16px;display:grid;place-items:center;margin:25px 0}.video-stage video{display:block;width:100%;max-height:620px;border-radius:15px}.access-panel{max-width:490px;text-align:center;padding:40px 24px}.access-panel .eyebrow{display:block}.access-panel h2{font-weight:500;font-size:30px;letter-spacing:-1px;margin:10px 0}.access-panel p{color:#bdc9b8;font-size:13px;margin-bottom:25px}.lock-symbol{display:block;font-size:42px;color:var(--lime);margin-bottom:15px}.plan-disclaimer{max-width:750px;margin:25px auto;color:#96a48e;font-size:12px}.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,input[type=text],input[type=password],input[type=email],input[type=tel],input[type=number],select,textarea{background:#20251e;border:1px solid #4b5744;border-radius:7px;color:#f3f5f0;padding:11px;max-width:100%}.woocommerce form.checkout_coupon,.woocommerce form.login,.woocommerce form.register{border:1px solid #3b4535;border-radius:12px;padding:25px}.woocommerce table.shop_table{border-color:#3b4535;border-radius:10px}.woocommerce table.shop_table td{border-color:#3b4535}.woocommerce-info,.woocommerce-message,.woocommerce-error{background:#252d20;color:#e6eddc;border-color:var(--lime);border-radius:7px}.woocommerce-info:before,.woocommerce-message:before{color:var(--lime)}.woocommerce-checkout #payment{background:#232b1e;border-radius:12px}.woocommerce-checkout #payment div.payment_box{background:#35402c;color:#e1e9d9}.woocommerce-checkout #payment div.payment_box:before{border-bottom-color:#35402c}.woocommerce-account .woocommerce-MyAccount-navigation{padding:20px;border:1px solid #36432c;border-radius:10px}.woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0}.woocommerce-MyAccount-navigation a{display:block;padding:6px}.woocommerce-account .woocommerce-MyAccount-content{padding:0 20px}.woocommerce form .form-row label{font-size:13px}.woocommerce #respond input#submit.alt,.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt{background:var(--lime);color:#1b2115}.woocommerce .quantity .qty{width:5em}.pf-history article{border-bottom:1px solid #3b4535;padding:15px 0}.woocommerce .col2-set,.woocommerce-page .col2-set{display:flex;gap:28px}.woocommerce .col2-set .col-1,.woocommerce .col2-set .col-2{float:none;width:50%}.woocommerce-checkout .col2-set{display:block}.woocommerce-checkout .col2-set .col-1,.woocommerce-checkout .col2-set .col-2{width:100%}.woocommerce-breadcrumb{color:#adb7a7!important}.woocommerce .select2-container--default .select2-selection--single{background:#20251e;border:1px solid #4b5744;height:44px}.select2-container--default .select2-selection--single .select2-selection__rendered{color:#f3f5f0;line-height:42px}.select2-dropdown,.select2-search__field{background:#20251e!important;color:#fff!important}.woocommerce-privacy-policy-text{font-size:12px}.woocommerce table.shop_table th{font-weight:550}
@media(min-width:1500px){.hero-content{padding-top:65px}.hero-art .orb{right:85px}}@media(max-width:1050px){.site-header{gap:26px}.header-search input{width:110px}.hero-content{padding-left:30px;width:62%}.orb{right:-70px}.hero-bottom{padding:17px 29px;font-size:8px}.footer-note{display:none}.hero-actions .button{gap:10px;padding:12px 15px}.hero h1{letter-spacing:-2.8px}}@media(max-width:760px){.environment{font-size:8px;min-height:28px}.environment-detail{font-size:8px;margin-left:2px;letter-spacing:0}.site-header{padding:20px 5%;gap:16px;flex-wrap:wrap;min-height:100px}.brand{font-size:25px}.brand-icon{width:29px;height:29px;font-size:23px}nav{order:3;width:45%;gap:21px;font-size:12px}.account-link{margin-left:auto}.header-search{order:4;width:48%;margin-left:auto;padding:4px 8px}.header-search input{width:100%;min-width:0;font-size:11px}.hero{min-height:550px;margin-top:4px}.hero-content{padding:33px 24px 180px;width:100%;background:linear-gradient(90deg,#19221ced,#19221c96)}.hero h1{font-size:52px;letter-spacing:-3px;margin-top:23px}.hero-content>p{font-size:12px;max-width:280px}.hero-actions{flex-wrap:wrap}.hero-actions .button{font-size:11px}.hero-art{left:10%;opacity:.65}.orb{width:290px;height:290px;top:200px;right:-45px}.orbit{top:300px;right:-100px}.orbit-b{top:240px;right:-130px}.art-caption{display:none}.hero-bottom{padding:13px 22px;gap:15px;font-size:7px}.hero-bottom span:last-child{display:none}.catalog-section{padding-top:35px}.section-heading h2{font-size:25px}.section-heading .text-link{font-size:10px}.eyebrow{font-size:8px}.category-row{gap:7px;margin:20px 0}.chip{padding:5px 12px;font-size:10px}.video-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 12px}.cover{border-radius:9px;aspect-ratio:4/3}.card-tag{top:8px;left:8px;font-size:6px;padding:2px 4px;letter-spacing:.6px}.duration{bottom:7px;right:7px;font-size:8px}.card-info{padding:9px 0}.card-info h3{font-size:13px;line-height:1.4}.card-info p{font-size:8px}.card-info .eyebrow{font-size:7px}.membership-banner{margin-top:25px;padding:23px;display:block}.membership-banner h2{font-size:23px;line-height:1.3}.membership-banner p{font-size:11px}.membership-banner .button{margin-top:20px}.site-footer{flex-direction:column;gap:15px}.footer-links{font-size:10px;gap:8px 15px}.page-section{padding-top:25px}.page-section h1{letter-spacing:-1px}.video-stage{min-height:340px}.access-panel h2{font-size:25px}.access-panel p{font-size:12px}.woocommerce .col2-set,.woocommerce-page .col2-set{display:block}.woocommerce .col2-set .col-1,.woocommerce .col2-set .col-2{width:100%}.woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content{float:none;width:100%;padding:15px}.woocommerce-account .woocommerce-MyAccount-content{margin-top:20px}.woocommerce table.shop_table{font-size:12px}.hero-note{max-width:230px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.hero-bottom{z-index:3}
.pf-catalog-heading { margin: 0 0 1rem; }
.pf-order-summary {
    border: 1px solid var(--line);
    border-radius: 10px;
    padding: .8rem 1rem;
    margin-bottom: .65rem;
}
.pf-watchlist-form { margin: 1rem 0; }
.pf-watchlist-form button.button.subtle { color: var(--text); background: transparent; }

body { font-size: 18px; line-height: 1.55; }
.site-header { gap: clamp(16px, 3vw, 42px); }
.site-header nav, .account-link, .header-search input, .text-link, .chip,
.footer-links, .site-footer p, .woocommerce form .form-row label,
.woocommerce-privacy-policy-text { font-size: 1rem; }
.button, button.button, .woocommerce a.button, .woocommerce button.button,
.woocommerce input.button, #respond input#submit, .hero-actions .button {
    min-height: 44px;
    gap: .55rem;
    font-size: 1rem;
}
.hero { min-height: clamp(320px, 34vw, 480px); display: flex; align-items: center; }
.hero-content { padding: clamp(28px, 5vw, 64px); }
.hero h1 { margin: 0; font-size: clamp(34px, 4.6vw, 60px); letter-spacing: -.04em; }
.page-section h1 { font-size: clamp(26px, 3.3vw, 42px); letter-spacing: -.035em; }
main h2 { font-size: clamp(22px, 2.6vw, 30px); }
main h3 { font-size: 1.0625rem; }
.section-heading { flex-wrap: wrap; gap: .5rem 1rem; }
.section-heading h2, .pf-catalog-heading {
    font-size: clamp(22px, 2.7vw, 32px);
    line-height: 1.15;
}
.section-heading .text-link { font-size: 1rem; }
.category-row { flex-wrap: wrap; }
.chip { min-height: 40px; display: inline-flex; align-items: center; }
.card-info h3 { font-size: clamp(16px, 1.65vw, 20px); line-height: 1.25; }
.card-info p, .duration { font-size: .9rem; color: #c7cec5; }
.access-panel h2 { font-size: clamp(23px, 3vw, 32px); margin: 0 0 1rem; }
.price { font-size: 42px; font-weight: 500; letter-spacing: -2px; }
.price .woocommerce-Price-currencySymbol { font-size: 21px; margin-right: 6px; }
.woocommerce table.shop_table { font-size: 1rem; }
.pf-video-duration { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem .75rem; margin-top: -.65rem; color: var(--muted); }
.pf-category-tag {
    display: inline-flex;
    max-width: 100%;
    padding: .15rem .55rem;
    border: 1px solid var(--line);
    border-radius: 999px;
    color: #c7cec5;
    font-size: .875rem;
    line-height: 1.4;
    overflow-wrap: anywhere;
}
.card-info .pf-category-tag { margin-top: .3rem; }
.pf-video-duration .pf-category-tag:hover { color: var(--text); border-color: var(--muted); }
.footer-links { width: auto; }
.pf-catalog-filters {
    display: flex;
    flex-wrap: wrap;
    align-items: end;
    gap: .75rem 1rem;
    margin-bottom: 1.5rem;
}
.pf-catalog-filters label { display: grid; gap: .25rem; }
.pf-catalog-filters label:first-child { flex: 1 1 14rem; min-width: 0; }
.pf-catalog-filters input, .pf-catalog-filters select {
    max-width: 100%;
    min-height: 44px;
    padding: .35rem .6rem;
    background: var(--panel);
    color: var(--text);
    border: 1px solid var(--line);
    border-radius: 8px;
}
.site-header nav + .account-link { margin-inline-start: auto; }
.pf-video-breadcrumb { display: flex; flex-wrap: wrap; gap: .6rem; width: auto; font-size: 1rem; }
.pf-video-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .25rem 1.1rem; }
.pf-video-actions .pf-watchlist-form { margin: 0; }
.pf-video-action {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    min-height: 44px;
    padding: 0 .2rem;
    border: 0;
    background: transparent;
    color: var(--muted);
    font-size: .9375rem;
}
.pf-video-action:hover, .pf-video-action:focus-visible { color: var(--text); text-decoration: underline; }
.pf-video-action[value="remove"] span { color: var(--lime); }
@media (max-width: 760px) {
    body { font-size: 17px; }
    .site-header nav { width: auto; flex-wrap: wrap; }
    .header-search { width: 100%; }
    .hero-content { width: 100%; }
    .hero h1 { letter-spacing: -1.5px; }
    .hero-actions { gap: .65rem; }
    .site-footer .footer-links { grid-template-columns: 1fr; }
    .woocommerce table.shop_table { overflow-wrap: anywhere; }
}
@media (max-width: 1100px) {
    .site-header { flex-wrap: wrap; }
    .site-header nav { flex-wrap: wrap; }
}
.pf-bunny-player{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:15px;background:#101111}.video-stage:has(.pf-bunny-player){min-height:0}

:root {
    --pf-content-width: 81rem;
    --pf-page-gutter: clamp(1rem, 3vw, 4rem);
}
.site-header, #main, .site-footer {
    width: min(var(--pf-content-width), calc(100% - 2 * var(--pf-page-gutter)));
    max-width: none;
    margin-inline: auto;
    padding-inline: 0;
}
#main > .page-section, #main > .catalog-section { padding-inline: 0; }
#main > .hero { margin-inline: 0; }
.site-header .header-search { flex: 0 1 clamp(15rem, 29vw, 26rem); min-width: 0; }
.site-header .header-search input { flex: 1; width: 0; min-width: 0; }
.pf-video-suggestions:empty { display: none; }

.plans { padding-block: clamp(2rem, 4vw, 3.5rem) clamp(3rem, 6vw, 5rem); }
.plans h1 { margin: 0 0 1.5rem; }
.plan-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(1rem, 2vw, 1.5rem);
}
.plan-card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: .55rem;
    padding: clamp(1.25rem, 3vw, 2rem);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: var(--panel);
}
.plan-card.featured {
    border-color: #71854f;
    background: linear-gradient(135deg, #252e1f, #191e18);
}
.plan-card h2 {
    margin: 0;
    font-size: clamp(1.2rem, 2vw, 1.45rem);
    line-height: 1.25;
}
.plan-card .price {
    font-size: clamp(1.9rem, 3vw, 2.5rem);
    font-weight: 650;
    line-height: 1.2;
    letter-spacing: -.035em;
}
.plan-card .woocommerce-Price-currencySymbol { font-size: .55em; }
.plan-card > p { margin: 0 0 .8rem; color: var(--muted); font-size: 1rem; }
.plan-card .button { margin-top: auto; text-align: center; }
.pf-faq { margin-top: clamp(2rem, 5vw, 3.5rem); }
.pf-faq h2 { margin: 0 0 1rem; font-size: clamp(1.2rem, 2vw, 1.45rem); }
.pf-faq-list { border: 1px solid var(--line); border-radius: var(--radius); }
.pf-faq details + details { border-top: 1px solid var(--line); }
.pf-faq summary {
    padding: .85rem clamp(1rem, 2vw, 1.5rem);
    cursor: pointer;
    font-size: 1rem;
    font-weight: 600;
}
.pf-faq summary:hover, .pf-faq summary::marker { color: var(--lime); }
.pf-faq summary:focus-visible { outline: 2px solid var(--lime); outline-offset: -4px; border-radius: 8px; }
.pf-faq details p { margin: 0; padding: 0 clamp(1rem, 2vw, 1.5rem) 1rem; color: var(--muted); }
.pf-faq a { color: var(--text); text-decoration: underline; }

.woocommerce-account .woocommerce:has(> .woocommerce-MyAccount-navigation) {
    display: grid;
    grid-template-columns: clamp(11rem, 19vw, 14rem) minmax(0, 1fr);
    align-items: start;
    gap: clamp(1rem, 3vw, 2rem);
    font-size: 1rem;
    line-height: 1.5;
}
.woocommerce-account .woocommerce:has(> .woocommerce-MyAccount-navigation)::before,
.woocommerce-account .woocommerce:has(> .woocommerce-MyAccount-navigation)::after { display: none; }
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce .woocommerce-MyAccount-content {
    float: none;
    width: auto;
    min-width: 0;
    margin: 0;
    padding: 0;
}
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation {
    display: block;
    order: 0;
    padding: .5rem;
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: var(--panel);
    font-size: inherit;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul { display: grid; gap: .25rem; }
.woocommerce-account .woocommerce-MyAccount-navigation a {
    display: flex;
    align-items: center;
    min-height: 44px;
    padding: .45rem .7rem;
    border-radius: 8px;
    text-decoration: none;
    overflow-wrap: anywhere;
}
.woocommerce-account .woocommerce-MyAccount-navigation a[aria-current] {
    background: #d1f56a19;
    color: var(--lime);
    font-weight: 600;
}
.woocommerce-account .woocommerce-MyAccount-navigation a[aria-current]::after { content: none; }
.woocommerce-MyAccount-content:has(> .pf-library) {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}
.woocommerce-MyAccount-content:has(> .pf-library) > :not(.pf-library) { grid-column: 1 / -1; }
.woocommerce-MyAccount-content > .woocommerce-notices-wrapper:empty { display: none; }
.pf-account-overview, .pf-library,
.woocommerce-MyAccount-content form.edit-account,
.woocommerce-MyAccount-content :is(.pf-order-summary, .woocommerce-info, .woocommerce-message, .woocommerce-error) {
    padding: clamp(1rem, 2.5vw, 1.5rem);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: var(--panel);
    overflow-wrap: anywhere;
}
.woocommerce-MyAccount-content :is(h2, legend) {
    margin: 0 0 .75rem;
    font-size: clamp(1.2rem, 2vw, 1.45rem);
    font-weight: 600;
    line-height: 1.25;
    letter-spacing: normal;
}
.pf-account-overview p, .pf-library p { margin: .35rem 0 0; color: var(--muted); }
.woocommerce-MyAccount-content > p { margin: 0 0 1rem; color: var(--muted); }
.woocommerce-MyAccount-content :is(.woocommerce-info, .woocommerce-message, .woocommerce-error) {
    margin: 0 0 1rem;
    padding-inline-start: 2.75rem;
    color: var(--text);
}
.woocommerce-MyAccount-content :is(.woocommerce-info, .woocommerce-message)::before {
    color: var(--lime);
}
.woocommerce-MyAccount-content :is(.woocommerce-info, .woocommerce-message) .button {
    float: none;
    margin: .4rem .45rem .4rem 0;
}
.woocommerce .woocommerce-MyAccount-content table.shop_table {
    margin: 0 0 1rem;
    border-color: var(--line);
    border-radius: var(--radius);
    background: var(--panel);
    font-size: 1rem;
    line-height: inherit;
    overflow-wrap: anywhere;
}
.woocommerce .woocommerce-MyAccount-content table.shop_table :is(th, td) {
    padding: .7rem .8rem;
    border-color: var(--line);
}
.woocommerce .woocommerce-MyAccount-content table.shop_table thead th {
    color: var(--muted);
    font-size: .875rem;
    font-weight: 600;
}
.woocommerce .woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-actions .button {
    margin: .15rem .35rem .15rem 0;
    padding: .35rem .7rem;
    background: transparent;
    color: var(--text);
    border-color: var(--line);
    font-size: .875rem;
    white-space: normal;
}
.woocommerce .woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-actions .button:hover {
    color: var(--lime);
    border-color: var(--lime);
}
.woocommerce-MyAccount-content address { color: var(--muted); font-style: normal; }
.woocommerce .woocommerce-MyAccount-content form .form-row {
    margin: 0 0 1rem;
    padding: 0;
}
.woocommerce .woocommerce-MyAccount-content form .form-row label {
    margin-bottom: .3rem;
    color: var(--text);
    font-weight: 500;
    line-height: 1.5;
}
.woocommerce .woocommerce-MyAccount-content form .form-row :is(.input-text, select) {
    min-height: 44px;
    min-width: 0;
    border-color: #4b504b;
    background: var(--bg);
}
.woocommerce .woocommerce-MyAccount-content form .input-text::placeholder { color: var(--muted); opacity: 1; }
.woocommerce .woocommerce-MyAccount-content .select2-selection--single {
    height: 44px;
    border-color: #4b504b;
    background: var(--bg);
}
.woocommerce .woocommerce-MyAccount-content .select2-selection--single .select2-selection__rendered {
    color: var(--text);
    line-height: 42px;
}
.woocommerce .woocommerce-MyAccount-content .select2-selection--single .select2-selection__placeholder { color: var(--muted); }
.woocommerce .woocommerce-MyAccount-content .select2-selection--single .select2-selection__arrow { height: 42px; }
.woocommerce .woocommerce-MyAccount-content form .woocommerce-invalid :is(.input-text, select, .select2-selection) {
    border-color: #d77772;
}
.woocommerce .woocommerce-MyAccount-content form .form-row .description,
.woocommerce-MyAccount-content #account_display_name_description {
    display: block;
    margin-top: .3rem;
    color: var(--muted);
    font-size: .875rem;
}
.woocommerce .woocommerce-MyAccount-content .edit-account fieldset {
    min-inline-size: 0;
    margin: .5rem 0 0;
    padding: .8rem 0 0;
    border: 0;
    border-top: 1px solid var(--line);
}
.woocommerce-MyAccount-content .edit-account legend { padding-inline-end: .75rem; }
.woocommerce-MyAccount-content .edit-account > p:has([name="save_account_details"]) { margin: 0; }
.pf-account-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .5rem 1rem;
    margin-top: 1rem;
}
.pf-access-history {
    margin-top: 1rem;
    padding-top: .8rem;
    border-top: 1px solid var(--line);
}
.pf-access-history summary { cursor: pointer; font-weight: 600; }
.pf-access-history summary:focus-visible { outline: 2px solid var(--lime); outline-offset: 4px; }
.pf-access-history .pf-history article { border-color: var(--line); padding: .65rem 0; }
.pf-access-history .pf-history article:last-child { border: 0; padding-bottom: 0; }
.pf-library article {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: .35rem .75rem;
    border-top: 1px solid var(--line);
    padding: .7rem 0;
}
.pf-library article:last-child { padding-bottom: 0; }
.pf-library time { color: var(--muted); font-size: .875rem; white-space: nowrap; }
.pf-library .pf-watchlist-form { margin: 0; }
.pf-library .pf-watchlist-form .button { font-size: .875rem; padding: .4rem .7rem; }
@media (max-width: 900px) {
    .woocommerce-MyAccount-content:has(> .pf-library) { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 768px) {
    .woocommerce .woocommerce-MyAccount-content .woocommerce-orders-table tbody th {
        display: block;
        text-align: right;
    }
    .woocommerce .woocommerce-MyAccount-content .woocommerce-orders-table tbody tr:first-child th { border-top: 0; }
    .woocommerce-MyAccount-content .woocommerce-orders-table tbody th::before {
        content: attr(data-title);
        float: left;
    }
    .woocommerce .woocommerce-MyAccount-content .woocommerce-orders-table tbody tr + tr {
        border-top: 1px solid var(--line);
    }
    .woocommerce .woocommerce-MyAccount-content .woocommerce-orders-table :is(th, td) {
        padding: .55rem .75rem;
    }
}
@media (max-width: 700px) {
    .woocommerce-account .woocommerce:has(> .woocommerce-MyAccount-navigation) { grid-template-columns: minmax(0, 1fr); }
    .woocommerce-account .woocommerce-MyAccount-navigation ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
    .plan-grid { grid-template-columns: minmax(0, 1fr); }
    .plan-card .button { width: 100%; }
    .woocommerce .woocommerce-MyAccount-content form :is(.form-row-first, .form-row-last) {
        float: none;
        width: 100%;
    }
}

@media (max-width: 1050px) {
    .site-header .account-link { margin-inline-start: auto; }
    .site-header .header-search { order: 4; flex: 1 0 100%; width: 100%; }
}
