/* Raining Berries - design styles.
   Most of the design lives in the style="..." of each element (exactly as in the approved HTML).
   This file holds the fonts, the responsive rules, hover effects and the WordPress/Elementor clean-up. */

/* ---------- 1. fonts + global rules from the approved design ---------- */
@font-face{font-family:'Creato Display';src:url("../fonts/creato-display-300.otf") format('opentype');font-weight:300;font-display:swap}
@font-face{font-family:'Creato Display';src:url("../fonts/creato-display-400.otf") format('opentype');font-weight:400;font-display:swap}
@font-face{font-family:'Creato Display';src:url("../fonts/creato-display-500.otf") format('opentype');font-weight:500;font-display:swap}
@font-face{font-family:'Creato Display';src:url("../fonts/creato-display-700.otf") format('opentype');font-weight:700;font-display:swap}
@font-face{font-family:'Creato Display';src:url("../fonts/creato-display-800.otf") format('opentype');font-weight:800;font-display:swap}
@font-face{font-family:'Creato Display';src:url("../fonts/creato-display-900.otf") format('opentype');font-weight:900;font-display:swap}
html,body{margin:0;background:#FFFFFF;color:#2A1620;font-family:'Creato Display',ui-sans-serif,system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:clip}
html{overflow-x:clip}
*{box-sizing:border-box}
a{color:#CE0E68;text-decoration:none}a:hover{color:#F21781}
button{font-family:inherit;cursor:pointer}
@media (max-width:760px){[data-nut-card]{--nut-w:100%}[data-nut="1"]{--nut-w:100%}}
@keyframes rb-shimmer{0%{background-position:200% 50%}100%{background-position:-200% 50%}}
@keyframes rb-twinkle{0%,100%{opacity:.25;transform:scale(.7)}50%{opacity:1;transform:scale(1.1)}}
@media (prefers-reduced-motion:reduce){[data-sparkle]{animation:none!important}}
@media (max-width:1000px){[data-team6]{--rb-t:3}}@media (max-width:560px){[data-team6]{--rb-t:2}}
@keyframes rb-menu-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
[data-menu-tabs] > div::-webkit-scrollbar{display:none}
@keyframes rb-gift-float{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-16px) rotate(-1deg)}}
@keyframes rb-truck-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
@keyframes rb-gift-shadow{0%,100%{transform:scaleX(1);opacity:1}50%{transform:scaleX(.82);opacity:.6}}
@keyframes rb-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (max-width:1239px){[data-desk]{display:none !important}}
@media (max-width:900px){[data-stack]{grid-template-columns:1fr !important}[data-ig]{grid-template-columns:repeat(3,1fr) !important}[data-logo]{height:78px !important}[data-strip-wrap]{overflow-x:auto !important;scroll-snap-type:x mandatory;padding-bottom:12px}[data-strip]{transform:none !important}[data-strip-sec]{min-height:auto !important}[data-scrib-mob]{display:none !important}[data-pad]{padding-left:20px !important;padding-right:20px !important}}
@media (min-width:901px){[data-mob]{display:none !important}}
@media (min-width:1240px){[data-burger]{display:none !important}}
@media (min-width:901px) and (max-width:1239px){[data-strip-bar-wrap]{display:block !important}}
@media (max-width:900px){[data-elementor-type="wp-page"] h1,[data-elementor-type="wp-page"] h2,[data-elementor-type="wp-page"] h3,[data-elementor-type="wp-page"] p,[data-elementor-type="wp-page"] li,[data-elementor-type="wp-page"] [data-reveal]{text-align:center}[data-elementor-type="wp-page"] [style*="flex-direction:column"]{align-items:center}[data-elementor-type="wp-page"] [style*="display:flex;gap"],[data-elementor-type="wp-page"] [style*="display:flex;flex-wrap"]{justify-content:center}[data-elementor-type="wp-page"] button{text-align:left}footer h4,footer p,footer a{text-align:center}footer [style*="flex-direction:column"]{align-items:center}[data-hero-text]{align-items:center !important;text-align:center !important}}
@media (max-width:900px){[data-hero-text]{max-width:100% !important}[data-fall-img]{order:2}}
@media (min-width:601px) and (max-width:900px){[data-banner]{background-position:70% 55% !important}[data-hero-text]{max-width:52% !important}}
@media (max-width:600px){[data-banner]{background-image:var(--rb-banner-mobile) !important;background-size:cover !important;background-position:center bottom !important;aspect-ratio:941 / 1672 !important;align-items:flex-start !important}[data-banner] > div:first-child{background:linear-gradient(180deg,rgba(253,236,244,.9) 0%,rgba(253,236,244,.62) 32%,rgba(253,236,244,.3) 58%,rgba(253,236,244,.18) 100%) !important;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}[data-banner] [data-pad]{padding-top:28px !important}[data-hero-text]{gap:20px !important}}
@media (prefers-reduced-motion:reduce){[data-marquee]{animation:none !important}}
@media (min-width:901px) and (max-width:1366px){html{zoom:.82}}
@media (min-width:1367px) and (max-width:1680px){html{zoom:.88}}
@font-face {
  font-family: 'Gochi Hand';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/gochi-hand.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ---------- 2. hover / focus effects (class rbh-*) ---------- */
.rbh-0:hover { color: rgb(242, 23, 129) !important; }
.rbh-1:hover { background: rgb(255, 255, 255) !important; color: rgb(242, 23, 129) !important; }
.rbh-2:hover { background: rgb(253, 236, 244) !important; color: rgb(242, 23, 129) !important; }
.rbh-3:hover { transform: scale(1.06) !important; color: rgb(255, 255, 255) !important; }
.rbh-4:hover { color: rgb(242, 23, 129) !important; padding-left: 10px !important; }
.rbh-5:hover { color: rgb(242, 23, 129) !important; padding-left: 14px !important; }
.rbh-6:hover { color: rgb(255, 255, 255) !important; background: rgb(206, 14, 104) !important; }
.rbh-7:hover { transform: translateY(-2px) !important; color: rgb(255, 255, 255) !important; }
.rbh-8:hover { transform: translateY(-2px) !important; color: rgb(206, 14, 104) !important; }
.rbh-9:hover { background: rgb(242, 23, 129) !important; color: rgb(255, 255, 255) !important; }
.rbh-a:hover { transform: translateY(-6px) !important; box-shadow: rgba(206, 14, 104, 0.14) 0px 26px 50px !important; }
.rbh-b:hover { transform: scale(1.05) !important; }
.rbh-c:hover { transform: scale(1.06) !important; }
.rbh-d:hover { color: rgb(255, 255, 255) !important; filter: brightness(0.92) !important; }
.rbh-e:hover { transform: translateY(-4px) !important; box-shadow: rgba(206, 14, 104, 0.16) 0px 18px 36px !important; }
.rbh-f:hover { color: rgb(255, 255, 255) !important; }
.rbh-g:focus { border-color: rgb(242, 23, 129) !important; box-shadow: rgba(242, 23, 129, 0.12) 0px 0px 0px 4px !important; }
.rbh-h:hover { border-color: rgb(242, 23, 129) !important; }
.rbh-i:focus { border-color: rgb(242, 23, 129) !important; box-shadow: rgba(242, 23, 129, 0.12) 0px 0px 0px 4px !important; padding: 12px !important; cursor: pointer !important; }
.rbh-j:hover { background: rgb(206, 14, 104) !important; }
.rbh-k:hover { transform: translateY(-6px) !important; box-shadow: rgba(206, 14, 104, 0.14) 0px 24px 44px !important; }
.rbh-l:hover { color: rgb(255, 255, 255) !important; background: rgb(242, 23, 129) !important; }
.rbh-m:hover { transform: translateY(-6px) !important; box-shadow: rgba(42, 22, 32, 0.1) 0px 24px 44px !important; }
.rbh-n:hover { transform: translateY(-4px) !important; border-color: rgb(242, 23, 129) !important; box-shadow: rgba(206, 14, 104, 0.12) 0px 16px 32px !important; }
.rbh-o:focus { border-color: rgb(242, 23, 129) !important; }
.rbh-p:hover { transform: translateY(-6px) !important; box-shadow: rgba(206, 14, 104, 0.16) 0px 24px 46px !important; }
.rbh-q:hover { background: rgb(242, 23, 129) !important; }

/* ---------- 3. WordPress + Elementor clean-up (keeps the design pixel-identical) ---------- */
/* the design's page wrapper */
body.rb-page { position: relative; min-height: 100vh; background: #FFFFFF; font-size: 17px; line-height: 1.65; margin: 0; }
body.rb-page [data-elementor-type="wp-page"] { padding-top: 128px; }
body.rb-page.rb-noscroll { overflow: hidden; }

/* Elementor sections that hold our HTML: no padding, no gaps, no width limit */
body.rb-page .elementor-section.rb-sec,
body.rb-page .elementor-section.rb-sec > .elementor-container,
body.rb-page .rb-sec .elementor-column,
body.rb-page .rb-sec .elementor-widget-wrap,
body.rb-page .rb-sec .elementor-element-populated,
body.rb-page .rb-sec .elementor-widget,
body.rb-page .rb-sec .elementor-widget-container { padding: 0 !important; margin: 0 !important; max-width: none !important; }
body.rb-page .elementor-section.rb-sec > .elementor-container { display: block; }
body.rb-page .rb-sec .elementor-column { width: 100% !important; display: block; }
body.rb-page .rb-sec .elementor-widget-wrap { display: block; }
body.rb-page .rb-sec .elementor-widget:not(:last-child) { margin-bottom: 0 !important; margin-block-end: 0 !important; }
body.rb-page .rb-sec .e-con, body.rb-page .rb-sec.e-con { --padding-top: 0; --padding-bottom: 0; --padding-left: 0; --padding-right: 0; --gap: 0; padding: 0; }

/* Elementor gives every picture "height:auto; max-width:100%" - the design needs the browser default */
body.rb-page .elementor .rb-sec img,
body.rb-page .rb-menu img,
body.rb-page .rb-chrome img { height: revert; max-width: revert; border: revert; border-radius: revert; box-shadow: revert; }
body.rb-page .elementor .rb-sec a,
body.rb-page .rb-chrome a { box-shadow: revert; }
body.rb-page .elementor .rb-sec svg,
body.rb-page .rb-chrome svg { max-width: revert; }

/* header + footer printed outside Elementor */
.rb-chrome { display: contents; }

/* WordPress admin bar (only for logged-in users) */
body.rb-page.admin-bar header[data-rbb] { margin-top: 32px; }
body.rb-page.admin-bar [data-rbb="style=barH"] { margin-top: 32px; }
@media (max-width: 782px) {
  body.rb-page.admin-bar header[data-rbb], body.rb-page.admin-bar [data-rbb="style=barH"] { margin-top: 46px; }
}
