@import url('https://fonts.googleapis.com/css2?family=Rubik:wght@400;500;600;700;800&display=swap');

/* Artroflex site-2 - variant: flat borders, sharp accents. Prefix artv- */

.artv-sr-clip{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

.artv-standfirst{font-size:1.08rem;color:#3c4551;margin:0 0 22px}
.artv-banner-intro{min-width:0}
.artv-specialist-prose{min-width:0}
.artv-banner-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.artv-banner-note{font-size:.9rem;color:var(--artv-accent2);font-weight:600}
.artv-banner-visual img{border:1px solid var(--artv-border)}

.artv-score{margin:34px 0}
.artv-score-card{border:2px solid var(--artv-primary)}
.artv-score-row{display:flex;justify-content:space-between;gap:16px;padding:13px 20px;border-bottom:1px solid var(--artv-border)}
.artv-score-row:last-child{border-bottom:0}
.artv-score-row span:first-child{color:#5a6472;font-weight:500}
.artv-score-row span:last-child{font-weight:600;text-align:right}
.artv-starrow{color:var(--artv-accent2)}

.artv-contents{border:1px solid var(--artv-border);border-left:4px solid var(--artv-accent2);padding:22px 26px;margin:10px 0 40px;background:#fbfcfe}
.artv-contents-title{margin:0 0 10px;font-weight:700;color:var(--artv-primary);font-size:1.05rem}
.artv-contents ol{margin:0;padding-left:20px;columns:2;column-gap:32px}
.artv-contents li{margin:6px 0;break-inside:avoid}
.artv-contents a{color:var(--artv-surface);text-decoration:none}
.artv-contents a:hover{color:var(--artv-accent2);text-decoration:underline}

.artv-block{padding:30px 0;border-bottom:1px solid var(--artv-border)}
.artv-block:last-of-type{border-bottom:0}
.artv-block h2{font-size:1.5rem;line-height:1.25;margin:0 0 16px;color:var(--artv-primary)}
.artv-block p{margin:0 0 16px}
.artv-shaded{background:#f6f8fb;border-left:4px solid var(--artv-primary);padding:26px 26px;margin:14px 0}

.artv-media{margin:22px 0 0}
.artv-media img{border:1px solid var(--artv-border);width:100%}
.artv-media figcaption{margin-top:10px;font-size:.9rem;color:#6a7380}

.artv-spec-wrap{overflow-x:auto;border:1px solid var(--artv-border)}
.artv-spec{width:100%;border-collapse:collapse;min-width:520px}
.artv-spec th{background:var(--artv-primary);color:#fff;text-align:left;padding:13px 18px;font-size:.95rem}
.artv-spec td{padding:12px 18px;border-top:1px solid var(--artv-border);vertical-align:top}
.artv-spec td:first-child{font-weight:600;color:var(--artv-primary);white-space:nowrap}

.artv-guide{margin:8px 0 18px;padding:0;list-style:none;counter-reset:artvguide}
.artv-guide li{position:relative;padding:9px 0 9px 44px;counter-increment:artvguide}
.artv-guide li::before{content:counter(artvguide);position:absolute;left:0;top:7px;width:28px;height:28px;border-radius:4px;background:var(--artv-accent2);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;font-size:.9rem}

.artv-ratings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:8px}
.artv-rating{margin:0;background:#fff;border:1px solid var(--artv-border);border-left:3px solid var(--artv-accent2);padding:18px 20px}
.artv-rating-stars{color:#e6a817;font-size:1rem;letter-spacing:2px;margin-bottom:8px}
.artv-rating p{margin:0 0 10px;color:#3c4551}
.artv-rating cite{font-style:normal;font-weight:700;color:var(--artv-primary);font-size:.92rem}

.artv-specialist{display:grid;grid-template-columns:140px minmax(0,1fr);gap:24px;align-items:start}
.artv-specialist-photo{width:140px;height:140px;object-fit:cover;border:1px solid var(--artv-border)}
.artv-specialist-sign{font-weight:700;color:var(--artv-primary);margin-top:4px}

.artv-order-wrap{text-align:center;margin:24px 0 4px}
.artv-order-lg{font-size:1.05rem;padding:15px 38px}
.artv-order-note{font-size:.9rem;color:#6a7380;margin-top:12px}

.artv-qna details{border:1px solid var(--artv-border);margin-bottom:10px;background:#fff}
.artv-qna summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;padding:15px 20px;list-style:none}
.artv-qna summary::-webkit-details-marker{display:none}
.artv-qna summary h3{margin:0;font-size:1.03rem;color:var(--artv-primary);font-weight:600}
.artv-qna summary::after{content:"+";font-size:1.5rem;color:var(--artv-accent2);flex:0 0 auto;line-height:1}
.artv-qna details[open] summary::after{content:"\2212"}
.artv-qna details p{margin:0;padding:0 20px 16px}

.artv-writer-box{margin-top:10px}
.artv-writer{display:grid;grid-template-columns:92px minmax(0,1fr);gap:18px;align-items:center;border:1px solid var(--artv-border);border-left:4px solid var(--artv-primary);padding:22px 24px}
.artv-writer-img{width:92px;height:92px;object-fit:cover;border-radius:4px}
.artv-writer-name{margin:0;font-weight:700;color:var(--artv-primary);font-size:1.1rem}
.artv-writer-role{margin:2px 0 8px;color:var(--artv-accent2);font-weight:600;font-size:.92rem}
.artv-writer-bio{margin:0;font-size:.94rem;color:#4a5460}
.artv-notice{margin-top:18px;font-size:.85rem;color:#6a7380;border:1px solid var(--artv-border);padding:14px 18px}

.artv-footer{background:var(--artv-primary);color:#dfe7f1;margin-top:20px}
.artv-foot-in{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:34px 20px 18px}
.artv-foot-logo{font-weight:700;font-size:1.15rem;color:#fff;margin:0 0 6px}
.artv-foot-logo b{color:#f0a89f}
.artv-foot-tag{margin:0;font-size:.92rem;color:#b9c6d8}
.artv-foot-nav{display:flex;gap:20px;flex-wrap:wrap;align-items:center}
.artv-foot-nav a{color:#dfe7f1;text-decoration:none;font-size:.92rem}
.artv-foot-nav a:hover{color:#fff;text-decoration:underline}
.artv-foot-legal{border-top:1px solid rgba(255,255,255,.15);padding:16px 20px 26px;font-size:.82rem;color:#a9b8cc}
.artv-foot-legal p{margin:4px 0}

@media(max-width:860px){
  .artv-block h2{font-size:1.32rem}
  .artv-contents ol{columns:1}
  .artv-ratings{grid-template-columns:1fr}
  .artv-specialist{grid-template-columns:1fr;gap:16px}
  .artv-specialist-photo{width:120px;height:120px}
  .artv-shaded{padding:20px 18px}
}
@media(max-width:480px){
  body{font-size:16px}
  .artv-score-row{flex-direction:column;gap:2px}
  .artv-score-row span:last-child{text-align:left}
  .artv-order-lg{width:100%;text-align:center}
}
