/*
Theme Name: R&O Motocicletas
Theme URI: https://ryomoto.cl
Author: R&O Motocicletas
Description: Tema WooCommerce mobile-first para R&O Motocicletas. Catálogo de motos, tienda y servicio técnico.
Version: 0.6.0
Text Domain: ryomoto
Requires at least: 6.4
Requires PHP: 8.1
*/
:root{--ro-red:#e30613;--ro-black:#111;--ro-gray:#f4f4f4;--ro-border:#e5e5e5;--ro-white:#fff;--ro-max:1280px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#171717;background:#fff}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.ro-wrap{width:min(var(--ro-max),calc(100% - 32px));margin:auto}.ro-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid var(--ro-border)}.ro-header-row{height:76px;display:flex;align-items:center;gap:28px}.ro-logo img{max-height:54px;width:auto}.ro-logo-text{font-size:22px;font-weight:900}.ro-nav{display:flex;align-items:center;gap:24px;margin-left:auto;font-size:13px;font-weight:800}.ro-tools{display:flex;gap:14px;align-items:center}.ro-mobile-toggle{display:none;background:none;border:0;font-size:25px}.ro-hero{min-height:500px;background:#151515;color:#fff;display:flex;align-items:center;background-size:cover;background-position:center;position:relative}.ro-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.15))}.ro-hero-content{position:relative;z-index:2;max-width:650px;padding:70px 0}.ro-kicker{text-transform:uppercase;letter-spacing:2px;font-size:13px;font-weight:800}.ro-hero h1{font-size:clamp(38px,6vw,70px);line-height:.98;margin:12px 0 18px}.ro-hero p{font-size:19px;line-height:1.5;max-width:580px}.ro-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border-radius:4px;background:var(--ro-red);color:#fff;font-weight:800;border:2px solid var(--ro-red);cursor:pointer}.ro-btn.alt{background:#fff;color:#111;border-color:#fff}.ro-btn.outline{background:transparent;border-color:#222;color:#222}.ro-section{padding:62px 0}.ro-section.gray{background:var(--ro-gray)}.ro-title{font-size:32px;margin:0 0 8px}.ro-subtitle{color:#666;margin:0 0 28px}.ro-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.ro-card{background:#fff;border:1px solid var(--ro-border);border-radius:10px;overflow:hidden}.ro-card-body{padding:18px}.ro-card h3{margin:0 0 8px}.ro-segment{min-height:150px;display:flex;align-items:flex-end;padding:20px;background:#181818;color:#fff;border-radius:10px;font-size:21px;font-weight:900}.ro-product-type{display:inline-block;font-size:11px;font-weight:900;text-transform:uppercase;color:var(--ro-red);margin-bottom:8px}.ro-price{font-size:24px;font-weight:900;margin:10px 0}.ro-bike-card img{aspect-ratio:4/3;object-fit:contain;background:#fff}.ro-bike-meta{color:#666;font-size:14px}.ro-service-box{background:#111;color:#fff;border-radius:14px;padding:38px}.ro-service-box .ro-title{color:#fff}.ro-footer{background:#111;color:#fff;padding:45px 0 28px}.ro-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.ro-footer small{color:#aaa}.ro-page-head{padding:42px 0;background:#111;color:#fff}.ro-content{padding:48px 0}.ro-shop-layout{display:grid;grid-template-columns:260px 1fr;gap:28px}.ro-filter{border:1px solid var(--ro-border);border-radius:10px;padding:18px}.ro-filter h3{margin-top:0}.ro-chip{display:inline-block;padding:8px 12px;background:#f1f1f1;border-radius:999px;margin:3px;font-size:13px}.ro-moto-hero{background:#111;color:#fff;padding:55px 0}.ro-moto-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}.ro-moto-image{background:#fff;border-radius:14px;padding:24px}.ro-moto-title{font-size:46px;margin:6px 0}.ro-specs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:26px 0}.ro-spec{background:#202020;padding:16px;border-radius:8px}.ro-spec small{display:block;color:#aaa}.ro-spec strong{display:block;margin-top:5px}.ro-actions{display:flex;gap:10px;flex-wrap:wrap}.ro-tech{display:grid;grid-template-columns:220px 1fr;gap:30px}.ro-tech-nav{position:sticky;top:100px;height:max-content}.ro-tech-nav a{display:block;padding:12px 0;border-bottom:1px solid #ddd;font-weight:700}.ro-tech-section{padding:0 0 30px;margin-bottom:30px;border-bottom:1px solid #eee}.ro-tech-section h3{font-size:24px}.ro-notice{padding:14px 16px;background:#fff3f3;border-left:4px solid var(--ro-red);margin:18px 0}.ro-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.72);z-index:999;align-items:center;justify-content:center;padding:18px}.ro-modal.open{display:flex}.ro-modal-box{background:#fff;width:min(620px,100%);max-height:90vh;overflow:auto;border-radius:12px;padding:28px}.ro-modal-close{float:right;border:0;background:none;font-size:28px;cursor:pointer}.ro-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ro-field label{display:block;font-size:13px;font-weight:800;margin-bottom:5px}.ro-field input,.ro-field select,.ro-field textarea{width:100%;padding:12px;border:1px solid #ccc;border-radius:6px}.ro-field.full{grid-column:1/-1}.woocommerce ul.products li.product .button{background:var(--ro-red);color:#fff}.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--ro-red)}
@media(max-width:900px){.ro-header-row{height:64px}.ro-mobile-toggle{display:block}.ro-nav{display:none;position:absolute;top:64px;left:0;right:0;background:#fff;padding:18px 24px;flex-direction:column;align-items:flex-start;border-bottom:1px solid #ddd}.ro-nav.open{display:flex}.ro-tools .ro-account{display:none}.ro-grid{grid-template-columns:repeat(2,1fr)}.ro-shop-layout{display:block}.ro-filter{margin-bottom:20px}.ro-moto-grid{grid-template-columns:1fr}.ro-tech{display:block}.ro-tech-nav{position:static;display:flex;overflow:auto;gap:18px;margin-bottom:24px}.ro-tech-nav a{white-space:nowrap}.ro-specs{grid-template-columns:repeat(2,1fr)}.ro-footer-grid{grid-template-columns:1fr}.ro-hero{min-height:440px}}
@media(max-width:600px){.ro-wrap{width:min(100% - 24px,var(--ro-max))}.ro-hero{min-height:410px}.ro-hero-content{padding:48px 0}.ro-hero h1{font-size:42px}.ro-section{padding:42px 0}.ro-title{font-size:27px}.ro-grid{grid-template-columns:1fr 1fr;gap:10px}.ro-segment{min-height:110px;padding:14px;font-size:16px}.ro-moto-title{font-size:36px}.ro-form-grid{grid-template-columns:1fr}.ro-field.full{grid-column:auto}.ro-actions .ro-btn{width:100%}.ro-modal-box{padding:20px}}

/* v0.3 functional motorcycle administration */
.ro-color-options{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.ro-color-option{border:1px solid #ddd;background:#fff;border-radius:999px;padding:8px 12px;display:inline-flex;gap:8px;align-items:center;cursor:pointer}.ro-color-dot{width:18px;height:18px;border-radius:50%;border:1px solid #aaa;display:inline-block}.ro-used-data{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:18px 0}.ro-used-data>div{background:#202020;padding:14px;border-radius:8px}.ro-tech-copy{line-height:1.65}.ro-admin-note{font-size:12px;color:#666}.ro-bike-gallery-thumb{display:none}.ro-bike-gallery-thumb.active{display:block}
@media(max-width:600px){.ro-used-data{grid-template-columns:1fr}}

.ro-attribute-table{display:grid;gap:0;border:1px solid #e5e5e5;border-radius:8px;overflow:hidden}.ro-attribute-row{display:grid;grid-template-columns:minmax(160px,35%) 1fr;gap:20px;padding:12px 16px;border-bottom:1px solid #eee;background:#fff}.ro-attribute-row:last-child{border-bottom:0}.ro-attribute-row strong{font-size:14px}.ro-attribute-row span{font-size:14px}@media(max-width:640px){.ro-attribute-row{grid-template-columns:1fr;gap:4px}}

/* v0.5 · ficha de moto administrable */
.ro-moto-hero{position:relative;background-image:var(--ryo-bg-desktop);background-size:cover;background-position:center}.ro-moto-hero.has-bg .ro-moto-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.30),rgba(0,0,0,.55))}.ro-moto-hero .ro-moto-grid{position:relative;z-index:2}.ro-moto-info{position:relative;z-index:2}.ro-color-option.active{border-color:var(--ro-red);box-shadow:0 0 0 2px rgba(227,6,19,.12)}.ro-color-dot{background:#fff}.ro-feature-band{background:#fff;border-bottom:1px solid var(--ro-border);box-shadow:0 8px 24px rgba(0,0,0,.04)}.ro-feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0}.ro-feature-item{min-height:110px;display:flex;align-items:center;justify-content:center;gap:14px;padding:18px;border-right:1px solid var(--ro-border)}.ro-feature-item:last-child{border-right:0}.ro-feature-icon{width:52px;height:52px;display:flex;align-items:center;justify-content:center;flex:0 0 52px}.ro-feature-icon img{max-width:48px;max-height:48px;object-fit:contain}.ro-feature-item small{display:block;color:#777;font-size:12px;text-transform:uppercase;font-weight:800;letter-spacing:.4px}.ro-feature-item strong{display:block;font-size:19px;margin-top:4px}.ro-spec-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ro-spec-card{border:1px solid var(--ro-border);border-radius:10px;padding:16px;display:flex;gap:13px;align-items:center;background:#fff}.ro-spec-card img{width:38px;height:38px;object-fit:contain}.ro-spec-card small{display:block;color:#777;font-size:12px}.ro-spec-card strong{display:block;margin-top:4px;font-size:15px}.ro-tech-copy:empty:after{content:'Sin descripción destacada cargada.';color:#999;font-style:italic}
@media(max-width:700px){.ro-feature-grid{grid-template-columns:repeat(2,1fr)}.ro-feature-item{justify-content:flex-start;min-height:92px;border-bottom:1px solid var(--ro-border)}.ro-feature-item:nth-child(2n){border-right:0}.ro-spec-card-grid{grid-template-columns:1fr}.ro-moto-hero[data-mobile-bg]{background-image:var(--ryo-bg-mobile,var(--ryo-bg-desktop))}}
\n/* v0.6 ficha tecnica tipo acordeon */
.ro-tech{grid-template-columns:190px minmax(0,1fr);gap:32px;align-items:start}.ro-tech-nav{background:#f2f2f2;position:sticky;top:92px}.ro-tech-tab{width:100%;min-height:78px;border:0;border-bottom:1px solid #e3e3e3;background:transparent;padding:10px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;font-size:10px;font-weight:900;text-transform:uppercase;cursor:pointer;text-align:center}.ro-tech-tab img{width:30px;height:30px;object-fit:contain}.ro-tech-tab.active{background:#171027;color:#fff}.ro-tech-tab.active img{filter:brightness(0) invert(1)}.ro-tech-panel{display:none;min-height:330px}.ro-tech-panel.active{display:block}.ro-tech-panel h3{font-size:32px;margin:0 0 24px;text-transform:uppercase}.ro-spec-list{border-top:1px solid var(--ro-border)}.ro-spec-row{display:grid;grid-template-columns:minmax(180px,.7fr) 1.3fr;gap:24px;padding:15px 8px;border-bottom:1px solid var(--ro-border);align-items:center}.ro-spec-row span{color:#666}.ro-spec-row strong{font-size:15px}.ro-tech-panels{min-width:0}
@media(max-width:900px){.ro-tech{display:block}.ro-tech-nav{position:static;display:flex;overflow-x:auto;gap:0;margin:0 0 24px;background:#f2f2f2;scrollbar-width:thin}.ro-tech-tab{flex:0 0 112px;width:112px;min-height:92px;border-right:1px solid #e3e3e3;border-bottom:0}.ro-tech-panel{min-height:0}.ro-tech-panel h3{font-size:25px}.ro-spec-row{grid-template-columns:1fr;gap:5px;padding:13px 4px}}
