/*
 * Dark Spot Creams Review Page Styles
 * Optimized for performance
 */

:root {
    --color-text-secondary: #666;
    --color-background-white: #fff;
    --color-background-light: #f8f8f8;
    --color-border-light: #ddd;
    --color-link: #0066cc;
    --color-link-hover: #004499;
    --font-primary: 'Jost', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --spacing-xs: 0.25rem;
    --spacing-sm: 0.5rem;
    --spacing-md: 1rem;
    --spacing-lg: 1.5rem;
    --spacing-xl: 2rem;
    --spacing-xxl: 3rem;
    --border-radius-sm: 4px;
    --border-radius-md: 8px;
    --shadow-light: 0 2px 4px rgba(0,0,0,0.08);
    --shadow-medium: 0 4px 12px rgba(0,0,0,0.12);
    --container-max: 1200px;
    --container-narrow: 800px;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background-color:var(--color-background-white);color:#000;font-family:var(--font-primary);font-size:1.2rem;font-weight:300;line-height:1.8}
img{display:block;height:auto;max-width:100%}
a{color:var(--color-link);text-decoration:underline;transition:color .2s ease-in-out}
a:hover,a:focus{color:var(--color-link-hover)}
h1,h2,h3,h4,h5,h6{color:#000;font-family:var(--font-primary);font-weight:600;line-height:1.3;margin-bottom:var(--spacing-md)}
h1{font-size:clamp(1.7rem,4vw,2.5rem)}
h2{font-size:clamp(1.5rem,3vw,2rem)}
h3{font-size:clamp(1.2rem,2.5vw,1.5rem)}
p{margin-bottom:var(--spacing-md)}
ul,ol{margin-bottom:var(--spacing-md);padding-left:var(--spacing-xl)}
li{margin-bottom:var(--spacing-xs)}
strong{font-weight:700}
em{font-style:italic}

.page-wrapper{display:flex;flex-direction:column;min-height:100vh}
.primary-content{flex:1 1 auto}

.site-masthead{background-color:var(--color-background-white);border-bottom:2px solid var(--color-border-light);padding:10px 0}
.masthead-inner{margin:0 auto;max-width:var(--container-max);padding:0 var(--spacing-xl)}
.brand-area{align-items:center;display:flex;justify-content:space-between}
.site-logo{font-family:var(--font-primary);font-size:2.4rem;letter-spacing:-0.5px;margin-bottom:0}
.logo-light{font-weight:400}
.logo-bold{font-weight:700}
.brand-tagline{color:#000;font-family:var(--font-primary);font-size:1.1rem;font-weight:600;margin-bottom:0}

.hero-block{background-color:var(--color-background-white);padding:var(--spacing-xxl) var(--spacing-lg)}
.hero-container{margin:0 auto;max-width:var(--container-narrow)}
.article-content{width:100%}
.article-headline{color:#000;font-family:var(--font-primary);margin-bottom:var(--spacing-sm)}
.article-meta{color:var(--color-text-secondary);font-size:1.1rem;margin:5px 0}
.author-name{font-weight:700}
.featured-image{margin-bottom:var(--spacing-xl)}
.hero-img{border-radius:var(--border-radius-md);width:100%}
.intro-text{font-size:1.2rem;line-height:1.8}
.intro-text p{margin-bottom:var(--spacing-lg)}

.product-listing{background-color:var(--color-background-white);border-bottom:1px solid var(--color-border-light);padding:var(--spacing-xl) var(--spacing-lg)}
.product-listing.featured-product{background-color:var(--color-background-light)}
.product-grid{align-items:center;display:grid;gap:var(--spacing-xxl);grid-template-columns:1fr;margin:0 auto;max-width:var(--container-narrow)}
@media(min-width:768px){.product-grid{grid-template-columns:1fr 1fr}}
.product-media{text-align:center}
.product-link{display:block}
.product-thumb{border-radius:var(--border-radius-md);box-shadow:var(--shadow-light);max-width:100%;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}
.product-thumb:hover{box-shadow:var(--shadow-medium);transform:translateY(-4px)}
.product-details{text-align:center}
@media(min-width:768px){.product-details{text-align:left}}
.product-header{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-md);justify-content:center;margin-bottom:var(--spacing-sm)}
@media(min-width:768px){.product-header{justify-content:flex-start}}
.rank-number{color:#000;font-family:var(--font-primary);font-size:5rem;font-weight:600;line-height:1}
.award-badge{background-color:#000;border-radius:var(--border-radius-sm);color:var(--color-background-white);font-family:var(--font-primary);font-size:0.75rem;font-weight:600;padding:var(--spacing-sm) var(--spacing-md);text-transform:uppercase}
.product-name{font-family:var(--font-primary);font-size:2.2rem;font-weight:600;margin-bottom:var(--spacing-sm)}
.rating-display{margin-bottom:var(--spacing-xs)}
.star-image{display:inline-block;height:auto;max-width:120px}
.rating-text{color:#000;font-size:1.1rem;font-weight:400;margin-bottom:var(--spacing-md)}
.cta-button{background-color:#000;border:solid 2px #000;border-radius:0;color:var(--color-background-white);cursor:pointer;display:inline-block;font-family:var(--font-primary);font-size:1.1rem;font-weight:500;padding:var(--spacing-md) var(--spacing-xxl);text-decoration:none;transition:background-color .2s ease-in-out,transform .1s ease-in-out}
.cta-button:hover,.cta-button:focus{background-color:#fff;border:solid 2px #000;color:#000}

.product-review{background-color:var(--color-background-white);border-bottom:1px solid var(--color-border-light);padding:var(--spacing-xl) var(--spacing-lg)}
.review-body{margin:0 auto;max-width:var(--container-narrow)}
.review-body p{font-size:1.2rem;line-height:1.8;margin-bottom:0}

.methodology-block{background-color:#f7f7f7;padding:var(--spacing-xxl) var(--spacing-lg)}
.methodology-container{margin:0 auto;max-width:var(--container-narrow)}
.section-title{font-family:var(--font-primary);margin-bottom:var(--spacing-lg);text-align:left}
.methodology-content{font-size:1.2rem;line-height:1.8}
.methodology-content p:last-child{margin-bottom:0}

.site-footer{background-color:#e8e8e8;color:#333}
.footer-content{margin:0 auto;max-width:var(--container-max);padding:var(--spacing-xxl) var(--spacing-lg);text-align:center}
.footer-logo{display:flex;justify-content:center;margin-bottom:var(--spacing-lg)}
.footer-logo-img{display:block;height:auto;margin:0 auto;max-width:200px}
.footer-nav{margin-bottom:var(--spacing-md);text-align:center}
.nav-links{display:flex;flex-wrap:wrap;gap:var(--spacing-xl);justify-content:center;list-style:none;margin-bottom:0;padding-left:0}
.nav-links li{margin-bottom:0}
.nav-links a{color:#333;font-size:0.95rem;text-decoration:none}
.nav-links a:hover,.nav-links a:focus{text-decoration:underline}
.copyright-text{color:#333;font-size:1rem;font-weight:600;margin-bottom:var(--spacing-xl);text-align:center}
.footer-disclaimers{margin:0 auto;max-width:900px}
.disclaimer-text{color:#555;font-size:0.8rem;line-height:1.7;margin-bottom:var(--spacing-lg);text-align:center}

.popup{position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:rgba(0,0,0,0.7);display:flex;justify-content:center;align-items:center}
.popup p{font-size:14px!important;margin-bottom:0!important}
.popup-content{background-color:#fff;padding:20px;border-radius:10px;max-width:500px;box-shadow:0 5px 15px rgba(0,0,0,0.3);text-align:left;position:relative}
.close{position:absolute;top:10px;right:15px;font-size:25px;font-weight:bold;cursor:pointer}
.popup-title{font-size:22px;margin-bottom:var(--spacing-md)}
.hidden{display:none}
body.popup-active{overflow:hidden}

@media(max-width:767px){
body{font-size:1.05rem}
.site-masthead{padding:15px 0}
.masthead-inner{padding:0 var(--spacing-lg)}
.site-logo{font-size:2rem}
.brand-tagline{font-size:0.8rem;text-align:right;line-height:1.3;max-width:120px}
.hero-block{padding:var(--spacing-xl) var(--spacing-lg)}
.article-headline{font-size:1.65rem;line-height:1.25;margin-bottom:var(--spacing-xs)}
.article-meta{font-size:0.95rem;margin:8px 0 20px}
.featured-image{margin-bottom:var(--spacing-lg)}
.intro-text{font-size:1.05rem;line-height:1.7}
.intro-text p{margin-bottom:var(--spacing-md)}
.product-listing{padding:var(--spacing-lg) var(--spacing-md)}
.product-grid{gap:var(--spacing-lg)}
.product-thumb{max-width:280px;margin:0 auto}
.product-thumb:hover{transform:none}
.rank-number{font-size:3.5rem}
.product-name{font-size:1.6rem}
.star-image{max-width:100px}
.cta-button{font-size:1rem;padding:var(--spacing-md) var(--spacing-xl);width:100%;text-align:center}
.rating-text{font-size:0.95rem}
.product-review{padding:var(--spacing-lg) var(--spacing-md)}
.review-body p{font-size:1rem;line-height:1.7}
.methodology-block{padding:var(--spacing-xl) var(--spacing-lg)}
.methodology-content{font-size:1.05rem}
.footer-content{padding:var(--spacing-xl) var(--spacing-lg)}
.footer-logo-img{max-width:160px}
.nav-links{gap:var(--spacing-md)}
.nav-links a{font-size:0.85rem}
.copyright-text{font-size:0.9rem}
.disclaimer-text{font-size:0.75rem;line-height:1.6;text-align:left}
.popup-content{margin:0 15px;max-width:100%}
}

@media(max-width:400px){
.site-logo{font-size:1.7rem}
.brand-tagline{font-size:0.7rem;max-width:100px}
.article-headline{font-size:1.45rem}
.rank-number{font-size:3rem}
.product-name{font-size:1.4rem}
.product-thumb{max-width:240px}
.cta-button{padding:var(--spacing-sm) var(--spacing-lg);font-size:0.95rem}
}

@media print{
.site-masthead,.cta-button{display:none}
body{background:#fff;color:#000;font-size:12pt}
a{color:#000;text-decoration:underline}
.page-wrapper{max-width:100%}
}
