/*
Theme Name: Portrait Lane — Dark Studio
Theme URI: https://portraitlane.eu
Author: Portrait Lane
Description: Premium, mobile-ready dark storefront for personalized car and pet posters. Compatible with WooCommerce.
Version: 1.0.2
Requires at least: 6.5
Requires PHP: 7.4
Text Domain: portrait-lane
License: GPLv2 or later
*/
:root{--bg:#0b0d0e;--panel:#151718;--panel2:#1f2223;--gold:#d5b27b;--muted:#a6a7a8;--white:#f8f7f3;--line:#383637;--max:1220px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--white);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;line-height:1.6}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.14;letter-spacing:-.035em}h1{font-size:clamp(2.5rem,6.2vw,5.6rem);font-weight:760}h2{font-size:clamp(2.1rem,3.7vw,3.5rem)}h3{font-size:1.25rem}a{color:inherit}img{max-width:100%;height:auto}button,input,textarea{font:inherit}button,a,.button{transition:background .2s,color .2s,border-color .2s}.wrap{width:min(calc(100% - 44px),var(--max));margin-inline:auto}.eyebrow{font-size:.76rem;letter-spacing:.2em;color:var(--gold);font-weight:700;text-transform:uppercase}.muted{color:var(--muted)}.center{text-align:center}.row{display:flex;align-items:center;justify-content:space-between;gap:20px}.site-banner{background:#161718;border-bottom:1px solid #353434;padding:9px 12px;font-size:.75rem;text-align:center;letter-spacing:.05em}.site-banner strong{color:var(--gold);letter-spacing:.13em}.site-header{position:relative;z-index:5;background:rgba(11,13,14,.96);border-bottom:1px solid #242628}.header-main{min-height:83px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{font-size:1.39rem;letter-spacing:.19em;font-weight:790;text-decoration:none;white-space:nowrap}.logo small{display:block;color:var(--gold);font-weight:450;font-size:.55rem;letter-spacing:.3em;text-align:center}.top-nav{display:flex;gap:23px;align-items:center}.top-nav a{text-decoration:none;color:#e9e8e5;font-size:.87rem}.top-nav a:hover,.top-nav a:focus{color:var(--gold)}.menu-button{display:none;background:none;border:1px solid #484848;color:white;border-radius:5px;padding:7px 10px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 22px;border:1px solid var(--white);border-radius:5px;background:var(--white);color:#161616;text-decoration:none;font-size:.82rem;font-weight:760;text-transform:uppercase;letter-spacing:.045em;cursor:pointer}.btn:hover{background:var(--gold);border-color:var(--gold);color:#121212}.btn.outline{color:white;background:transparent;border-color:#807b74}.btn.outline:hover{color:#111;background:var(--gold)}.hero{min-height:630px;position:relative;background:radial-gradient(ellipse at 76% 35%,#30241c 0%,transparent 45%),linear-gradient(120deg,#131414,#08090a);overflow:hidden}.hero-inner{display:grid;grid-template-columns:.93fr 1.07fr;align-items:center;gap:4vw;min-height:630px;padding:48px 0}.hero h1{max-width:580px;margin:20px 0}.hero h1 span{color:var(--gold)}.hero .lead{color:#c1c0bd;font-size:1.06rem;max-width:480px}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin:34px 0}.hero img{object-fit:contain;max-height:520px;width:100%;filter:drop-shadow(0 24px 36px #000a)}.hero-poster{max-width:390px;margin:0 auto;position:relative;padding:12px;border:9px solid #151515;background:#171717;box-shadow:0 35px 70px #000a,0 0 0 1px #65513a;transform:rotate(1deg)}.hero-poster img{display:block;max-height:510px;object-fit:cover}.hero-poster::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 25px #0008;pointer-events:none}.trust-strip{border-top:1px solid #343333;border-bottom:1px solid #343333;background:#101112}.trust-strip .wrap{display:flex;justify-content:space-around;gap:25px;flex-wrap:wrap;padding:21px 0}.trust-strip span{color:#cecbc7;font-size:.79rem;letter-spacing:.06em}.trust-strip b{color:var(--gold);margin-right:10px}.section{padding:90px 0}.section.alt{background:var(--panel)}.section-header{margin:0 0 30px}.section-header h2{margin:12px 0}.section-header p{max-width:750px;color:var(--muted)}.promotion{background:linear-gradient(110deg,#131312,#231d16,#131312);border-block:1px solid #6a5131;padding:25px 0}.promotion .wrap{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap}.promotion h2{font-size:1.45rem;margin:0}.coupon-pill{padding:9px 18px;border:1px dashed var(--gold);border-radius:4px;font-size:1.2rem;letter-spacing:.12em;font-weight:800;color:var(--gold)}.category-grid,.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.category{min-height:290px;border:1px solid var(--line);background:linear-gradient(120deg,#151617,#24211e);position:relative;border-radius:10px;overflow:hidden;display:flex;align-items:flex-end;padding:28px;text-decoration:none}.category img{position:absolute;height:100%;width:55%;object-fit:cover;right:0;top:0;opacity:.52;filter:grayscale(25%);mask-image:linear-gradient(to right,transparent,black)}.category .info{position:relative;z-index:1;max-width:67%}.category h3{font-size:1.55rem;margin:0 0 6px}.category p{font-size:.85rem;color:#ccc}.category .go{display:inline-block;border-bottom:1px solid var(--gold);font-size:.8rem;padding-bottom:4px}.category:hover{border-color:var(--gold)}.card{background:#191b1d;border:1px solid #353432;border-radius:10px;overflow:hidden;display:flex;flex-direction:column}.card img{width:100%;height:310px;object-fit:contain;background:#101111;padding:17px}.card-body{padding:22px;flex:1;display:flex;flex-direction:column}.card .tag{color:var(--gold);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase}.card h3{margin:9px 0}.card p{color:var(--muted);font-size:.91rem;flex:1}.price{font-size:1.2rem;font-weight:700;margin-bottom:18px}.card .btn{width:100%}.pet-illustration{height:310px;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at center,#463226,#171717 67%);font-size:6rem;color:#d5b27b}.pet-illustration svg{width:155px;height:155px;fill:none;stroke:var(--gold);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.step{border-top:1px solid var(--gold);padding-top:22px}.step b{color:var(--gold);letter-spacing:.08em}.step h3{margin:14px 0}.step p{color:var(--muted);font-size:.91rem}.notice{border:1px solid #7b6645;background:#231d15;color:#d9c6a6;padding:13px 16px;border-radius:6px}.site-footer{border-top:1px solid #333;padding:60px 0 25px;background:#0b0c0c}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.site-footer a{color:#c3c1bd;text-decoration:none}.site-footer a:hover{color:var(--gold)}.site-footer ul{padding:0;list-style:none}.site-footer li{margin:8px 0}.footer-small{border-top:1px solid #343434;padding-top:20px;margin-top:32px;font-size:.77rem;color:var(--muted)}.page-content{min-height:55vh;padding:70px 0;max-width:920px}.page-content h1{font-size:clamp(2.5rem,5vw,4rem)}.page-content h2{margin-top:36px}.page-content p,.page-content li{color:#cbc9c7}.page-content a{color:var(--gold)}.wp-block-image img{border-radius:6px}.woocommerce{color:var(--white)}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{background:#181919;border:1px solid var(--line);padding:15px;border-radius:9px}.woocommerce ul.products li.product .woocommerce-loop-product__title{color:var(--white)}.woocommerce ul.products li.product .price,.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--gold)}.woocommerce .button,.woocommerce button.button,.woocommerce a.button,.woocommerce input.button{background:var(--gold);color:#111;border:0;border-radius:5px}.woocommerce div.product form.cart .variations select,.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.woocommerce-page .input-text{border:1px solid #777;border-radius:4px;padding:12px;background:#f8f8f8;color:#111}.woocommerce .woocommerce-message,.woocommerce-info{border-top-color:var(--gold);color:#333}.woocommerce-product-gallery__image img{background:#121212}.pl-photo-upload{padding:17px;border:1px solid #66533b;border-radius:8px;background:#1e1b18;margin:18px 0;max-width:600px}.pl-photo-upload label{display:block;font-weight:700;margin-bottom:7px}.pl-photo-upload input[type=file]{display:block;max-width:100%;font-size:.88rem}.pl-photo-upload small{color:#c9bb9d}.pl-photo-upload input[type=text],.pl-photo-upload textarea{width:100%;border-radius:4px;border:1px solid #bbb;padding:10px;color:#171717;margin-bottom:10px}.pl-not-live{padding:12px;background:#241f18;border:1px solid #705632;border-radius:5px;color:#d1ba95;margin-bottom:20px}.site-content{min-height:60vh}.screen-reader-text{position:absolute!important;clip-path:inset(50%);height:1px;width:1px;overflow:hidden}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:3px}@media(max-width:840px){.hero-inner{grid-template-columns:1fr;gap:20px;text-align:center;padding:65px 0}.hero h1{margin-left:auto;margin-right:auto}.hero .lead{margin-inline:auto}.hero-buttons{justify-content:center}.hero-poster{max-width:300px}.category-grid,.product-grid,.steps{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.top-nav{gap:14px;flex-wrap:wrap}.hero{min-height:auto}}@media(max-width:620px){.wrap{width:min(calc(100% - 28px),var(--max))}.header-main{min-height:73px}.logo{font-size:1.12rem}.top-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#101112;padding:20px 24px;border-bottom:1px solid #444;flex-direction:column;align-items:flex-start}.top-nav.open{display:flex}.menu-button{display:block}.hero h1{font-size:2.6rem}.hero-poster{max-width:260px}.section{padding:65px 0}.category-grid,.product-grid,.steps,.footer-grid{grid-template-columns:1fr}.category{min-height:230px}.card img,.pet-illustration{height:260px}.promotion .wrap{justify-content:center;text-align:center}.trust-strip .wrap{gap:12px}.trust-strip span{font-size:.7rem}.footer-grid{gap:20px}.hero-inner{padding:40px 0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

/* Pet sample gallery */
.pet-illustration img.pl-pet-photo{width:100%;height:100%;object-fit:cover;padding:0;display:block}
.pet-category-image{position:absolute;right:0;top:0;height:100%;width:55%;opacity:.5;mask-image:linear-gradient(to right,transparent,black)}
.pet-category-image img{width:100%;height:100%;object-fit:cover}
