{"version":3,"sources":["styles.scss"],"names":[],"mappings":"AAAA;AAAA;EAEE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;IACE;;;AAGJ;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEF;EACE;;;AAEF;EACE;EACA;EACA;;;AAEF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAEF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAEF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAEF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAEF;EACE;EACA;;;AAEF;EACE;EACA;EACA;;;AAEF;EACE;EACA;EACA;EACA;EACA;;;AAEF;EACE;;;AAGF;EACE;;;AAEF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAEF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEF;EACE;EACA;;;AAEF;EACE;EACA;EACA;EACA;EACA;;;AAEF;EACE;EACA;;;AAEF;EACE;EACA;;;AAEF;EACE;EACA;EACA;;;AAGF;AAAA;EAEE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEF;EACE;;;AAEF;EACE;;;AAEF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;IACE;;EAEF;IACE;;EAEF;IACE;;;AAGJ;EACE;IACE;;EAEF;IACE;IACA;;EAEF;IACE;;EAEF;IACE;;EAEF;IACE;;EAEF;IACE;;EAEF;IACE;;EAEF;IACE;;;AAGJ;EACE;IACE;;EAEF;IACE;;EAEF;IACE;;EAEF;IACE;;EAEF;IACE;IACA;;EAEF;IACE;IACA;;;AAGJ;EACE;AAAA;AAAA;IAGE;IACA","file":"styles.css","sourcesContent":["// =============================================================\n// Opreme Ventures — styles.scss\n// Custom styling on top of Bootstrap 5.3.8.\n// Keeps the Bootstrap grid, offcanvas, utilities and form\n// validation; overrides visuals to match the PSD.\n// =============================================================\n\n@use 'variables' as *;\n\n// ---------- 1. Base layout ----------\nhtml,\nbody {\n  background-color: #555;\n  min-height: 100%;\n}\n\n.opv-body {\n  font-family: $opv-sans;\n  color: $opv-white;\n  background-color: $opv-navy-deep;\n  background-image:\n    linear-gradient(180deg, $overlay-top 0%, $overlay-bottom 100%),\n    url('../img/background.jpg');\n  background-repeat: no-repeat;\n  background-size: cover;\n  background-position: center center;\n  background-attachment: fixed;\n  min-height: 100vh;\n  display: flex;\n  flex-direction: column;\n}\n\n\n\n// iOS Safari does not support fixed background-attachment reliably\n@media (max-width: $bp-small-tablet) {\n  .opv-body {\n    background-attachment: scroll;\n  }\n}\n\n// ---------- 2. Header + hamburger button ----------\n.opv-header {\n  position: relative;\n  padding: 28px 22px 0;\n  z-index: 1040;\n}\n\n.opv-hamburger {\n  width: 46px;\n  height: 34px;\n  padding: 0;\n  background: transparent;\n  border: 0;\n  display: inline-flex;\n  flex-direction: column;\n  justify-content: space-between;\n  cursor: pointer;\n  transition: opacity 0.2s ease;\n\n  &:hover {\n    opacity: 0.82;\n  }\n\n  &:focus-visible {\n    outline: 2px solid $opv-gold-light;\n    outline-offset: 4px;\n    border-radius: 2px;\n  }\n\n  span {\n    display: block;\n    width: 100%;\n    height: 5px;\n    background: $opv-gold;\n    border-radius: 1px;\n  }\n}\n\n// ---------- 3. Offcanvas nav ----------\n.opv-offcanvas {\n  background: linear-gradient(180deg, $opv-navy 0%, $opv-navy-2 100%);\n  color: $opv-white;\n  border-left: 1px solid $gold-border-soft;\n\n  .offcanvas-title {\n    color: $opv-gold;\n    font-family: $opv-serif;\n    letter-spacing: 0.08em;\n  }\n}\n\n.opv-nav .nav-link {\n  color: $opv-white;\n  padding: 0.75rem 0;\n  font-weight: 500;\n  letter-spacing: 0.04em;\n  border-bottom: 1px solid $white-divider;\n  transition: color 0.15s ease;\n\n  &:hover,\n  &:focus {\n    color: $opv-gold-light;\n  }\n}\n\n// ---------- 4. Main container ----------\n.opv-main {\n  flex: 1 0 auto;\n  padding-bottom: 48px;\n}\n\n// ---------- 5. Hero (main logo) ----------\n.opv-hero {\n  padding: clamp(16px, 4vw, 40px) 16px clamp(24px, 4vw, 48px);\n\n  &__logo {\n    width: 100%;\n    max-width: 460px;\n    height: auto;\n    filter: drop-shadow($shadow-logo);\n  }\n}\n\n// ---------- 6. Sub-brand logos ----------\n.opv-brands {\n  padding: clamp(8px, 2vw, 24px) 0 clamp(32px, 5vw, 56px);\n}\n\n.opv-brand {\n  display: inline-block;\n  text-decoration: none;\n  transition: transform 0.25s ease, filter 0.25s ease;\n\n  &:hover {\n    transform: translateY(-2px);\n    filter: drop-shadow($shadow-brand);\n  }\n\n  &:focus-visible {\n    outline: 2px solid $opv-gold-light;\n    outline-offset: 6px;\n    border-radius: 4px;\n  }\n\n  &__logo {\n    width: auto;\n    max-width: 100%;\n    height: auto;\n    object-fit: contain;\n\n    max-height: 137px;\n\n\n    &--wide {\n      max-height: 95px;\n    }\n  }\n}\n\n// ---------- 7. Contact section ----------\n.opv-contact {\n  padding: clamp(16px, 3vw, 32px) 16px clamp(40px, 6vw, 72px);\n\n  &__title {\n    font-family: $opv-serif;\n    color: $opv-gold-light;\n    text-transform: uppercase;\n    letter-spacing: 0.18em;\n    font-weight: 500;\n    font-size: clamp(1.5rem, 2.4vw, 2rem);\n    text-align: center;\n    margin: 0 auto clamp(20px, 2.5vw, 32px);\n  }\n}\n\n// ---------- 8. Form fields ----------\n.opv-form {\n  max-width: 620px;\n\n  &__field {\n    background-color: $opv-white;\n    color: $opv-field-text;\n    border: 1px solid transparent;\n    border-radius: $radius-md;\n    padding: 14px 18px;\n    font-size: 15px;\n    line-height: 1.4;\n    box-shadow: $shadow-field;\n    transition: box-shadow 0.15s ease, border-color 0.15s ease;\n\n    &::placeholder {\n      color: $opv-placeholder;\n      opacity: 1;\n    }\n\n    &:focus {\n      background-color: $opv-white;\n      color: $opv-field-text;\n      border-color: $opv-gold-light;\n      box-shadow: 0 0 0 0.2rem $gold-focus-ring, $shadow-field;\n      outline: 0;\n    }\n\n    &--area {\n      min-height: 128px;\n      resize: vertical;\n    }\n  }\n\n  .invalid-feedback {\n    color: $opv-error;\n    font-size: 0.85rem;\n  }\n\n  &__success {\n    color: $opv-gold-light;\n    font-family: $opv-serif;\n    letter-spacing: 0.08em;\n  }\n}\n\n// Validation states — tint ring to gold when valid\n.was-validated .opv-form__field:valid,\n.opv-form__field.is-valid {\n  border-color: $gold-border-mid;\n}\n\n// ---------- 9. Submit button ----------\n.opv-btn-submit {\n  background: $opv-gold-light;\n  color: $opv-navy-2;\n  border: 0;\n  border-radius: $radius-sm;\n  padding: 12px 42px;\n  font-family: $opv-sans;\n  font-weight: 700;\n  font-size: 15px;\n  letter-spacing: 0.15em;\n  text-transform: uppercase;\n  box-shadow: $shadow-btn;\n  cursor: pointer;\n  transition: background-color 0.2s ease, transform 0.1s ease, box-shadow 0.2s ease;\n\n  &:hover {\n    background: $opv-gold;\n  }\n\n  &:active {\n    transform: translateY(1px);\n  }\n\n  &:focus-visible {\n    outline: 2px solid $opv-gold-light;\n    outline-offset: 3px;\n  }\n}\n\n// ---------- 10. Footer ----------\n.opv-footer {\n  flex-shrink: 0;\n  padding: 18px 16px 28px;\n  color: $opv-footer-text;\n  font-family: $opv-serif;\n  font-size: 0.82rem;\n  letter-spacing: 0.05em;\n}\n\n// ---------- 11. Responsive refinements ----------\n\n// Tablet\n@media (max-width: $bp-tablet) {\n  .opv-hero__logo {\n    max-width: 320px;\n  }\n\n  .opv-brand__logo {\n    &--tall {\n      max-height: 120px;\n    }\n\n    &--wide {\n      max-height: 72px;\n    }\n  }\n}\n\n// Small tablet\n@media (max-width: $bp-small-tablet) {\n  .opv-header {\n    padding: 18px 14px 0;\n  }\n\n  .opv-hamburger {\n    width: 40px;\n    height: 30px;\n  }\n\n  .opv-hamburger span {\n    height: 4px;\n  }\n\n  .opv-hero {\n    padding-top: 8px;\n  }\n\n  .opv-hero__logo {\n    max-width: 260px;\n  }\n\n  .opv-brand__logo {\n    &--tall {\n      max-height: 110px;\n    }\n\n    &--wide {\n      max-height: 64px;\n    }\n  }\n\n  .opv-contact__title {\n    letter-spacing: 0.14em;\n  }\n}\n\n// Phone\n@media (max-width: $bp-phone) {\n  .opv-hero__logo {\n    max-width: 220px;\n  }\n\n  .opv-brand__logo {\n\n    width: 170px !important;\n\n    &--tall {\n      max-height: 96px;\n    }\n\n    &--wide {\n      max-height: 56px;\n    }\n  }\n\n  .opv-form__field {\n    padding: 12px 14px;\n    font-size: 14px;\n  }\n\n  .opv-btn-submit {\n    padding: 11px 34px;\n    font-size: 14px;\n  }\n}\n\n// Reduced motion\n@media (prefers-reduced-motion: reduce) {\n\n  *,\n  *::before,\n  *::after {\n    transition: none !important;\n    animation: none !important;\n  }\n}"]}