/*
Theme Name: Custom Auto Theme
Author: System
Version: 1.0
*/
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:'Helvetica Neue','Inter',Arial,sans-serif;background:#faf7f2;color:#2a2a2e;line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block;height:auto}
a{color:inherit;text-decoration:none}

:root{
  --bg:#faf7f2;
  --cream:#f2ece3;
  --cream-soft:#efe8dc;
  --paper:#ffffff;
  --plum:#5b2842;
  --plum-dark:#3d1a2d;
  --plum-soft:#7a3b58;
  --graphite:#2a2a2e;
  --graphite-soft:#55555c;
  --mute:#8a8085;
  --coral:#e8857a;
  --coral-soft:#f2b5ae;
  --coral-pale:#fbe3df;
  --line:#ddd4c6;
  --shadow:0 24px 60px -30px rgba(61,26,45,.35);
}

/* HEADER */
.site-header{position:sticky;top:0;z-index:100;background:rgba(250,247,242,.97);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.site-header-inner{max-width:1400px;margin:0 auto;padding:18px 32px;display:flex;justify-content:space-between;align-items:center}
.brand{font-family:Georgia,'Times New Roman',serif;font-size:1.9rem;font-weight:700;font-style:italic;color:var(--plum);letter-spacing:-.03em;position:relative}
.brand::after{content:'';position:absolute;width:8px;height:8px;border-radius:50%;background:var(--coral);top:4px;right:-14px}
.nav-main{display:flex;gap:34px}
.nav-main a{font-family:'Helvetica Neue',Arial,sans-serif;font-size:.74rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--graphite);padding:4px 0;position:relative;transition:color .3s}
.nav-main a::after{content:'';position:absolute;bottom:-2px;left:0;width:0;height:1.5px;background:var(--coral);transition:width .4s}
.nav-main a:hover{color:var(--plum)}
.nav-main a:hover::after{width:100%}
.burger{display:none;background:none;border:none;cursor:pointer;padding:8px;min-width:44px;min-height:44px}
.burger span{display:block;width:24px;height:2px;background:var(--plum);margin:5px 0;transition:all .3s}

/* HERO */
.hero{max-width:1400px;margin:0 auto;padding:80px 32px 60px;display:grid;grid-template-columns:1.1fr .9fr;gap:0;align-items:center;position:relative}
.hero-text{padding-right:40px;position:relative;z-index:2}
.kicker{display:inline-flex;align-items:center;gap:10px;font-family:'Helvetica Neue',Arial,sans-serif;font-size:.7rem;font-weight:700;letter-spacing:.26em;text-transform:uppercase;color:var(--coral);margin-bottom:28px;padding-bottom:12px;border-bottom:1.5px solid var(--coral)}
.kicker::before{content:'';width:24px;height:1.5px;background:var(--coral)}
.hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(2.2rem,5.2vw,4.4rem);line-height:1.02;color:var(--plum);font-weight:700;margin-bottom:28px;letter-spacing:-.02em}
.hero h1 em{font-style:italic;color:var(--coral);font-weight:400}
.hero-lead{font-size:1.12rem;color:var(--graphite);max-width:480px;line-height:1.65;margin-bottom:32px}
.hero-meta{display:flex;gap:28px;flex-wrap:wrap;font-family:'Helvetica Neue',Arial,sans-serif;font-size:.82rem;color:var(--mute);padding-top:24px;border-top:1px solid var(--line)}
.hero-meta strong{color:var(--plum);font-weight:700}
.hero-img{position:relative;z-index:1;margin-left:-80px;clip-path:polygon(15% 0,100% 0,100% 82%,88% 100%,0 100%,0 22%)}
.hero-img::before{content:'';position:absolute;inset:-14px -14px auto auto;width:120px;height:120px;background:var(--coral);z-index:-1;border-radius:50%;opacity:.85}
.hero-img img{width:100%;height:580px;object-fit:cover}

/* LAYOUT */
.layout{max-width:1400px;margin:0 auto;padding:0 32px 80px;display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:72px;align-items:start}
.content{max-width:760px}

/* CONTENT */
.content p{font-size:1.04rem;line-height:1.82;margin-bottom:22px;color:var(--graphite)}
.content p.lead{font-size:1.24rem;line-height:1.55;color:var(--plum-dark);font-style:italic;padding:4px 0 4px 24px;border-left:3px solid var(--coral);margin:32px 0}
.section-head{margin:80px 0 28px}
.section-head:first-child{margin-top:0}
.section-head .kicker{margin-bottom:18px}
.section-head h2{font-family:Georgia,serif;font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.15;color:var(--plum);font-weight:700;letter-spacing:-.01em}

/* EDITORIAL CARDS */
.editorial-cards{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:48px 0}
.editorial-card{background:var(--paper);padding:34px 28px;position:relative;border-bottom:3px solid var(--coral);transition:transform .4s,box-shadow .4s}
.editorial-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.editorial-card .num{font-family:Georgia,serif;font-size:2.6rem;color:var(--coral-soft);font-style:italic;line-height:1;margin-bottom:12px;font-weight:700}
.editorial-card h3{font-family:Georgia,serif;font-size:1.22rem;color:var(--plum);margin-bottom:12px;line-height:1.3;font-weight:700}
.editorial-card p{font-size:.96rem;color:var(--graphite-soft);line-height:1.7;margin:0}

/* QUOTE BLOCK */
.quote-block{background:var(--plum);color:var(--paper);padding:56px 48px;margin:56px 0;position:relative;overflow:hidden}
.quote-block::before{content:'\201C';position:absolute;top:-34px;right:28px;font-family:Georgia,serif;font-size:14rem;color:rgba(232,133,122,.2);line-height:1;font-weight:700}
.quote-block blockquote{font-family:Georgia,serif;font-style:italic;font-size:1.55rem;line-height:1.4;max-width:600px;margin-bottom:18px;position:relative;z-index:1}
.quote-block cite{font-family:'Helvetica Neue',Arial,sans-serif;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--coral-soft);font-style:normal}
.quote-coral{background:var(--coral);color:var(--plum-dark)}
.quote-coral::before{color:rgba(61,26,45,.18)}
.quote-coral cite{color:var(--plum)}

/* PHOTO BLOCK */
.photo-block{margin:56px 0}
.photo-block img{width:100%;height:460px;object-fit:cover}
.photo-block figcaption{margin-top:16px;font-family:'Helvetica Neue',Arial,sans-serif;font-size:.82rem;color:var(--mute);font-style:italic;padding-left:16px;border-left:2px solid var(--coral)}

/* HIGHLIGHT ASYM */
.highlight-asym{display:grid;grid-template-columns:.85fr 2fr;gap:0;margin:56px 0}
.highlight-asym .h-label{background:var(--plum);color:var(--coral-soft);padding:32px 24px;display:flex;align-items:center;justify-content:center;text-align:center}
.highlight-asym .h-label span{font-family:'Helvetica Neue',Arial,sans-serif;font-size:.76rem;letter-spacing:.26em;text-transform:uppercase;font-weight:700}
.highlight-asym .h-body{background:var(--cream);padding:32px}
.highlight-asym h4{font-family:Georgia,serif;font-size:1.25rem;color:var(--plum);margin-bottom:10px}
.highlight-asym p{font-size:.98rem;color:var(--graphite);margin:0;line-height:1.65}

/* RITUAL LIST */
.rituals{list-style:none;margin:32px 0;padding:0;counter-reset:ritual}
.rituals li{padding:18px 0 18px 48px;border-bottom:1px solid var(--line);position:relative;font-size:1.02rem;color:var(--graphite);line-height:1.55}
.rituals li::before{counter-increment:ritual;content:counter(ritual,lower-roman)\".\";position:absolute;left:0;top:16px;font-family:Georgia,serif;font-style:italic;font-size:1.3rem;color:var(--coral);font-weight:700}

/* INLINE AUTHOR */
.author-inline{margin:56px 0;padding:28px;background:var(--cream);display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:center}
.author-avatar{width:64px;height:64px;border-radius:50%;background:var(--plum);color:var(--coral-soft);display:flex;align-items:center;justify-content:center;font-family:Georgia,serif;font-style:italic;font-size:1.8rem;font-weight:700}
.author-inline .a-role{font-family:'Helvetica Neue',Arial,sans-serif;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--coral);margin-bottom:4px;font-weight:700}
.author-inline .a-name{font-family:Georgia,serif;font-size:1.1rem;color:var(--plum);font-weight:700}
.author-inline .a-bio{font-size:.88rem;color:var(--mute);margin-top:4px}

/* SIDEBAR */
.sidebar{position:sticky;top:96px;display:flex;flex-direction:column;gap:36px}
.sidebar-title{font-family:'Helvetica Neue',Arial,sans-serif;font-size:.72rem;letter-spacing:.26em;text-transform:uppercase;color:var(--coral);padding-bottom:12px;border-bottom:1.5px solid var(--plum);margin-bottom:20px;font-weight:700}
.topic-list a{display:block;padding:14px 0;border-bottom:1px solid var(--line);transition:padding-left .3s}
.topic-list a:hover{padding-left:10px}
.topic-list a:hover .t-title{color:var(--coral)}
.topic-list .t-label{font-family:'Helvetica Neue',Arial,sans-serif;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--plum-soft);margin-bottom:6px;display:block;font-weight:700}
.topic-list .t-title{font-family:Georgia,serif;font-size:.98rem;color:var(--graphite);line-height:1.4;display:block;transition:color .3s}
.sidebar-block{background:var(--paper);padding:26px 22px;border-top:3px solid var(--coral)}
.sidebar-quote{background:var(--cream);padding:28px 22px;font-family:Georgia,serif;font-style:italic;font-size:1rem;line-height:1.55;color:var(--plum-dark);position:relative}
.sidebar-quote::before{content:'\2014';color:var(--coral);font-weight:700;margin-right:8px}
.sidebar-quote cite{display:block;margin-top:14px;font-style:normal;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--plum-soft);font-weight:700;font-family:'Helvetica Neue',Arial,sans-serif}
.sidebar-quote cite::before{content:''}

/* NEWSLETTER */
.newsletter{background:var(--plum);color:var(--paper);padding:80px 48px;text-align:center;position:relative;overflow:hidden;margin-top:60px}
.newsletter::before{content:'';position:absolute;width:260px;height:260px;background:var(--coral);border-radius:50%;top:-80px;right:-80px;opacity:.85}
.newsletter-inner{max-width:560px;margin:0 auto;position:relative;z-index:1}
.newsletter .kicker{color:var(--coral-soft);border-color:var(--coral-soft);margin-bottom:18px}
.newsletter .kicker::before{background:var(--coral-soft)}
.newsletter h2{font-family:Georgia,serif;font-size:clamp(1.9rem,3.6vw,2.8rem);margin-bottom:16px;color:var(--paper);line-height:1.1}
.newsletter p{max-width:440px;margin:0 auto 32px;color:rgba(250,247,242,.82);font-size:1.02rem}
.newsletter form{display:flex;max-width:480px;margin:0 auto;gap:0}
.newsletter input[type=email]{flex:1;padding:16px 20px;border:none;background:rgba(250,247,242,.96);font-family:inherit;font-size:.98rem;color:var(--graphite);outline:none;min-height:44px}
.newsletter button{padding:16px 28px;background:var(--coral);color:var(--plum-dark);border:none;font-family:'Helvetica Neue',Arial,sans-serif;font-size:.8rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:background .3s;min-height:44px}
.newsletter button:hover{background:var(--coral-soft)}

/* FOOTER */
.site-footer{background:var(--graphite);color:rgba(250,247,242,.7);padding:64px 32px 28px}
.footer-grid{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;padding-bottom:44px;border-bottom:1px solid rgba(250,247,242,.1)}
.footer-brand .brand{color:var(--coral);font-size:1.8rem}
.footer-brand .brand::after{background:var(--coral-soft)}
.footer-brand p{margin-top:14px;font-size:.88rem;line-height:1.7;max-width:300px;color:rgba(250,247,242,.55)}
.footer-col h5{font-family:'Helvetica Neue',Arial,sans-serif;font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:var(--paper);margin-bottom:18px;font-weight:700}
.footer-col a{display:block;padding:7px 0;color:rgba(250,247,242,.55);font-size:.9rem;transition:color .3s}
.footer-col a:hover{color:var(--coral)}
.footer-bottom{max-width:1400px;margin:28px auto 0;padding-top:24px;font-size:.78rem;color:rgba(250,247,242,.5);text-align:center}
.footer-bottom p{margin-bottom:8px}

/* COOKIE */
#cookie-toggle{display:none}
.cookie-banner{position:fixed;bottom:24px;right:24px;max-width:380px;background:var(--plum);color:var(--paper);padding:26px 24px;z-index:999;box-shadow:0 24px 60px -10px rgba(61,26,45,.55);transition:transform .45s,opacity .45s}
#cookie-toggle:checked~.cookie-banner{transform:translateY(220%);opacity:0;pointer-events:none}
.cookie-banner h4{font-family:Georgia,serif;font-size:1.08rem;margin-bottom:10px;color:var(--coral-soft)}
.cookie-banner p{font-size:.88rem;line-height:1.6;color:rgba(250,247,242,.88);margin-bottom:18px}
.cookie-banner p a{color:var(--coral-soft);text-decoration:underline}
.cookie-actions{display:flex;gap:10px;flex-wrap:wrap}
.cookie-actions label{padding:10px 18px;font-family:'Helvetica Neue',Arial,sans-serif;font-size:.76rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;display:inline-block;min-height:38px;transition:all .3s}
.btn-accept{background:var(--coral);color:var(--plum-dark)}
.btn-accept:hover{background:var(--coral-soft)}
.btn-decline{background:transparent;color:rgba(250,247,242,.82);border:1px solid rgba(250,247,242,.32)}
.btn-decline:hover{background:rgba(250,247,242,.08)}
.cookie-close{position:absolute;top:10px;right:14px;color:rgba(250,247,242,.6);cursor:pointer;font-size:1.3rem;padding:4px 8px;line-height:1}

/* POLICY */
.policy-page{max-width:880px;margin:0 auto;padding:60px 32px 80px}
.policy-page .kicker{margin-bottom:18px}
.policy-page h1{font-family:Georgia,serif;font-size:clamp(2rem,4vw,3.2rem);color:var(--plum);margin-bottom:22px;letter-spacing:-.01em;line-height:1.1}
.policy-intro{font-size:1.12rem;color:var(--graphite-soft);padding-bottom:32px;border-bottom:1px solid var(--line);margin-bottom:36px;font-style:italic;line-height:1.65}
.policy-page h2{font-family:Georgia,serif;font-size:1.4rem;color:var(--plum);margin:38px 0 14px;display:flex;align-items:baseline;gap:16px}
.policy-page h2::before{content:counter(policy,decimal-leading-zero);counter-increment:policy;font-family:'Helvetica Neue',Arial,sans-serif;font-size:.8rem;font-weight:700;letter-spacing:.15em;color:var(--coral)}
.policy-page{counter-reset:policy}
.policy-page p{font-size:1rem;line-height:1.75;margin-bottom:14px;color:var(--graphite)}
.policy-page p.legal-date{margin-top:48px;padding-top:24px;border-top:1px solid var(--line);font-size:.88rem;color:var(--mute);font-style:italic}

/* 404 */
.error-page{max-width:780px;margin:0 auto;padding:100px 32px 80px;text-align:center}
.error-page .big-num{font-family:Georgia,serif;font-size:clamp(6rem,18vw,14rem);line-height:.9;color:var(--plum);font-weight:700;letter-spacing:-.06em;margin-bottom:16px;font-style:italic}
.error-page .big-num span{color:var(--coral)}
.error-page h1{font-family:Georgia,serif;font-size:clamp(1.6rem,3vw,2.2rem);color:var(--plum);margin-bottom:20px}
.error-page p{font-size:1.08rem;color:var(--graphite-soft);margin-bottom:40px;max-width:520px;margin-left:auto;margin-right:auto}
.error-links{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;max-width:680px;margin:0 auto}
.error-links a{display:block;padding:22px 18px;background:var(--paper);color:var(--plum);font-family:Georgia,serif;font-size:.98rem;border-bottom:3px solid var(--coral);transition:transform .3s,box-shadow .3s;text-align:left}
.error-links a:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.error-links .el-label{font-family:'Helvetica Neue',Arial,sans-serif;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--coral);display:block;margin-bottom:6px;font-weight:700}

/* SUCCESS */
.success-page{max-width:700px;margin:0 auto;padding:110px 32px 80px;text-align:center}
.success-mark{width:90px;height:90px;margin:0 auto 36px;border-radius:50%;background:var(--coral);display:flex;align-items:center;justify-content:center;color:var(--plum-dark);font-size:2.6rem;font-family:Georgia,serif;font-weight:700;position:relative}
.success-mark::after{content:'';position:absolute;inset:-10px;border:2px solid var(--coral-soft);border-radius:50%;opacity:.5}
.success-page h1{font-family:Georgia,serif;font-size:clamp(2rem,4vw,2.8rem);color:var(--plum);margin-bottom:20px}
.success-page .lead-success{font-size:1.12rem;color:var(--graphite-soft);margin-bottom:18px}
.success-page p{color:var(--graphite-soft);margin-bottom:14px}
.btn-home{display:inline-block;margin-top:36px;padding:18px 40px;background:var(--plum);color:var(--paper);font-family:'Helvetica Neue',Arial,sans-serif;font-size:.82rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;transition:background .3s,color .3s;min-height:44px}
.btn-home:hover{background:var(--coral);color:var(--plum-dark)}

/* ARTICLE PAGE */
.article-page .hero{grid-template-columns:1fr;padding:56px 32px 40px;max-width:1100px}
.article-page .hero-text{padding-right:0;max-width:none;text-align:left}
.article-page .hero h1{font-size:clamp(2rem,4.4vw,3.6rem);max-width:900px}
.article-page .hero-img{margin-left:0;margin-top:36px;clip-path:polygon(0 0,100% 0,100% 88%,92% 100%,0 100%)}
.article-page .hero-img::before{display:none}
.article-page .hero-img img{height:420px}

/* ANIMATIONS */
@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
.hero-text{animation:fadeUp .9s ease both}
.hero-img{animation:fadeUp .9s .2s ease both}
.content>*{animation:fadeUp .8s ease both}
.sidebar>*{animation:fadeUp .8s ease both}

/* RESPONSIVE */
@media (max-width:1000px){
  .hero{grid-template-columns:1fr;padding:48px 24px 36px}
  .hero-text{padding-right:0;margin-bottom:40px}
  .hero-img{margin-left:0;clip-path:polygon(0 0,100% 0,100% 92%,88% 100%,0 100%);margin-top:8px}
  .hero-img img{height:380px}
  .hero-img::before{width:80px;height:80px;top:-28px;right:-14px}
  .layout{grid-template-columns:1fr;padding:0 24px 48px;gap:56px}
  .sidebar{position:static;top:auto}
  .editorial-cards{grid-template-columns:1fr}
  .highlight-asym{grid-template-columns:1fr}
  .highlight-asym .h-label{padding:20px;min-height:64px}
  .footer-grid{grid-template-columns:1fr 1fr}
  .error-links{grid-template-columns:1fr}
}
@media (max-width:680px){
  .site-header-inner{padding:14px 20px}
  .nav-main{display:none;position:absolute;top:66px;left:0;right:0;background:var(--bg);flex-direction:column;padding:24px 28px;border-bottom:1px solid var(--line);gap:18px}
  .nav-main.open{display:flex}
  .burger{display:block}
  .hero{padding:36px 20px 28px}
  .layout{padding:0 20px 40px}
  .newsletter{padding:56px 20px}
  .newsletter form{flex-direction:column;gap:10px}
  .newsletter button{width:100%}
  .footer-grid{grid-template-columns:1fr;gap:32px}
  .section-head{margin:56px 0 22px}
  .quote-block{padding:38px 24px;margin:44px 0}
  .quote-block blockquote{font-size:1.24rem}
  .photo-block{margin:40px 0}
  .photo-block img{height:280px}
  .editorial-card{padding:28px 22px}
  .policy-page{padding:44px 20px 60px}
  .error-page{padding:80px 20px 60px}
  .success-page{padding:80px 20px 60px}
  .cookie-banner{right:16px;left:16px;bottom:16px;max-width:none}
  .hero-meta{gap:14px;font-size:.78rem}
  .author-inline{grid-template-columns:1fr;text-align:left;padding:22px}
}