*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;overflow-x:hidden}
body{
    font-family:Georgia,"Times New Roman",serif;
    background:#0d0417;
    color:#e8dcf5;
    line-height:1.7;
    min-height:100vh;
    overflow-x:hidden;
    touch-action:manipulation;
    -webkit-tap-highlight-color:transparent;
    overscroll-behavior-x:none;
}
img,svg{max-width:100%;height:auto;display:block}
a{color:#ff86b8;text-decoration:none;transition:color .2s}
a:hover{color:#ffb8d6;text-decoration:underline}

.container{max-width:1080px;margin:0 auto;padding:0 20px;width:100%}

/* Header - now just logo */
.site-header{
    background:linear-gradient(180deg,#1a0829 0%,#0d0417 100%);
    border-bottom:1px solid #2a1240;
    padding:20px 0;
}
.header-inner{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px}
.logo-link{display:block;flex-shrink:0}
.logo-link img{width:220px;height:55px}

/* Main */
main{padding:36px 0 60px}
h1{
    font-size:34px;
    line-height:1.25;
    color:#fff;
    margin-bottom:18px;
    letter-spacing:.5px;
    font-weight:700;
    word-wrap:break-word;
    overflow-wrap:break-word;
}
h2{
    font-size:24px;
    line-height:1.3;
    color:#ffb8d6;
    margin:32px 0 14px;
    padding-bottom:8px;
    border-bottom:1px solid #2a1240;
    word-wrap:break-word;
}
h3{
    font-size:19px;
    line-height:1.35;
    color:#e8b8ff;
    margin:22px 0 10px;
    word-wrap:break-word;
}
p{margin-bottom:16px;color:#d8ccea}
strong{color:#fff}
em{color:#ff86b8;font-style:italic}
ul,ol{margin:0 0 18px 22px;color:#d8ccea}
li{margin-bottom:6px}
code{background:#2a1240;padding:2px 6px;border-radius:3px;font-size:0.9em;color:#ffb8d6}

.lead{
    font-size:18px;
    color:#e8dcf5;
    padding:16px 20px;
    background:linear-gradient(90deg,#1a0829 0%,#0d0417 100%);
    border-left:3px solid #ff2d75;
    border-radius:0 6px 6px 0;
    margin-bottom:24px;
}

/* Age warning */
.age-warning{
    background:#3a1a5c;
    color:#ffd6e8;
    text-align:center;
    padding:10px 20px;
    font-size:13px;
    letter-spacing:.5px;
    border-bottom:1px solid #4a2570;
}

/* Footer */
.site-footer{
    background:#0a0311;
    border-top:1px solid #2a1240;
    padding:40px 0 26px;
    color:#8a7ba0;
    margin-top:40px;
}
.footer-nav{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:28px;
    margin-bottom:32px;
    padding-bottom:26px;
    border-bottom:1px solid #2a1240;
}
.footer-col h4{
    color:#ffb8d6;
    font-size:14px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:1px;
    margin-bottom:12px;
    padding-bottom:8px;
    border-bottom:1px solid #2a1240;
}
.footer-col ul{
    list-style:none;
    margin:0;
    padding:0;
}
.footer-col li{margin:0 0 8px 0}
.footer-col a{
    color:#c9a8ff;
    font-size:14px;
    line-height:1.4;
    display:block;
}
.footer-col a:hover{color:#ffb8d6;text-decoration:none}
.footer-bottom{
    text-align:center;
    font-size:13px;
    color:#8a7ba0;
}
.footer-bottom p{margin:0 0 6px;color:#8a7ba0}

/* Mobile */
@media (max-width:768px){
    .container{padding:0 16px}
    h1{font-size:26px}
    h2{font-size:20px;margin:26px 0 12px}
    h3{font-size:17px}
    p,li{font-size:15px}
    .logo-link img{width:180px;height:45px}
    .lead{font-size:16px;padding:14px 16px}
    main{padding:24px 0 40px}
    .footer-nav{
        grid-template-columns:repeat(2,1fr);
        gap:22px;
    }
}
@media (max-width:420px){
    h1{font-size:22px}
    .logo-link img{width:160px;height:40px}
    .footer-nav{
        grid-template-columns:1fr;
        gap:16px;
    }
}

/* See-also full-interlink block */
.see-also{
    background:#160724;
    padding:16px 18px;
    border-radius:6px;
    border:1px solid #2a1240;
    line-height:2;
    font-size:14px;
    color:#c9a8ff;
}
.see-also a{
    color:#ff86b8;
    white-space:nowrap;
    display:inline-block;
}
@media (max-width:768px){
    .see-also{font-size:13px;line-height:2.1;padding:14px}
}

/* Footer brand */
.footer-brand{
    text-align:center;
    padding-bottom:24px;
    margin-bottom:24px;
    border-bottom:1px solid #2a1240;
}
.footer-brand img{
    display:inline-block;
    opacity:.85;
}
@media (max-width:768px){
    .footer-brand img{width:180px;height:auto}
}

/* FAQ */
.faq{
    display:flex;
    flex-direction:column;
    gap:10px;
    margin-bottom:24px;
}
.faq-item{
    background:#160724;
    border:1px solid #2a1240;
    border-radius:6px;
    overflow:hidden;
}
.faq-item summary{
    cursor:pointer;
    padding:14px 18px;
    font-weight:700;
    color:#ffb8d6;
    font-size:16px;
    list-style:none;
    position:relative;
    padding-right:44px;
    user-select:none;
    -webkit-user-select:none;
}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{
    content:"+";
    position:absolute;
    right:18px;
    top:50%;
    transform:translateY(-50%);
    color:#ff86b8;
    font-size:20px;
    font-weight:400;
    transition:transform .2s;
}
.faq-item[open] summary::after{content:"−"}
.faq-item summary:hover{color:#ffd6e8}
.faq-answer{
    padding:0 18px 16px;
    border-top:1px solid #2a1240;
}
.faq-answer p{
    margin:12px 0 0;
    color:#d8ccea;
    font-size:15px;
}
@media (max-width:768px){
    .faq-item summary{font-size:15px;padding:12px 40px 12px 14px}
    .faq-answer{padding:0 14px 14px}
    .faq-answer p{font-size:14px}
}
