/*
Theme Name: Rose Gold Editorial
Theme URI: https://example.com/moban46
Author: Atelier 46
Description: A luxury rose-gold editorial WordPress theme with feminine elegance, soft metallic sheen, and a fashion-magazine layout.
Version: 1.0
License: GPL-2.0-or-later
Text Domain: rosegold
*/

:root{
    --rg-charcoal:#1c1917;
    --rg-rose:#be185d;
    --rg-rose-deep:#831843;
    --rg-peach:#fb923c;
    --rg-blush:#fdf2f8;
    --rg-cream:#fff7ed;
    --rg-ink:#231b1b;
    --rg-ash:#6b5a5a;
    --rg-line:rgba(190,24,93,.18);
    --rg-gold:linear-gradient(135deg,#f9a8d4 0%,#fb923c 45%,#be185d 100%);
    --rg-gold-soft:linear-gradient(135deg,#fdf2f8 0%,#fde0c8 60%,#f9a8d4 100%);
    --rg-shadow:0 30px 60px -28px rgba(190,24,93,.32);
    --rg-display:'Cormorant Garamond','Cormorant',serif;
    --rg-body:'Montserrat',system-ui,sans-serif;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
    font-family:var(--rg-body);
    color:var(--rg-ink);
    background:var(--rg-blush);
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
    background-image:
        radial-gradient(1200px 600px at 80% -10%, rgba(251,146,60,.18), transparent 60%),
        radial-gradient(800px 400px at -10% 30%, rgba(190,24,93,.10), transparent 60%);
}
img{max-width:100%;height:auto;display:block}
a{color:var(--rg-rose);text-decoration:none}
a:hover{color:var(--rg-rose-deep)}

.rg-container{max-width:1240px;margin:0 auto;padding:0 28px}

/* Top brass marquee */
.rg-marquee{
    background:var(--rg-charcoal);
    color:#fde0c8;
    font-size:11px;letter-spacing:.32em;text-transform:uppercase;
    padding:8px 0;overflow:hidden;border-bottom:1px solid rgba(253,224,200,.15);
}
.rg-marquee span{display:inline-block;padding:0 32px;opacity:.75}

/* Header */
.rg-header{
    position:sticky;top:0;z-index:50;
    background:rgba(253,242,248,.82);
    backdrop-filter:saturate(160%) blur(14px);
    border-bottom:1px solid var(--rg-line);
}
.rg-header-inner{
    display:grid;grid-template-columns:1fr auto 1fr;align-items:center;
    padding:18px 0;gap:24px;
}
.rg-logo{
    font-family:var(--rg-display);
    font-style:italic;
    font-size:32px;letter-spacing:.5px;
    color:var(--rg-charcoal);
    grid-column:2;
    text-align:center;
}
.rg-logo b{
    background:var(--rg-gold);-webkit-background-clip:text;background-clip:text;color:transparent;
    font-style:normal;font-weight:600;
}
.rg-nav{display:flex;align-items:center;gap:26px;justify-content:flex-end;grid-column:3}
.rg-nav a{
    font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--rg-charcoal);
    position:relative;padding:6px 0;font-weight:500;
}
.rg-nav a:not(.rg-cta):after{
    content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--rg-rose);
    transform:scaleX(0);transform-origin:left;transition:transform .35s ease;
}
.rg-nav a:not(.rg-cta):hover:after{transform:scaleX(1)}
.rg-cta{
    background:var(--rg-charcoal);color:#fde0c8 !important;padding:12px 22px;border-radius:999px;
    letter-spacing:.24em;font-weight:600;
    box-shadow:inset 0 0 0 1px rgba(253,224,200,.25);
}
.rg-cta:hover{background:var(--rg-rose);color:#fff !important}
.rg-burger{display:none}

/* Hero */
.rg-hero{padding:64px 0 30px;position:relative}
.rg-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:54px;align-items:end}
.rg-hero h1{
    font-family:var(--rg-display);
    font-weight:500;font-size:clamp(44px,7vw,108px);line-height:.95;
    color:var(--rg-charcoal);margin:14px 0 22px;letter-spacing:-.5px;
}
.rg-hero h1 em{
    font-style:italic;
    background:var(--rg-gold);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.rg-hero h1 .rg-amp{font-family:var(--rg-display);font-style:italic;color:var(--rg-peach)}
.rg-eyebrow{
    display:inline-flex;align-items:center;gap:10px;
    font-size:11px;letter-spacing:.34em;text-transform:uppercase;color:var(--rg-rose);
    font-weight:600;
}
.rg-eyebrow:before{content:"";width:32px;height:1px;background:var(--rg-rose)}
.rg-hero p{font-size:17px;color:var(--rg-ash);max-width:520px;margin:0 0 28px}
.rg-hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.rg-btn{
    display:inline-flex;align-items:center;gap:10px;
    padding:16px 28px;border-radius:999px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;font-size:12px;
    background:var(--rg-charcoal);color:#fff7ed;
}
.rg-btn:hover{background:var(--rg-rose);color:#fff}
.rg-btn-outline{background:transparent;color:var(--rg-charcoal);box-shadow:inset 0 0 0 1px var(--rg-charcoal)}
.rg-btn-outline:hover{background:var(--rg-charcoal);color:#fff7ed}

/* Hero card — couture odds */
.rg-couture{
    position:relative;border-radius:8px;padding:28px;
    background:linear-gradient(160deg,#fff 0%,#fde0c8 100%);
    border:1px solid rgba(190,24,93,.18);
    box-shadow:var(--rg-shadow);
}
.rg-couture:before{
    content:"";position:absolute;inset:8px;border:1px solid rgba(190,24,93,.18);pointer-events:none;
}
.rg-couture h3{
    font-family:var(--rg-display);font-style:italic;font-weight:500;font-size:28px;margin:0 0 18px;
    color:var(--rg-charcoal);
}
.rg-couture ul{list-style:none;padding:0;margin:0}
.rg-couture li{
    display:flex;justify-content:space-between;align-items:center;
    padding:14px 0;border-bottom:1px dashed rgba(190,24,93,.22);gap:18px;
}
.rg-couture li:last-child{border-bottom:0}
.rg-couture small{display:block;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--rg-ash);margin-top:3px}
.rg-couture .rg-odds{
    font-family:var(--rg-display);font-size:24px;color:var(--rg-rose);font-weight:600;
    padding:6px 12px;border:1px solid var(--rg-line);border-radius:4px;background:#fff;
}

/* Page lead rule */
.rg-rule{
    height:1px;background:linear-gradient(90deg,transparent,var(--rg-rose),transparent);
    margin:50px 0;
}

/* Layout */
.rg-main{padding:30px 0 80px}
.rg-layout{display:grid;grid-template-columns:1fr 320px;gap:64px}

/* Section heads */
.rg-section-head{
    display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:0 0 32px;
    border-bottom:1px solid var(--rg-line);padding-bottom:16px;
}
.rg-section-head h2{
    font-family:var(--rg-display);font-weight:500;font-size:42px;line-height:1;margin:0;color:var(--rg-charcoal);
}
.rg-section-head h2 em{font-style:italic;color:var(--rg-rose)}
.rg-section-sub{font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--rg-ash)}
.rg-link{
    font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--rg-charcoal);font-weight:600;
    border-bottom:1px solid var(--rg-charcoal);padding-bottom:3px;
}
.rg-link:hover{color:var(--rg-rose);border-color:var(--rg-rose)}

/* Editorial feed */
.rg-feed{display:grid;grid-template-columns:repeat(2,1fr);gap:38px 30px}
.rg-feed > .rg-card:first-child{
    grid-column:1/-1;display:grid;grid-template-columns:1.2fr 1fr;gap:30px;align-items:center;
}
.rg-card{
    background:transparent;border-radius:0;
    animation:rgFade .8s ease both;animation-delay:var(--rg-d,0ms);
}
@keyframes rgFade{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.rg-card-thumb{
    display:block;position:relative;overflow:hidden;background:var(--rg-cream);
    aspect-ratio:4/3;border-radius:2px;
}
.rg-card-thumb img{
    width:100%;height:100%;object-fit:cover;transition:transform .9s ease;
    filter:saturate(1.05) contrast(1.02);
}
.rg-card:hover .rg-card-thumb img{transform:scale(1.05)}
.rg-card-tag{
    position:absolute;top:14px;left:14px;
    background:#fff7ed;color:var(--rg-charcoal);
    font-size:10px;letter-spacing:.3em;text-transform:uppercase;font-weight:700;
    padding:6px 12px;border-radius:999px;border:1px solid var(--rg-line);
}
.rg-card-fb{
    width:100%;height:100%;display:flex;align-items:center;justify-content:center;
    background:var(--rg-gold-soft);font-family:var(--rg-display);font-style:italic;font-size:80px;color:var(--rg-rose);
}
.rg-card-body{padding:18px 0 0}
.rg-card-meta{
    font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--rg-ash);
    display:flex;gap:10px;align-items:center;margin-bottom:10px;
}
.rg-dot{width:4px;height:4px;border-radius:50%;background:var(--rg-rose)}
.rg-card h3{
    font-family:var(--rg-display);font-weight:500;font-size:26px;line-height:1.18;margin:0 0 10px;color:var(--rg-charcoal);
}
.rg-card h3 a{color:inherit}
.rg-card h3 a:hover{color:var(--rg-rose)}
.rg-card p{color:var(--rg-ash);margin:0 0 14px;font-size:14.5px}
.rg-card-link{
    font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--rg-rose);font-weight:600;
    border-bottom:1px solid var(--rg-rose);padding-bottom:2px;
}
.rg-feed > .rg-card:first-child h3{font-size:42px}
.rg-feed > .rg-card:first-child .rg-card-thumb{aspect-ratio:5/4}

/* Sidebar */
.rg-sidebar{display:flex;flex-direction:column;gap:30px}
.rg-widget{
    background:#fff;border:1px solid var(--rg-line);border-radius:6px;padding:26px;
}
.rg-widget h3{
    font-family:var(--rg-display);font-style:italic;font-weight:500;font-size:24px;margin:0 0 14px;color:var(--rg-charcoal);
}
.rg-widget ul{list-style:none;padding:0;margin:0}
.rg-widget li{padding:9px 0;border-bottom:1px dashed var(--rg-line);font-size:14px}
.rg-widget li:last-child{border-bottom:0}
.rg-widget a{color:var(--rg-charcoal)}
.rg-widget a:hover{color:var(--rg-rose)}
.rg-bouquet{
    background:var(--rg-charcoal);color:#fde0c8;border:0;
    background-image:radial-gradient(380px 200px at 100% 0,rgba(251,146,60,.35),transparent 60%);
}
.rg-bouquet h3{color:#fde0c8;font-size:30px}
.rg-bouquet p{font-size:14px;opacity:.85;margin:0 0 18px}

/* Breadcrumb */
.rg-crumb{
    font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--rg-ash);margin:30px 0 16px;
    display:flex;gap:10px;align-items:center;flex-wrap:wrap;
}
.rg-crumb a{color:var(--rg-charcoal)}
.rg-crumb span{color:var(--rg-rose)}

/* Single */
.rg-article{background:#fff;border:1px solid var(--rg-line);padding:48px;border-radius:6px}
.rg-article h1{
    font-family:var(--rg-display);font-weight:500;font-size:clamp(32px,4.6vw,58px);line-height:1.05;color:var(--rg-charcoal);margin:8px 0 18px;
}
.rg-article-meta{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--rg-ash);margin-bottom:24px}
.rg-article-feature{margin:24px 0 36px}
.rg-article-feature img{border-radius:4px}
.rg-article .rg-content{font-size:17px;line-height:1.75;color:#2b2424}
.rg-article .rg-content p{margin:0 0 18px}
.rg-article .rg-content h2{font-family:var(--rg-display);font-size:34px;margin:36px 0 14px;color:var(--rg-charcoal)}
.rg-article .rg-content h3{font-family:var(--rg-display);font-size:26px;margin:28px 0 12px}
.rg-article .rg-content blockquote{
    border-left:3px solid var(--rg-rose);padding:6px 0 6px 22px;margin:24px 0;
    font-family:var(--rg-display);font-style:italic;font-size:24px;color:var(--rg-charcoal);
}
.rg-article .rg-content a{border-bottom:1px solid var(--rg-rose)}

/* Related */
.rg-related{margin-top:60px}
.rg-related h2{
    font-family:var(--rg-display);font-style:italic;font-weight:500;font-size:34px;color:var(--rg-charcoal);margin:0 0 22px;
    border-bottom:1px solid var(--rg-line);padding-bottom:12px;
}
.rg-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}

/* Pagination */
.rg-pager{
    display:flex;justify-content:center;gap:10px;margin:50px 0 0;flex-wrap:wrap;
}
.rg-pager a, .rg-pager span{
    padding:12px 18px;font-size:11px;letter-spacing:.24em;text-transform:uppercase;font-weight:600;
    border:1px solid var(--rg-line);color:var(--rg-charcoal);border-radius:999px;background:#fff;
}
.rg-pager .current{background:var(--rg-charcoal);color:#fde0c8;border-color:var(--rg-charcoal)}

/* Comments */
.rg-comments{margin-top:60px;background:#fff;border:1px solid var(--rg-line);padding:36px;border-radius:6px}
.rg-comments h2,.rg-comments h3{font-family:var(--rg-display);font-weight:500;color:var(--rg-charcoal)}
.rg-comments ol{list-style:none;padding:0}
.rg-comments .comment{border-bottom:1px dashed var(--rg-line);padding:18px 0}
.rg-comments .comment-author{font-weight:600;letter-spacing:.04em}
.rg-comments input[type=text],.rg-comments input[type=email],.rg-comments input[type=url],.rg-comments textarea{
    width:100%;padding:14px 16px;border:1px solid var(--rg-line);border-radius:4px;background:var(--rg-cream);font-family:inherit;font-size:14px;
}
.rg-comments .submit, .rg-comments input[type=submit]{
    background:var(--rg-charcoal);color:#fde0c8;border:0;padding:14px 26px;border-radius:999px;
    letter-spacing:.22em;text-transform:uppercase;font-size:11px;font-weight:600;cursor:pointer;
}

/* 404 */
.rg-404{padding:120px 0;text-align:center}
.rg-404 .rg-glyph{
    font-family:var(--rg-display);font-style:italic;font-size:240px;line-height:1;
    background:var(--rg-gold);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.rg-404 h1{font-family:var(--rg-display);font-size:48px;margin:0 0 12px;color:var(--rg-charcoal)}
.rg-404 p{color:var(--rg-ash);max-width:520px;margin:0 auto 24px}

/* Footer */
.rg-footer{
    background:var(--rg-charcoal);color:#fde0c8;padding:64px 0 28px;margin-top:60px;
    background-image:
        radial-gradient(600px 300px at 100% 0,rgba(251,146,60,.22),transparent 60%),
        radial-gradient(600px 400px at 0 100%,rgba(190,24,93,.18),transparent 60%);
}
.rg-foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}
.rg-foot-grid h4{
    font-family:var(--rg-display);font-style:italic;font-size:22px;color:#fde0c8;margin:0 0 14px;font-weight:500;
}
.rg-foot-grid ul{list-style:none;padding:0;margin:0}
.rg-foot-grid li{padding:6px 0;font-size:13px;letter-spacing:.05em;opacity:.85}
.rg-foot-grid a{color:#fde0c8}
.rg-foot-grid a:hover{color:#fff}
.rg-foot-brand p{font-size:14px;opacity:.78;max-width:340px}
.rg-foot-bottom{
    margin-top:42px;border-top:1px solid rgba(253,224,200,.18);padding-top:20px;
    display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;
    font-size:11px;letter-spacing:.3em;text-transform:uppercase;opacity:.75;
}

/* Responsive */
@media (max-width:980px){
    .rg-hero-grid{grid-template-columns:1fr;gap:36px}
    .rg-layout{grid-template-columns:1fr;gap:48px}
    .rg-feed{grid-template-columns:1fr}
    .rg-feed > .rg-card:first-child{grid-template-columns:1fr}
    .rg-related-grid{grid-template-columns:1fr 1fr}
    .rg-foot-grid{grid-template-columns:1fr 1fr}
    .rg-header-inner{grid-template-columns:1fr auto;gap:14px}
    .rg-logo{grid-column:1;text-align:left}
    .rg-nav{grid-column:1/3;flex-wrap:wrap;justify-content:flex-start;gap:14px}
}
@media (max-width:560px){
    .rg-related-grid{grid-template-columns:1fr}
    .rg-foot-grid{grid-template-columns:1fr}
    .rg-article{padding:26px}
}
