.osanio-v2 { --ink:var(--osanio-ink,#3c3531); --deep:var(--osanio-dark,#312c29); --muted:var(--osanio-ink-soft,#827873); --accent:var(--osanio-warm-dark,#b89561); --gold:var(--osanio-warm,#d5ba8d); --ivory:var(--osanio-cream,#f1ece7); --paper:var(--osanio-paper,#fbfaf8); --line:var(--osanio-border,#ded8d2); }
.osanio-v2 * { box-sizing:border-box; }
.osanio-v2 main,.osanio-v2 section,.osanio-v2 header,.osanio-v2 footer,.osanio-v2 article,.osanio-v2 div,.osanio-v2 a { min-width:0; }
.osanio-v2 h1,.osanio-v2 h2,.osanio-v2 h3,.osanio-v2 p,.osanio-v2 span,.osanio-v2 strong,.osanio-v2 small { overflow-wrap:break-word; }
.osanio-v2 { scroll-behavior:smooth; background:#e8e5e1; }
.osanio-v2 { margin:0; background:var(--paper); color:var(--ink); font-family:var(--osanio-font-body,Inter,Arial,sans-serif); }
.osanio-v2 a { color:inherit; text-decoration:none; }
.osanio-v2 img { display:block; max-width:100%; }
.osanio-v2 .container { width:min(var(--osanio-container,1180px),calc(100% - (2 * var(--osanio-gutter,40px)))); margin:0 auto; }
.osanio-v2 .social-rail { position:fixed; z-index:999; top:50%; right:18px; translate:0 -50%; display:flex; flex-direction:column; gap:8px; }
.osanio-v2 .social-link { position:relative; width:42px; height:42px; display:grid; place-items:center; border:1px solid rgba(213,186,141,.52); background:rgba(49,44,41,.92); color:#f1ece7; box-shadow:0 8px 24px rgba(31,27,24,.13); transition:color .2s,border-color .2s,background-color .2s,transform .2s; }
.osanio-v2 .social-link:hover,.osanio-v2 .social-link:focus-visible { border-color:currentColor; background:#211e1c; transform:translateX(-3px); outline:0; }
.osanio-v2 .social-mark { width:20px; height:20px; display:grid; place-items:center; color:#e4cfaa; }
.osanio-v2 .social-mark svg { width:20px; height:20px; display:block; fill:currentColor; }
.osanio-v2 .social-name { position:absolute; right:50px; top:50%; padding:7px 10px; translate:8px -50%; opacity:0; visibility:hidden; background:#211e1c; color:#f1ece7; font-size:9px; letter-spacing:.08em; white-space:nowrap; transition:opacity .2s,translate .2s,visibility .2s; }
.osanio-v2 .social-link:hover .social-name,.osanio-v2 .social-link:focus-visible .social-name { translate:0 -50%; opacity:1; visibility:visible; }
.osanio-v2 .social-link--whatsapp:hover,.osanio-v2 .social-link--whatsapp:focus-visible { color:#25d366; }
.osanio-v2 .social-link--facebook:hover,.osanio-v2 .social-link--facebook:focus-visible { color:#1877f2; }
.osanio-v2 .social-link--linkedin:hover,.osanio-v2 .social-link--linkedin:focus-visible { color:#0a66c2; }
.osanio-v2 .social-link--tiktok:hover,.osanio-v2 .social-link--tiktok:focus-visible { color:#ff4f7b; }
.osanio-v2 .social-link--youtube:hover,.osanio-v2 .social-link--youtube:focus-visible { color:#f00; }
.osanio-v2 .mobile-whatsapp { display:none; }
.osanio-v2 .hero { position:relative; min-height:720px; padding-top:118px; overflow:hidden; background-color:#312c29; background-image:url('../images/hero.jpg'); background-position:center 67%; background-size:136% auto; background-repeat:no-repeat; color:#fff; }
.osanio-v2 .hero-video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.osanio-v2 .hero-shade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(38,33,30,.82) 0%,rgba(38,33,30,.57) 44%,rgba(38,33,30,.14) 78%),linear-gradient(0deg,rgba(24,21,19,.34),transparent 54%); }
.osanio-v2 .hero-content { position:relative; z-index:1; padding-top:135px; }
.osanio-v2 .hero-kicker,.osanio-v2 .eyebrow { margin:0 0 15px; color:var(--accent); font-size:10px; font-weight:700; letter-spacing:.22em; }
.osanio-v2 .hero-kicker { color:#e0c79e; }
.osanio-v2 .hero h1,.osanio-v2 .section-heading h2,.osanio-v2 .proof-content h2,.osanio-v2 .process-heading h2,.osanio-v2 .case-heading h2,.osanio-v2 .news-heading h2,.osanio-v2 .closing h2 { margin:0; font-family:var(--osanio-font-heading,Georgia,"Times New Roman",serif); font-weight:400; letter-spacing:-.045em; }
.osanio-v2 .hero h1 { max-width:780px; font-size:69px; line-height:1.02; }
.osanio-v2 em { color:var(--gold); font-style:italic; font-weight:400; }
.osanio-v2 .hero .hero-title-primary { color:#fff !important; }
.osanio-v2 .hero h1 em { color:var(--gold) !important; }
.osanio-v2 .hero-copy { max-width:630px; margin:25px 0 0; color:rgba(255,255,255,.72); font-size:15px; line-height:1.8; }
.osanio-v2 .hero-actions { margin-top:33px; display:flex; align-items:center; gap:30px; }
.osanio-v2 .button { height:50px; padding:0 22px; display:inline-flex; align-items:center; gap:38px; font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.osanio-v2 .button-light { background:#f3eee8; color:var(--ink); }
.osanio-v2 .text-link { display:inline-flex; align-items:center; gap:16px; font-size:11px; text-transform:uppercase; letter-spacing:.12em; }
.osanio-v2 .trust-strip { min-height:92px; display:grid; grid-template-columns:repeat(4,1fr); padding:0 max(40px,calc((100vw - 1180px)/2)); background:var(--ivory); }
.osanio-v2 .trust-strip div { padding:0 27px; border-right:1px solid #d8d1ca; display:flex; align-items:center; gap:16px; }
.osanio-v2 .trust-strip div:first-child { padding-left:0; }
.osanio-v2 .trust-strip div:last-child { border-right:0; }
.osanio-v2 .trust-strip span { color:var(--accent); font-family:Georgia,serif; font-size:17px; }
.osanio-v2 .trust-strip strong { font-size:11px; font-weight:600; line-height:1.5; }
.osanio-v2 .portfolio { padding:104px 0 110px; background:#fff; overflow:hidden; }
.osanio-v2 .split-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:70px; }
.osanio-v2 .section-heading h2,.osanio-v2 .process-heading h2,.osanio-v2 .news-heading h2 { font-size:48px; line-height:1.07; }
.osanio-v2 .heading-copy { max-width:440px; margin-bottom:4px; color:var(--muted); font-size:14px; line-height:1.75; }
.osanio-v2 .heading-copy p { margin:0; }
.osanio-v2 .heading-copy a { display:inline-flex; gap:13px; margin-top:18px; padding-bottom:6px; border-bottom:1px solid #c7b9a8; color:var(--ink); font-size:10px; font-weight:700; letter-spacing:.11em; text-transform:uppercase; }
.osanio-v2 .package-panel { min-height:420px; margin-top:48px; display:grid; grid-template-columns:1.2fr .8fr; align-items:center; }
.osanio-v2 .package-image { min-height:420px; overflow:hidden; }
.osanio-v2 .package-image img { width:100%; height:100%; object-fit:cover; }
.osanio-v2 .package-copy { width:92%; min-height:346px; padding:43px 40px; justify-self:end; display:flex; flex-direction:column; justify-content:center; background:#f1ede8; }
.osanio-v2 .panel-index { color:var(--accent); font-size:9px; font-weight:700; letter-spacing:.17em; }
.osanio-v2 .package-copy h3 { margin:22px 0 18px; font-family:Georgia,serif; font-size:31px; font-weight:400; line-height:1.18; letter-spacing:-.03em; }
.osanio-v2 .package-copy p { margin:0; color:var(--muted); font-size:13px; line-height:1.8; }
.osanio-v2 .package-tags { margin-top:30px; display:flex; flex-wrap:wrap; gap:8px; }
.osanio-v2 .package-tags span { padding:8px 12px; border:1px solid #d2c8bd; background:rgba(255,255,255,.45); color:#726861; font-size:9px; letter-spacing:.08em; text-transform:uppercase; }
.osanio-v2 .category-rail { width:min(1370px,calc(100% - 40px)); margin:18px auto 0; display:grid; grid-template-columns:repeat(5,1fr); gap:14px; }
.osanio-v2 .category-card { position:relative; display:block; overflow:hidden; background:#fff; }
.osanio-v2 .category-card img { width:100%; height:auto; aspect-ratio:auto; object-fit:contain; transition:transform .4s ease; }
.osanio-v2 .category-card:hover img { transform:scale(1.025); }
.osanio-v2 .solutions-section { position:relative; padding:105px 0 86px; overflow:hidden; background:radial-gradient(circle at 92% 5%,rgba(184,149,97,.16),transparent 27%),var(--ink); color:#fff; }
.osanio-v2 .solutions-section:before { content:"OSANIO"; position:absolute; right:-16px; top:29px; color:rgba(255,255,255,.025); font-size:180px; font-weight:700; letter-spacing:-.06em; line-height:1; }
.osanio-v2 .solutions-heading { position:relative; display:flex; align-items:flex-start; gap:70px; }
.osanio-v2 .solutions-intro { flex:0 0 42%; }
.osanio-v2 .eyebrow.light { color:#d7bd91; }
.osanio-v2 .solutions-intro h2 { margin:0; font-family:Georgia,serif; font-size:58px; font-weight:400; line-height:1.08; letter-spacing:-.045em; }
.osanio-v2 .solutions-copy { flex:1; padding-top:28px; }
.osanio-v2 .solutions-copy>p { max-width:550px; margin:0; color:rgba(255,255,255,.65); font-size:15px; line-height:1.85; }
.osanio-v2 .capability-line { margin-top:26px; padding-top:19px; border-top:1px solid rgba(255,255,255,.14); display:flex; flex-wrap:wrap; gap:15px 25px; color:rgba(255,255,255,.43); font-size:8px; letter-spacing:.14em; }
.osanio-v2 .solution-grid { position:relative; margin-top:57px; display:grid; grid-template-columns:repeat(4,1fr); border:1px solid rgba(255,255,255,.17); }
.osanio-v2 .solution-card { min-height:420px; padding:27px; display:flex; flex-direction:column; overflow:hidden; background:rgba(255,255,255,.018); border-right:1px solid rgba(255,255,255,.17); transition:.25s; }
.osanio-v2 .solution-card:last-child { border-right:0; }
.osanio-v2 .solution-card:hover,.osanio-v2 .solution-card:focus-visible { background:#f5f0e9; color:var(--ink); transform:translateY(-6px); outline:2px solid #d6bd94; outline-offset:-2px; }
.osanio-v2 .card-topline { display:flex; align-items:flex-start; justify-content:space-between; color:rgba(255,255,255,.35); font-size:11px; letter-spacing:.18em; }
.osanio-v2 .solution-icon { width:43px; height:43px; color:#d6bd94; }
.osanio-v2 .solution-icon svg { width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.45; stroke-linecap:round; stroke-linejoin:round; }
.osanio-v2 .audience { min-height:36px; margin:34px 0 10px; color:#d6bd94; font-size:8px; font-weight:700; line-height:1.55; letter-spacing:.11em; }
.osanio-v2 .solution-card h3 { min-height:58px; margin:0 0 14px; color:#fff !important; font-family:Georgia,serif; font-size:24px; font-weight:400; line-height:1.2; }
.osanio-v2 .description { margin:0; color:rgba(255,255,255,.58); font-size:12px; line-height:1.75; }
.osanio-v2 .benefit { margin:18px 0 0; padding-top:16px; border-top:1px solid rgba(255,255,255,.1); display:flex; gap:9px; color:rgba(255,255,255,.74); font-size:10px; line-height:1.5; }
.osanio-v2 .benefit span { color:#d6bd94; }
.osanio-v2 .card-link { margin-top:auto; padding-top:22px; display:flex; align-items:center; justify-content:space-between; color:#fff !important; font-size:9px; font-weight:700; text-transform:uppercase; letter-spacing:.13em; }
.osanio-v2 .arrow { font-size:18px; font-weight:300; }
.osanio-v2 .solution-card:hover .card-topline,.osanio-v2 .solution-card:hover .description,.osanio-v2 .solution-card:focus-visible .card-topline,.osanio-v2 .solution-card:focus-visible .description { color:#756c67 !important; }
.osanio-v2 .solution-card:hover h3,.osanio-v2 .solution-card:hover .card-link,.osanio-v2 .solution-card:focus-visible h3,.osanio-v2 .solution-card:focus-visible .card-link { color:var(--ink) !important; }
.osanio-v2 .solution-card:hover .benefit,.osanio-v2 .solution-card:focus-visible .benefit { color:#514a46 !important; border-color:rgba(60,53,49,.13); }
.osanio-v2 .solutions-note { margin-top:37px; display:flex; align-items:center; gap:20px; }
.osanio-v2 .solutions-note p { margin:0; color:rgba(255,255,255,.45); font-size:10px; letter-spacing:.045em; text-align:center; }
.osanio-v2 .note-line { flex:1; height:1px; background:rgba(255,255,255,.11); }
.osanio-v2 .proof-section { padding:112px 0 122px; background:#f6f3ef; }
.osanio-v2 .proof-layout { display:grid; grid-template-columns:1fr 1fr; gap:58px; align-items:start; }
.osanio-v2 .proof-visual { width:100%; padding-top:68px; }
.osanio-v2 .proof-main { width:100%; height:auto; object-fit:contain; }
.osanio-v2 .proof-content h2 { font-size:49px; line-height:1.08; }
.osanio-v2 .proof-lead { margin:23px 0 30px; color:var(--muted); font-size:14px; line-height:1.8; }
.osanio-v2 .proof-grid { border-top:1px solid var(--line); }
.osanio-v2 .proof-grid article { min-height:104px; padding:21px 0; display:grid; grid-template-columns:44px 1fr; border-bottom:1px solid var(--line); }
.osanio-v2 .proof-grid article>span { color:var(--accent); font-family:Georgia,serif; font-size:15px; }
.osanio-v2 .proof-grid h3 { margin:0 0 6px; font-size:13px; }
.osanio-v2 .proof-grid p { margin:0; color:var(--muted); font-size:11px; line-height:1.65; }
.osanio-v2 .supply-choice { margin-top:30px; padding:18px 20px; display:grid; grid-template-columns:1fr 1fr auto; gap:20px; align-items:center; background:var(--ink); color:#fff; }
.osanio-v2 .supply-choice div+div { padding-left:20px; border-left:1px solid rgba(255,255,255,.18); }
.osanio-v2 .supply-choice small { display:block; margin-bottom:5px; color:#cdb183; font-size:7px; letter-spacing:.14em; }
.osanio-v2 .supply-choice strong { font-family:Georgia,serif; font-size:16px; font-weight:400; }
.osanio-v2 .process-section { padding:98px 0 108px; background:#fff; }
.osanio-v2 .steps-grid { margin-top:43px; display:grid; grid-template-columns:repeat(6,1fr); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.osanio-v2 .step-card { position:relative; min-height:154px; padding:24px 19px; border-right:1px solid var(--line); }
.osanio-v2 .step-card:last-child { border-right:0; }
.osanio-v2 .step-card span { color:var(--accent); font-size:9px; letter-spacing:.15em; }
.osanio-v2 .step-card h3 { max-width:120px; margin:39px 0 0; font-size:12px; font-weight:600; line-height:1.5; }
.osanio-v2 .step-card i { position:absolute; right:-9px; top:65px; z-index:1; width:18px; height:18px; border-radius:50%; display:grid; place-items:center; background:#fff; color:#b9aca0; font-size:10px; font-style:normal; }
.osanio-v2 .case-section { padding:108px 0 120px; background:var(--ink); color:#fff; }
.osanio-v2 .case-heading h2 { font-size:51px; line-height:1.05; }
.osanio-v2 .case-heading-link { display:block; }
.osanio-v2 .case-heading h2,.osanio-v2 .case-card h3 { color:#fff !important; }
.osanio-v2 .case-heading h2 em { color:var(--gold) !important; }
.osanio-v2 .light-copy { color:rgba(255,255,255,.55); }
.osanio-v2 .light-copy a { color:#fff; border-color:rgba(255,255,255,.3); }
.osanio-v2 .case-grid { margin-top:50px; display:grid; grid-template-columns:1.18fr .82fr; gap:18px; }
.osanio-v2 .case-card { position:relative; overflow:hidden; background:#292522; }
.osanio-v2 .case-card:focus-visible { outline:2px solid #d6bd94; outline-offset:3px; }
.osanio-v2 .featured-case { min-height:590px; }
.osanio-v2 .featured-case>img { width:100%; height:590px; object-fit:cover; }
.osanio-v2 .featured-case>img.real-order-image--loading { object-position:50% 52%; }
.osanio-v2 .featured-case:after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(31,27,25,.94) 0%,rgba(31,27,25,.1) 65%); }
.osanio-v2 .case-overlay { position:absolute; z-index:1; left:0; right:0; bottom:0; padding:43px; }
.osanio-v2 .case-overlay span,.osanio-v2 .case-info span { color:#d2b787; font-size:8px; font-weight:700; letter-spacing:.14em; }
.osanio-v2 .case-overlay h3 { max-width:500px; margin:11px 0 12px; font-family:Georgia,serif; font-size:29px; font-weight:400; line-height:1.15; }
.osanio-v2 .case-overlay p { max-width:520px; margin:0; color:rgba(255,255,255,.62); font-size:11px; line-height:1.7; }
.osanio-v2 .case-overlay i { display:inline-block; margin-top:21px; font-size:9px; font-style:normal; text-transform:uppercase; letter-spacing:.13em; }
.osanio-v2 .case-stack { display:grid; grid-template-rows:1fr 1fr; gap:18px; }
.osanio-v2 .compact-case { min-height:286px; display:grid; grid-template-columns:44% 56%; }
.osanio-v2 .compact-case img { width:100%; height:100%; object-fit:cover; }
.osanio-v2 .compact-case img.real-order-image--sample { object-position:50% 48%; }
.osanio-v2 .compact-case img.real-order-image--packing { object-position:52% 58%; }
.osanio-v2 .case-info { position:relative; padding:28px; display:flex; flex-direction:column; justify-content:center; }
.osanio-v2 .case-info h3 { margin:11px 0; font-family:Georgia,serif; font-size:20px; font-weight:400; line-height:1.25; }
.osanio-v2 .case-info p { margin:0; color:rgba(255,255,255,.48); font-size:10px; line-height:1.65; }
.osanio-v2 .case-info i { position:absolute; right:18px; top:18px; color:rgba(255,255,255,.35); font-size:9px; font-style:normal; }
.osanio-v2 .news-section { padding:108px 0 118px; background:#f8f6f3; }
.osanio-v2 .news-grid { margin-top:47px; display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.osanio-v2 .news-card { background:#fff; transition:transform .25s,box-shadow .25s; }
.osanio-v2 .news-card:hover { transform:translateY(-5px); box-shadow:0 18px 46px rgba(54,45,39,.1); }
.osanio-v2 .news-image { position:relative; height:255px; display:block; overflow:hidden; }
.osanio-v2 .news-image img { width:100%; height:100%; object-fit:cover; transition:transform .35s; }
.osanio-v2 .news-card:hover img { transform:scale(1.025); }
.osanio-v2 .news-image>.news-date { position:absolute; left:0; bottom:0; padding:10px 13px; background:var(--ink); color:#e0c596; font-size:8px; letter-spacing:.14em; }
.osanio-v2 .news-image--empty { display:grid; place-items:center; background:linear-gradient(135deg,#3c3531,#65594f); color:#e0c596; }
.osanio-v2 .news-no-image { font-family:Georgia,serif; font-size:24px; letter-spacing:.02em; }
.osanio-v2 .news-copy { min-height:190px; height:auto; padding:25px 27px; display:flex; flex-direction:column; overflow:visible; }
.osanio-v2 .news-copy small { color:#a29a95; font-size:8px; letter-spacing:.13em; }
.osanio-v2 .news-copy h3 { min-height:0; height:auto; max-height:none; margin:14px 0 25px; overflow:visible; font-family:Georgia,serif; font-size:21px; font-weight:400; line-height:1.32; white-space:normal; overflow-wrap:anywhere; }
.osanio-v2 .news-copy h3 a { color:var(--ink) !important; }
.osanio-v2 .news-copy>p { margin:-12px 0 22px; color:var(--muted); font-size:12px; line-height:1.7; }
.osanio-v2 .read-link { margin-top:auto; padding-top:15px; border-top:1px solid var(--line); display:flex; justify-content:space-between; font-size:9px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.osanio-v2 .read-link i { color:var(--accent); font-style:normal; }
.osanio-v2 .news-actions { position:static !important; inset:auto !important; float:none !important; margin:44px auto 0 !important; display:flex; justify-content:center; clear:both; }
.osanio-v2 .button-outline { border:1px solid #b9aa9e; color:var(--ink); }
.osanio-v2 .home-news-empty { margin-top:42px; padding:42px 30px; border:1px solid var(--line); background:#fff; text-align:center; }
.osanio-v2 .home-news-empty p { margin:0; color:var(--muted); font-size:13px; line-height:1.7; }
.osanio-v2 .closing { position:relative; padding:96px 0; overflow:hidden; background:linear-gradient(90deg,rgba(43,38,35,.96),rgba(43,38,35,.76)),url('../images/delivery.jpg') center 52%/cover; color:#fff; }
.osanio-v2 .closing:after { content:"OSANIO"; position:absolute; left:12%; bottom:-58px; color:rgba(255,255,255,.025); font-size:190px; font-weight:700; letter-spacing:-.06em; }
.osanio-v2 .closing-inner { position:relative; z-index:1; display:grid; grid-template-columns:.9fr 1.1fr; gap:54px; align-items:center; }
.osanio-v2 .closing h2 { font-size:52px; line-height:1.07; }
.osanio-v2 .closing .closing-title-primary { color:#fff !important; }
.osanio-v2 .closing h2 em { color:var(--gold) !important; }
.osanio-v2 .closing-copy>p:not(.eyebrow) { max-width:610px; margin:23px 0 31px; color:rgba(255,255,255,.62); font-size:13px; line-height:1.8; }
.osanio-v2 .closing-actions { display:flex; align-items:center; gap:30px; }
.osanio-v2 .button-gold { background:#c8a774; color:#fff; }
.osanio-v2 .contact-panel { display:grid; grid-template-columns:minmax(0,1fr) minmax(190px,220px); gap:16px; align-items:start; }
.osanio-v2 .contact-card { padding:28px 26px; border:1px solid rgba(255,255,255,.2); background:rgba(20,18,17,.34); backdrop-filter:blur(8px); }
.osanio-v2 .contact-label { margin:0 0 17px; color:#d7bd91; font-size:8px; font-weight:700; letter-spacing:.18em; }
.osanio-v2 .contact-line { position:relative; padding:18px 28px 18px 0; display:block; border-top:1px solid rgba(255,255,255,.14); }
.osanio-v2 .contact-line small,.osanio-v2 .contact-social small { display:block; margin-bottom:7px; color:rgba(255,255,255,.42); font-size:7px; letter-spacing:.16em; }
.osanio-v2 .contact-line strong { font-family:Georgia,serif; font-size:16px; font-weight:400; }
.osanio-v2 .contact-line>span { position:absolute; top:27px; right:0; color:#d7bd91; }
.osanio-v2 .contact-location { padding:17px 0; border-top:1px solid rgba(255,255,255,.14); }
.osanio-v2 .contact-location small { display:block; margin-bottom:7px; color:rgba(255,255,255,.42); font-size:7px; letter-spacing:.16em; }
.osanio-v2 .contact-location strong { display:block; color:#fff; font-family:Georgia,serif; font-size:14px; font-weight:400; line-height:1.35; }
.osanio-v2 .contact-location span { display:block; margin-top:6px; color:rgba(255,255,255,.56); font-size:9px; line-height:1.55; }
.osanio-v2 .contact-social { padding-top:16px; border-top:1px solid rgba(255,255,255,.14); }
.osanio-v2 .contact-social>div { display:flex; flex-wrap:wrap; gap:8px 13px; }
.osanio-v2 .contact-social a { color:#f1ece7; font-size:8px; font-weight:700; letter-spacing:.07em; text-transform:uppercase; }
.osanio-v2 .contact-social a:hover,.osanio-v2 .contact-social a:focus-visible { color:#d7bd91; }
.osanio-v2 .qr-card { padding:0; border:0; background:transparent; color:#f1ece7; }
.osanio-v2 .qr-card p { margin:0 0 11px; color:#d7bd91; font-size:8px; font-weight:700; letter-spacing:.16em; text-align:center; text-transform:uppercase; }
.osanio-v2 .qr-card img { width:100%; height:auto; padding:0; object-fit:contain; background:transparent; }
.osanio-v2 .site-footer { padding:70px 0 25px; background:#211e1c; color:rgba(255,255,255,.55); }
.osanio-v2 .footer-grid { display:grid; grid-template-columns:1.45fr repeat(4,1fr); gap:58px; }
.osanio-v2 .footer-brand img { width:112px; filter:brightness(0) invert(1); opacity:.92; }
.osanio-v2 .footer-brand p { max-width:260px; margin:24px 0 19px; font-size:11px; line-height:1.75; }
.osanio-v2 .footer-brand>a { color:#d7bd91; font-size:11px; }
.osanio-v2 .site-footer h3 { margin:0 0 22px; color:#fff; font-size:9px; letter-spacing:.16em; text-transform:uppercase; }
.osanio-v2 .site-footer nav,.osanio-v2 .footer-connect { display:flex; flex-direction:column; align-items:flex-start; gap:12px; }
.osanio-v2 .site-footer nav a,.osanio-v2 .footer-connect a { font-size:10px; transition:color .2s; }
.osanio-v2 .site-footer nav a:hover,.osanio-v2 .footer-connect a:hover { color:#d7bd91; }
.osanio-v2 .footer-connect .footer-social-link--youtube:hover,.osanio-v2 .footer-connect .footer-social-link--youtube:focus-visible { color:#f00; }
.osanio-v2 .footer-connect p { margin:9px 0 0; font-size:10px; line-height:1.65; }
.osanio-v2 .footer-connect p strong { color:rgba(255,255,255,.78); font-weight:600; }
.osanio-v2 .footer-bottom { margin-top:54px; padding-top:22px; border-top:1px solid rgba(255,255,255,.1); display:flex; align-items:center; justify-content:space-between; font-size:8px; letter-spacing:.08em; }
.osanio-v2 .footer-bottom div { display:flex; gap:24px; }

/* Explicit dark-surface colors prevent legacy theme heading rules from winning. */
.osanio-v2 .solutions-section h2,
.osanio-v2 .solutions-section .solution-card h3,
.osanio-v2 .case-section h2,
.osanio-v2 .case-section h3,
.osanio-v2 .closing h2,
.osanio-v2 .closing .contact-card strong,
.osanio-v2 .site-footer h3 { color:#fff !important; }
.osanio-v2 .solutions-section .description { color:rgba(255,255,255,.66) !important; }
.osanio-v2 .solutions-section .benefit { color:rgba(255,255,255,.82) !important; }
.osanio-v2 .solutions-section .card-link { color:#fff !important; }
.osanio-v2 .solutions-section .solution-card:is(:hover,:focus-visible) h3,
.osanio-v2 .solutions-section .solution-card:is(:hover,:focus-visible) .card-link { color:var(--ink) !important; }
.osanio-v2 .solutions-section .solution-card:is(:hover,:focus-visible) .description { color:#756c67 !important; }
.osanio-v2 .solutions-section .solution-card:is(:hover,:focus-visible) .benefit { color:#514a46 !important; }

/* Plugin-owned News archive and article templates. */
.osanio-v2 .news-page-hero { min-height:370px; padding:150px 0 64px; display:flex; align-items:flex-end; background:linear-gradient(90deg,rgba(43,37,34,.9),rgba(43,37,34,.58)),url('../images/quality.jpg') center/cover; color:#fff; }
.osanio-v2 .news-page-hero .eyebrow { color:#d7bd91; }
.osanio-v2 .news-page-hero h1 { margin:0; color:#fff !important; font-family:var(--osanio-font-heading,Georgia,"Times New Roman",serif); font-size:clamp(44px,5vw,64px); font-weight:400; line-height:1.05; letter-spacing:-.04em; }
.osanio-v2 .news-page-hero p:last-child { max-width:690px; margin:20px 0 0; color:rgba(255,255,255,.72); font-size:14px; line-height:1.75; }
.osanio-v2 .news-archive { padding:92px 0 108px; background:#f8f6f3; }
.osanio-v2 .news-archive .news-grid { margin-top:0; }
.osanio-v2 .news-empty { padding:70px 40px; border:1px solid var(--line); background:#fff; text-align:center; }
.osanio-v2 .news-empty h2 { margin:0 0 14px; color:var(--ink) !important; font-family:Georgia,serif; font-size:34px; font-weight:400; }
.osanio-v2 .news-empty p { max-width:570px; margin:0 auto; color:var(--muted); font-size:13px; line-height:1.75; }
.osanio-v2 .news-pagination { margin-top:48px; display:flex; justify-content:center; }
.osanio-v2 .news-pagination .page-numbers { min-width:40px; height:40px; padding:0 12px; display:grid; place-items:center; border:1px solid #cfc6bd; background:#fff; color:var(--ink); font-size:11px; }
.osanio-v2 .news-pagination .page-numbers.current { border-color:var(--ink); background:var(--ink); color:#fff; }
.osanio-v2 .news-pagination .nav-links { display:flex; flex-wrap:wrap; gap:8px; }
.osanio-v2 .news-article { padding:78px 0 105px; background:#fff; }
.osanio-v2 .news-article-inner { max-width:900px; }
.osanio-v2 .news-breadcrumb { margin:0 0 34px; display:flex; flex-wrap:wrap; gap:8px; color:var(--muted); font-size:10px; letter-spacing:.08em; text-transform:uppercase; }
.osanio-v2 .news-breadcrumb a { color:var(--ink); }
.osanio-v2 .news-article-header h1 { margin:12px 0 16px; color:var(--ink) !important; font-family:Georgia,"Times New Roman",serif; font-size:55px; font-weight:400; line-height:1.08; letter-spacing:-.04em; }
.osanio-v2 .news-article-date { margin:0; color:var(--accent); font-size:10px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.osanio-v2 .news-featured { margin:44px 0 48px; }
.osanio-v2 .news-featured img { width:100%; height:auto; }
.osanio-v2 .news-article-content { color:#5f5651; font-size:16px; line-height:1.9; }
.osanio-v2 .news-article-content :is(h2,h3,h4) { color:var(--ink) !important; font-family:Georgia,serif; font-weight:400; line-height:1.25; }
.osanio-v2 .news-article-content img { height:auto; }
.osanio-v2 .news-back { margin-top:50px; }
.osanio-v2 .news-adjacent { margin-top:60px; padding-top:28px; border-top:1px solid var(--line); display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.osanio-v2 .news-adjacent a { padding:22px; border:1px solid var(--line); background:#f8f6f3; }
.osanio-v2 .news-adjacent small { display:block; margin-bottom:8px; color:var(--accent); font-size:8px; letter-spacing:.14em; text-transform:uppercase; }
.osanio-v2 .news-adjacent strong { color:var(--ink); font-family:Georgia,serif; font-size:18px; font-weight:400; line-height:1.35; }

@media (max-width:980px) {
  .osanio-v2 .container { width:min(100% - 40px,760px); }
  .osanio-v2 .hero { min-height:680px; }
  .osanio-v2 .hero h1 { font-size:52px; }
  .osanio-v2 .trust-strip { grid-template-columns:1fr 1fr; padding:0 20px; }
  .osanio-v2 .trust-strip div { min-height:78px; }
  .osanio-v2 .category-rail { grid-template-columns:repeat(2,1fr); }
  .osanio-v2 .solution-grid { grid-template-columns:1fr 1fr; }
  .osanio-v2 .solution-card:nth-child(2) { border-right:0; }
  .osanio-v2 .solution-card:nth-child(-n+2) { border-bottom:1px solid rgba(255,255,255,.17); }
  .osanio-v2 .proof-layout { grid-template-columns:1fr; }
  .osanio-v2 .proof-visual { min-height:0; padding-top:0; }
  .osanio-v2 .closing-inner { grid-template-columns:1fr; gap:48px; }
  .osanio-v2 .social-rail { display:none; }
  .osanio-v2 .mobile-whatsapp { position:fixed; z-index:999; right:16px; bottom:calc(16px + env(safe-area-inset-bottom)); width:48px; height:48px; display:grid; place-items:center; border:1px solid rgba(213,186,141,.72); border-radius:50%; background:#312c29; color:#f1ece7; box-shadow:0 10px 30px rgba(31,27,24,.24); font-size:9px; font-weight:800; letter-spacing:.04em; }
  .osanio-v2 .mobile-whatsapp svg { width:22px; height:22px; display:block; fill:currentColor; }
  .osanio-v2 .mobile-whatsapp:focus-visible { outline:2px solid #d5ba8d; outline-offset:3px; }
  .osanio-v2 .footer-grid { grid-template-columns:1.3fr 1fr 1fr; }
  .osanio-v2 .footer-brand { grid-row:span 2; }
  .osanio-v2 .steps-grid { grid-template-columns:repeat(3,1fr); }
  .osanio-v2 .step-card:nth-child(3) { border-right:0; }
  .osanio-v2 .step-card:nth-child(-n+3) { border-bottom:1px solid var(--line); }
  .osanio-v2 .case-grid { grid-template-columns:1fr; }
  .osanio-v2 .news-grid { gap:12px; }
  .osanio-v2 .news-page-hero { min-height:300px; padding:124px 0 50px; }
}

@media (max-width:650px) {
  .osanio-v2 .hero { min-height:650px; padding-top:106px; background-image:url('../images/hero-clean.jpg'); background-size:cover; background-position:center 46%; }
  .osanio-v2 .hero-video { display:none; }
  .osanio-v2 .hero-content { padding-top:105px; }
  .osanio-v2 .hero h1 { font-size:43px; }
  .osanio-v2 .hero-copy { font-size:13px; }
  .osanio-v2 .hero-actions { align-items:flex-start; flex-direction:column; }
  .osanio-v2 .trust-strip { grid-template-columns:1fr; padding:0 20px; }
  .osanio-v2 .trust-strip div { min-height:66px; padding:0; border-right:0; border-bottom:1px solid #d8d1ca; }
  .osanio-v2 .split-heading,.osanio-v2 .solutions-heading { align-items:flex-start; flex-direction:column; gap:25px; }
  .osanio-v2 .section-heading h2,.osanio-v2 .process-heading h2,.osanio-v2 .news-heading h2,.osanio-v2 .proof-content h2,.osanio-v2 .case-heading h2,.osanio-v2 .closing h2 { font-size:39px; }
  .osanio-v2 .portfolio,.osanio-v2 .solutions-section,.osanio-v2 .proof-section,.osanio-v2 .process-section,.osanio-v2 .case-section,.osanio-v2 .news-section { padding:78px 0; }
  .osanio-v2 .package-panel { grid-template-columns:1fr; }
  .osanio-v2 .package-image { min-height:260px; }
  .osanio-v2 .package-copy { width:100%; min-height:0; padding:35px 28px; }
  .osanio-v2 .category-rail { width:calc(100% - 20px); grid-template-columns:1fr 1fr; gap:9px; }
  .osanio-v2 .solutions-intro h2 { font-size:44px; }
  .osanio-v2 .solution-grid { grid-template-columns:1fr; }
  .osanio-v2 .solution-card { border-right:0; border-bottom:1px solid rgba(255,255,255,.17); }
  .osanio-v2 .solution-card:last-child { border-bottom:0; }
  .osanio-v2 .proof-layout { gap:45px; }
  .osanio-v2 .proof-main { width:100%; height:auto; }
  .osanio-v2 .supply-choice { grid-template-columns:1fr; }
  .osanio-v2 .supply-choice div+div { padding:15px 0 0; border-left:0; border-top:1px solid rgba(255,255,255,.18); }
  .osanio-v2 .steps-grid { grid-template-columns:1fr 1fr; }
  .osanio-v2 .step-card,.osanio-v2 .step-card:nth-child(3) { border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
  .osanio-v2 .step-card:nth-child(2n) { border-right:0; }
  .osanio-v2 .step-card:nth-child(n+5) { border-bottom:0; }
  .osanio-v2 .featured-case,.osanio-v2 .featured-case>img { min-height:490px; height:490px; }
  .osanio-v2 .case-overlay { padding:27px; }
  .osanio-v2 .compact-case { grid-template-columns:1fr; }
  .osanio-v2 .compact-case img { height:190px; }
  .osanio-v2 .compact-case img.real-order-image--sample { object-position:50% 48%; }
  .osanio-v2 .compact-case img.real-order-image--packing { object-position:52% 66%; }
  .osanio-v2 .news-grid { grid-template-columns:1fr; gap:18px; }
  .osanio-v2 .news-actions { margin-top:28px !important; }
  .osanio-v2 .news-page-hero { min-height:238px; padding:38px 0; }
  .osanio-v2 .news-page-hero h1 { font-size:41px; }
  .osanio-v2 .news-archive { padding:70px 0 82px; }
  .osanio-v2 .news-empty { padding:48px 24px; }
  .osanio-v2 .news-article { padding:58px 0 82px; }
  .osanio-v2 .news-article-header h1 { font-size:40px; }
  .osanio-v2 .news-featured { margin:34px 0; }
  .osanio-v2 .news-article-content { font-size:15px; }
  .osanio-v2 .news-adjacent { grid-template-columns:1fr; }
  .osanio-v2 .closing-actions { align-items:flex-start; flex-direction:column; }
  .osanio-v2 .contact-card { padding:27px 24px; }
  .osanio-v2 .contact-panel { grid-template-columns:1fr; }
  .osanio-v2 .qr-card { display:none; }
  .osanio-v2 .contact-action { margin-top:9px; padding:14px 38px 14px 15px; border:1px solid rgba(255,255,255,.2); background:rgba(255,255,255,.055); }
  .osanio-v2 .contact-action>span { top:20px; right:14px; }
  .osanio-v2 .contact-action strong { font-size:15px; }
  .osanio-v2 .site-footer { padding-top:58px; }
  .osanio-v2 .footer-grid { grid-template-columns:1fr; gap:36px; }
  .osanio-v2 .footer-brand { grid-row:auto; }
  .osanio-v2 .site-footer :is(p,a,h3,strong),
  .osanio-v2 .footer-connect :is(a,p,strong),
  .osanio-v2 .footer-bottom :is(a,span) { color:#fff; }
  .osanio-v2 .footer-bottom { align-items:flex-start; flex-direction:column; gap:15px; }
  .osanio-v2 .site-footer { padding-bottom:86px; }
}

.osanio-v2.reveal-ready [data-reveal] { opacity:0; translate:0 34px; transition:opacity .72s cubic-bezier(.22,1,.36,1),translate .86s cubic-bezier(.22,1,.36,1); will-change:opacity,translate; }
.osanio-v2.reveal-ready [data-reveal].is-visible { opacity:1; translate:0 0; }
.osanio-v2.reveal-ready [data-reveal] :is(.category-card,.solution-card,.step-card,.news-card) { opacity:0; translate:0 18px; transition-property:opacity,translate,background-color,color,transform; transition-duration:.55s,.7s,.25s,.25s,.25s; transition-timing-function:ease,cubic-bezier(.22,1,.36,1),ease,ease,ease; }
.osanio-v2.reveal-ready [data-reveal].is-visible :is(.category-card,.solution-card,.step-card,.news-card) { opacity:1; translate:0 0; }
.osanio-v2.reveal-ready [data-reveal].is-visible :is(.category-card,.solution-card,.step-card,.news-card):nth-child(2) { transition-delay:.07s; }
.osanio-v2.reveal-ready [data-reveal].is-visible :is(.category-card,.solution-card,.step-card,.news-card):nth-child(3) { transition-delay:.14s; }
.osanio-v2.reveal-ready [data-reveal].is-visible :is(.category-card,.solution-card,.step-card,.news-card):nth-child(4) { transition-delay:.21s; }
.osanio-v2.reveal-ready [data-reveal].is-visible :is(.category-card,.solution-card,.step-card,.news-card):nth-child(5) { transition-delay:.28s; }
.osanio-v2.reveal-ready [data-reveal].is-visible :is(.category-card,.solution-card,.step-card,.news-card):nth-child(6) { transition-delay:.35s; }
.osanio-v2:not(.reveal-ready) [data-reveal],
.osanio-v2:not(.reveal-ready) [data-reveal] :is(.category-card,.solution-card,.step-card,.news-card) { opacity:1; translate:none; }

@media (prefers-reduced-motion:reduce) {
  .osanio-v2.reveal-ready [data-reveal],
  .osanio-v2.reveal-ready [data-reveal] :is(.category-card,.solution-card,.step-card,.news-card) { opacity:1; translate:none; transform:none; transition:none; }
}
