@font-face{font-family:OrenavaChoice;src:url('./fonts/CrimsonText-Regular.ttf') format('truetype');font-display:swap}
@font-face{font-family:OrenavaChoice;src:url('./fonts/CrimsonText-Italic.ttf') format('truetype');font-style:italic;font-display:swap}
/* Isolated from theme buttons and from WooCommerce payment forms. */
#ov-companion{--ov-ink:#253c30;--ov-cream:#f8f5ed;--ov-gold:#b59a66;font:14px/1.5 Arial,sans-serif;color:var(--ov-ink)}
#ov-companion *,#ov-companion *:before,#ov-companion *:after{box-sizing:border-box}
#ov-companion button{font:inherit;cursor:pointer;text-transform:none;letter-spacing:normal;box-shadow:none;margin:0}
#ov-companion svg{display:block;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
#ov-companion .ov-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
body.ov-has-companion{padding-bottom:110px!important}
#ov-companion .ov-pet-dock{position:fixed;right:24px;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:1000;width:174px;padding:10px 12px 12px;background:#faf8f0f5;border:1px solid #d7d3c5;border-radius:15px;box-shadow:0 7px 26px #142b2626;backdrop-filter:blur(14px)}
#ov-companion .ov-dock-caption{display:block;text-align:center;font:9px/1.4 Arial,sans-serif;text-transform:uppercase;letter-spacing:.09em;margin-bottom:7px;color:#4c594d}
#ov-companion .ov-pet-switch{display:block;position:relative;width:148px;height:52px;border:1px solid #49614b;border-radius:28px;background:linear-gradient(115deg,#263f32,#52715a);color:#f8f4e9;padding:0;transition:background .35s,border-color .35s}
#ov-companion .ov-pet-switch[data-animal=cat]{background:linear-gradient(115deg,#6a563e,#3c473a);border-color:#7a694f}
#ov-companion .ov-switch-thumb{position:absolute;top:4px;left:4px;width:42px;height:42px;display:block;border-radius:50%;background:#f4ead4;box-shadow:0 2px 5px #12221a3d,inset 0 0 0 1px #fff7;color:#263c30;transform:translateX(0);transition:transform .42s cubic-bezier(.22,.8,.22,1),background .35s}
#ov-companion .ov-switch-thumb>span{position:absolute;inset:6px;transition:opacity .25s,transform .35s}
#ov-companion .ov-switch-thumb svg{width:100%;height:100%;stroke-width:1.8}
#ov-companion .ov-face-cat{opacity:0;transform:scale(.65) rotate(-15deg)}
#ov-companion .ov-pet-switch[aria-checked=true] .ov-switch-thumb{transform:translateX(96px);background:#f8f2e5}
#ov-companion .ov-pet-switch[aria-checked=true] .ov-face-dog{opacity:0;transform:scale(.65) rotate(15deg)}
#ov-companion .ov-pet-switch[aria-checked=true] .ov-face-cat{opacity:1;transform:none}
#ov-companion .ov-track-label{position:absolute;top:0;bottom:0;display:grid;align-items:center;width:87px;font:13px/1 Arial,sans-serif;transition:opacity .2s}
#ov-companion .ov-track-dog{left:0;opacity:0}#ov-companion .ov-track-cat{right:0}
#ov-companion .ov-pet-switch[aria-checked=true] .ov-track-dog{opacity:1}#ov-companion .ov-pet-switch[aria-checked=true] .ov-track-cat{opacity:0}
#ov-companion :is(button,a):focus-visible{outline:2px solid #a17d39;outline-offset:4px}
html.ov-welcome-open{overflow:hidden!important;scrollbar-gutter:stable}
#ov-companion .ov-welcome{width:min(780px,calc(100vw - 40px));max-width:none;max-height:calc(100dvh - 40px);border:1px solid #dfd4bd;border-radius:0;padding:28px 36px 22px;background:radial-gradient(ellipse at 50% 0,#fffdf5,#f3efe4 80%);color:var(--ov-ink);box-shadow:0 32px 120px #071c2166;overflow:auto;overscroll-behavior:contain}
#ov-companion .ov-welcome::backdrop{background:#17291f99;backdrop-filter:blur(9px)}
#ov-companion .ov-welcome[open]{animation:ov-welcome-enter .45s cubic-bezier(.2,.8,.2,1) both}
#ov-companion .ov-welcome-close{position:absolute;right:12px;top:12px;width:44px;height:44px;background:transparent;border:0;padding:12px;color:#465343;border-radius:0}
#ov-companion .ov-welcome-close svg{width:100%;height:100%}
#ov-companion .ov-welcome-heading{text-align:center;padding:0 20px}
#ov-companion .ov-wordmark{display:block;font:17px/1 OrenavaChoice,Georgia,serif;letter-spacing:.24em;margin:0 0 22px}
#ov-companion .ov-eyebrow{display:block;font:9px/1.5 Arial,sans-serif;letter-spacing:.16em;color:#75715d;margin:0 0 12px}
#ov-companion .ov-welcome h2{font:54px/.94 OrenavaChoice,Georgia,serif;letter-spacing:-.025em;margin:0 0 17px;color:#253c30;outline:none}
#ov-companion .ov-welcome h2 em{font-weight:400;color:#87744d}
#ov-companion #ov-welcome-intro{font:12px/1.65 Arial,sans-serif;margin:0 0 24px;color:#56604f}
#ov-companion .ov-pet-cards{display:grid;grid-template-columns:1fr 1fr;gap:20px}
#ov-companion .ov-pet-card{position:relative;display:block;min-width:0;background:#eeeee5;color:#253c30;border:1px solid #d5d7c8;border-radius:0;overflow:hidden;padding:0;text-align:left;transition:background .25s,border-color .25s,transform .3s}
#ov-companion .ov-pet-card--cat{background:#eee7da;border-color:#dad0bc}
#ov-companion .ov-card-number{position:absolute;top:14px;left:15px;font:10px/1.4 Arial,sans-serif;letter-spacing:.12em;color:#727762;z-index:2}
#ov-companion .ov-card-art{display:block;position:relative;height:212px;overflow:hidden;margin:14px 15px 0;background:#f7f5ef}
#ov-companion .ov-card-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 34%;mix-blend-mode:multiply;transition:transform .6s}
#ov-companion .ov-card-copy{display:block;position:relative;border-top:1px solid #c9c9b6;margin:0 15px;padding:16px 2px 18px}
#ov-companion .ov-card-copy strong{display:block;font:30px/1.05 OrenavaChoice,Georgia,serif;font-weight:400;letter-spacing:-.02em;margin:0 32px 9px 0}
#ov-companion .ov-card-icon{position:absolute;right:1px;top:16px;width:28px;height:28px;color:#69765b}
#ov-companion .ov-card-icon svg{width:100%;height:100%}
#ov-companion .ov-card-link{display:flex;align-items:center;justify-content:space-between;gap:9px;font:10px/1.5 Arial,sans-serif;color:#5b6351}
#ov-companion .ov-card-link svg{width:17px;height:17px;flex:none}
#ov-companion .ov-welcome-foot{text-align:center;font:10px/1.6 Arial,sans-serif;color:#75745f;margin:20px 0 0}
@media(hover:hover){#ov-companion .ov-pet-card:hover{transform:translateY(-3px);border-color:#647653;background:#e6e9db}#ov-companion .ov-pet-card:hover img{transform:scale(1.04)}#ov-companion .ov-pet-switch:hover{border-color:#9c8555}}
@keyframes ov-welcome-enter{from{opacity:0;transform:translateY(16px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:600px){
 body.ov-has-companion{padding-bottom:94px!important}
 #ov-companion .ov-pet-dock{width:154px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));padding:7px 9px 9px;border-radius:13px}
 #ov-companion .ov-dock-caption{font-size:8px;letter-spacing:.055em;margin-bottom:5px}
 #ov-companion .ov-pet-switch{width:134px;height:48px}
 #ov-companion .ov-switch-thumb{width:38px;height:38px}
 #ov-companion .ov-pet-switch[aria-checked=true] .ov-switch-thumb{transform:translateX(86px)}
 #ov-companion .ov-track-label{width:79px;font-size:12px}
 #ov-companion .ov-welcome{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:23px 17px 19px}
 #ov-companion .ov-welcome-heading{padding:0 3px}
 #ov-companion .ov-wordmark{font-size:15px;margin-bottom:22px}
 #ov-companion .ov-eyebrow{font-size:7px;letter-spacing:.12em;margin-bottom:12px}
 #ov-companion .ov-welcome h2{font-size:42px;margin-bottom:15px}
 #ov-companion #ov-welcome-intro{font-size:11px;line-height:1.65;margin-bottom:20px}
 #ov-companion .ov-pet-cards{gap:10px}
 #ov-companion .ov-card-art{height:169px;margin:9px 8px 0}
 #ov-companion .ov-card-number{top:13px;left:13px;font-size:8px}
 #ov-companion .ov-card-copy{margin:0 8px;padding:14px 1px}
 #ov-companion .ov-card-copy strong{font-size:23px;margin:0 0 8px}
 #ov-companion .ov-card-icon{display:none}
 #ov-companion .ov-card-link{font-size:8px;gap:4px}
 #ov-companion .ov-card-link svg{width:13px;height:13px}
 #ov-companion .ov-welcome-foot{font-size:9px;margin-top:18px}
}
@media(max-width:350px){#ov-companion .ov-welcome{padding-inline:12px}#ov-companion .ov-welcome h2{font-size:37px}#ov-companion .ov-card-art{height:139px}#ov-companion .ov-card-copy strong{font-size:21px}#ov-companion .ov-card-link{font-size:7px}}
@media(max-height:650px){#ov-companion .ov-welcome{padding-top:18px}#ov-companion .ov-wordmark{margin-bottom:12px}#ov-companion .ov-card-art{height:135px}#ov-companion .ov-welcome h2{font-size:38px}}
@media(prefers-reduced-motion:reduce){#ov-companion *,#ov-companion *:before{animation:none!important;transition:none!important}}
@media print{#ov-companion{display:none}body.ov-has-companion{padding-bottom:0!important}}
