/*
Theme Name: Rimrim
Theme URI: https://rimrim.local
Author: Rimrim
Description: Custom WordPress theme for Rimrim workshops in Vilnius.
Version: 0.1.0
Requires at least: 6.4
Tested up to: 6.6
Requires PHP: 8.0
Text Domain: rimrim
*/

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:#FAF0E6;}
@keyframes rim-marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}
@keyframes rim-spin{to{transform:rotate(360deg);}}
::selection{background:#A8D4E6;color:#1C1014;}
.lang-lt{display:none;}
[data-lang="lt"] .lang-en, html[data-lang="lt"] .lang-en{display:none;}
[data-lang="lt"] .lang-lt, html[data-lang="lt"] .lang-lt{display:inline;}
.lang-lt-block{display:none;}
[data-lang="lt"] .lang-en-block, html[data-lang="lt"] .lang-en-block{display:none;}
[data-lang="lt"] .lang-lt-block, html[data-lang="lt"] .lang-lt-block{display:block;}
.rimrim-extra-workshop{display:none !important;}
.show-all .rimrim-extra-workshop{display:flex !important;}
.modal-backdrop.is-open{display:flex !important;}
[data-booking-fields][hidden]{display:none !important;}
[data-booking-success][hidden]{display:none !important;}
.honeypot{position:absolute !important;left:-9999px !important;width:1px !important;height:1px !important;opacity:0 !important;}
.rimrim-loader{width:26px;height:26px;border-radius:50%;border:3px solid rgba(139,26,58,.18);border-top-color:#8B1A3A;animation:rim-spin .8s linear infinite;}
.rimrim-btn{transition:filter .15s ease,transform .12s ease,box-shadow .15s ease,opacity .15s ease;}
.rimrim-btn:hover:not(:disabled):not(.is-loading){filter:brightness(1.08);transform:translateY(-1px);}
.rimrim-btn:active:not(:disabled):not(.is-loading){transform:translateY(0) scale(.96);filter:brightness(.94);}
.rimrim-btn:focus-visible{outline:2px solid #A8D4E6;outline-offset:2px;}
.rimrim-btn:disabled{filter:none;transform:none;}
.rimrim-btn.is-loading{position:relative;pointer-events:none;cursor:wait;}
.rimrim-btn.is-loading>span{visibility:hidden;}
.rimrim-btn.is-loading::after{content:"";position:absolute;top:50%;left:50%;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;border:2.5px solid currentColor;border-top-color:transparent;opacity:.85;animation:rim-spin .7s linear infinite;}
.rimrim-link{transition:opacity .15s ease;}
.rimrim-link:hover{opacity:.68;}
.rimrim-link:active{opacity:.5;}
.rimrim-link:focus-visible{outline:2px solid #A8D4E6;outline-offset:3px;border-radius:2px;}
.rimrim-reel-modal .instagram-media{margin:0 auto !important;max-width:100% !important;}
.rimrim-reel-modal iframe{border-radius:8px !important;}
.rimrim-page-shell{min-height:100vh;background:#FAF0E6;color:#1C1014;font-family:'Hanken Grotesk',sans-serif;padding:56px 24px;}
.rimrim-page-content{max-width:840px;margin:0 auto;background:#fff6ec;border:1px solid rgba(139,26,58,.18);border-radius:12px;padding:40px;}
.rimrim-page-header{border-bottom:2px dashed rgba(139,26,58,.28);margin-bottom:28px;padding-bottom:24px;}
.rimrim-page-header h1{font-family:'Bricolage Grotesque',sans-serif;font-size:48px;line-height:1;margin:16px 0 0;color:#8B1A3A;letter-spacing:-.02em;}
.rimrim-page-kicker,.rimrim-page-logo{font-family:'Space Mono',monospace;font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#8B1A3A;}
.rimrim-page-logo{text-decoration:none;letter-spacing:0;text-transform:none;font-family:'Bricolage Grotesque',sans-serif;font-size:28px;}
.rimrim-page-logo span{color:#A8D4E6;}
.rimrim-entry-content{font-size:17px;line-height:1.7;color:#3b302b;}
.rimrim-entry-content a{color:#8B1A3A;font-weight:700;}
.rimrim-entry-content h2,.rimrim-entry-content h3{font-family:'Bricolage Grotesque',sans-serif;color:#1C1014;line-height:1.1;}
.rimrim-entry-content img{max-width:100%;height:auto;}
.rimrim-workshop-slideshow{position:relative;border-radius:16px;overflow:hidden;background:repeating-linear-gradient(45deg,#efe0cf,#efe0cf 11px,#e8d6c2 11px,#e8d6c2 22px);border:1px dashed rgba(139,26,58,.4);aspect-ratio:4/3;}
.rimrim-slideshow-track{display:flex;width:100%;height:100%;transition:transform .6s cubic-bezier(.4,0,.2,1);}
.rimrim-slideshow-slide{flex:none;width:100%;height:100%;border:none;padding:0;margin:0;background-size:cover;background-position:center;cursor:zoom-in;}
.rimrim-slideshow-prev,.rimrim-slideshow-next{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:38px;border-radius:50%;background:rgba(28,16,20,.55);color:#FAF0E6;border:none;font-size:20px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease,background-color .15s ease,transform .12s ease;}
.rimrim-workshop-slideshow:hover .rimrim-slideshow-prev,.rimrim-workshop-slideshow:hover .rimrim-slideshow-next,.rimrim-slideshow-prev:focus-visible,.rimrim-slideshow-next:focus-visible{opacity:1;}
@media (hover: none){.rimrim-slideshow-prev,.rimrim-slideshow-next{opacity:1;}}
.rimrim-slideshow-prev:hover,.rimrim-slideshow-next:hover{background:rgba(28,16,20,.75);transform:translateY(-50%) scale(1.08);}
.rimrim-slideshow-prev:active,.rimrim-slideshow-next:active{background:rgba(28,16,20,.85);transform:translateY(-50%) scale(.92);}
.rimrim-slideshow-prev:focus-visible,.rimrim-slideshow-next:focus-visible{outline:2px solid #A8D4E6;outline-offset:2px;}
.rimrim-slideshow-prev{left:12px;}
.rimrim-slideshow-next{right:12px;}
.rimrim-slideshow-dots{position:absolute;left:0;right:0;bottom:12px;display:flex;justify-content:center;gap:6px;}
.rimrim-slideshow-dot{width:8px;height:8px;border-radius:50%;background:rgba(250,240,230,.6);border:none;padding:0;cursor:pointer;transition:transform .2s ease,background-color .2s ease,opacity .2s ease;}
.rimrim-slideshow-dot:hover:not(.is-active){background:rgba(250,240,230,.85);transform:scale(1.15);}
.rimrim-slideshow-dot:active:not(.is-active){transform:scale(.9);}
.rimrim-slideshow-dot:focus-visible{outline:2px solid #FAF0E6;outline-offset:2px;}
.rimrim-slideshow-dot.is-active{background:#FAF0E6;transform:scale(1.3);}
.rimrim-lightbox{position:fixed;inset:0;z-index:80;background:rgba(28,16,20,.88);display:none;align-items:center;justify-content:center;padding:24px;}
.rimrim-lightbox.is-open{display:flex;}
.rimrim-lightbox img{max-width:100%;max-height:100%;border-radius:8px;box-shadow:0 30px 80px rgba(0,0,0,.5);}
.rimrim-lightbox-close{position:absolute;top:20px;right:24px;width:40px;height:40px;border-radius:50%;background:rgba(250,240,230,.15);color:#FAF0E6;border:none;font-size:22px;cursor:pointer;transition:background-color .15s ease,transform .12s ease;}
.rimrim-lightbox-close:hover{background:rgba(250,240,230,.28);transform:scale(1.08);}
.rimrim-lightbox-close:active{background:rgba(250,240,230,.38);transform:scale(.92);}
.rimrim-lightbox-close:focus-visible{outline:2px solid #A8D4E6;outline-offset:2px;}
.rimrim-lightbox-prev,.rimrim-lightbox-next{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;background:rgba(250,240,230,.15);color:#FAF0E6;border:none;font-size:24px;line-height:1;cursor:pointer;transition:background-color .15s ease,transform .12s ease;}
.rimrim-lightbox-prev:hover,.rimrim-lightbox-next:hover{background:rgba(250,240,230,.28);transform:translateY(-50%) scale(1.08);}
.rimrim-lightbox-prev:active,.rimrim-lightbox-next:active{background:rgba(250,240,230,.38);transform:translateY(-50%) scale(.92);}
.rimrim-lightbox-prev:focus-visible,.rimrim-lightbox-next:focus-visible{outline:2px solid #A8D4E6;outline-offset:2px;}
.rimrim-lightbox-prev{left:24px;}
.rimrim-lightbox-next{right:24px;}
.rimrim-workshop-chip{display:inline-block;vertical-align:middle;}
@media (max-width: 760px){
  nav > div, header#top, section, footer > div{padding-left:18px !important;padding-right:18px !important;}
  header#top{grid-template-columns:1fr !important;}
  header#top > div[style*="height:520px"]{height:380px !important;}
  section#contact-form, #rimrim-workshop-layout{grid-template-columns:1fr !important;}
  section#visit > div, section#about > div, footer div[style*="grid-template-columns"]{grid-template-columns:1fr !important;}
  section#studio div[style*="columns:3"]{columns:2 !important;}
  [data-workshop-list] > article{grid-template-columns:1fr !important;gap:18px !important;}
  .rimrim-workshop-thumb{display:none !important;}
  .rimrim-workshop-badges{max-width:170px;}
  .rimrim-workshop-chip{max-width:150px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}
  .rimrim-reels-grid{display:flex !important;overflow-x:auto;padding-bottom:10px;scroll-snap-type:x mandatory;}
  .rimrim-reels-grid > button{min-width:72vw;scroll-snap-align:start;}
  .rimrim-page-shell{padding:24px 14px;}
  .rimrim-page-content{padding:26px 18px;}
  .rimrim-page-header h1{font-size:36px;}
  .rimrim-workshop-title{font-size:34px !important;}
  .rimrim-slideshow-prev, .rimrim-slideshow-next{display:none !important;}
  .rimrim-nav-toggle{display:inline-flex !important;}
  .rimrim-nav-links{position:absolute !important;top:100% !important;left:0;right:0;flex-direction:column !important;align-items:stretch !important;gap:0 !important;background:#FAF0E6;box-shadow:0 16px 30px rgba(40,20,10,.14);max-height:calc(100dvh - 76px);overflow-y:auto;padding:6px 20px 22px;display:none !important;}
  nav.is-nav-open .rimrim-nav-links{display:flex !important;}
  .rimrim-nav-links > a.rimrim-link{padding:15px 2px;font-size:17px !important;border-bottom:1px dashed rgba(139,26,58,.16);}
  .rimrim-nav-links > [data-lang-toggle]{align-self:flex-start;margin-top:16px;}
  .rimrim-nav-links > a.rimrim-btn{margin-top:14px;text-align:center;justify-content:center;}
}
