@font-face {
  font-family: "Amatic SC";
  src: url("/wp-content/uploads/fonts/font-216cf14e.woff2") format("woff2");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

/*
 * Shared header: the non-sticky Gutenberg header surface follows the
 * original Joomla warm textured background instead of its former blue
 * gradient. The rule is central because the same Template Part is shared by
 * every language.
 */
header.rigalloro2608-header > .wp-block-group.alignfull.has-background {
  background-image: url("/wp-content/uploads/rigalloro-style/background-texture.png") !important;
  background-position: 50% 0 !important;
  background-repeat: repeat !important;
}

@font-face {
  font-family: "Roboto Mono";
  src: url("/wp-content/uploads/fonts/font-ba4b5a41.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Cabin Sketch";
  src: url("/wp-content/uploads/rigalloro-fonts/cabin-sketch-700.woff2") format("woff2");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

.rigalloro2608-main h1,
.editor-styles-wrapper h1 {
  font-family: "Amatic SC", cursive !important;
  font-size: clamp(96px, 11vw, 165px) !important;
  font-weight: 700;
  font-style: normal;
  line-height: 1.05;
  color: #322a22;
  text-transform: none;
}

.rigalloro2608-main h2,
.editor-styles-wrapper h2 {
  font-family: "Cabin Sketch", cursive !important;
  font-size: clamp(46px, 6vw, 70px) !important;
  font-weight: 700;
  font-style: normal;
  line-height: 1.1;
  color: #322a22;
  text-transform: uppercase;
}

.rigalloro2608-main h3,
.editor-styles-wrapper h3 {
  font-family: "Cabin Sketch", cursive !important;
  font-size: clamp(37px, 4.8vw, 56px) !important;
  font-weight: 700;
  font-style: normal;
  line-height: 1.1;
  color: #322a22;
  text-transform: none;
}

.rigalloro2608-main h4,
.editor-styles-wrapper h4 {
  font-family: "Amatic SC", cursive !important;
  font-size: clamp(30px, 3.4vw, 40px) !important;
  font-weight: 700;
  font-style: normal !important;
  line-height: 1.4;
  color: #d8522c !important;
  text-transform: uppercase;
}

.rigalloro2608-main h4 em,
.editor-styles-wrapper h4 em {
  font-style: normal !important;
}

.rigalloro2608-main h5,
.editor-styles-wrapper h5 {
  font-family: "Amatic SC", cursive !important;
  font-size: clamp(32px, 3vw, 44px) !important;
  font-weight: 700;
  font-style: normal;
  line-height: 1.05;
  color: #322a22;
  text-transform: none;
}

.rigalloro2608-main .wp-block-cover h1,
.rigalloro2608-main .wp-block-cover h2,
.rigalloro2608-main .wp-block-cover h3,
.rigalloro2608-main .wp-block-cover h4,
.rigalloro2608-main .wp-block-cover h5,
.editor-styles-wrapper .wp-block-cover h1,
.editor-styles-wrapper .wp-block-cover h2,
.editor-styles-wrapper .wp-block-cover h3,
.editor-styles-wrapper .wp-block-cover h4,
.editor-styles-wrapper .wp-block-cover h5 {
  color: #ffffff !important;
}

.rigalloro2608-main .wp-block-cover p,
.editor-styles-wrapper .wp-block-cover p {
  color: #ffffff !important;
}

.rigalloro2608-main .wp-block-post-content p:not(.wp-block-cover *):not(.has-medium-font-size),
.rigalloro2608-main .wp-block-post-content li,
.editor-styles-wrapper p:not(.wp-block-cover *):not(.has-medium-font-size),
.editor-styles-wrapper li {
  font-family: "Roboto Mono", monospace;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.73;
  color: #22201e;
}

/*
 * The original Joomla texture is intentionally centralized here because
 * Gutenberg has no global reusable background-image setting for all existing
 * section Groups. This stylesheet is loaded in both editor and frontend.
 */
.rigalloro2608-main .wp-block-post-content > .wp-block-group.alignfull,
.editor-styles-wrapper .is-root-container > .wp-block-group.alignfull {
  background-image: url("/wp-content/uploads/rigalloro-style/background-texture.png");
  background-position: 50% 0;
  background-repeat: repeat;
}

.rigalloro2608-main p.has-medium-font-size,
.editor-styles-wrapper p.has-medium-font-size {
  font-family: "Amatic SC", cursive !important;
  font-size: 40px !important;
  font-weight: 700;
  font-style: normal;
  line-height: 56px;
  color: #d8522c !important;
  text-transform: uppercase;
}

@media (max-width: 600px) {
  .rigalloro2608-main p,
  .rigalloro2608-main li,
  .editor-styles-wrapper p,
  .editor-styles-wrapper li {
    font-size: 15px;
    line-height: 1.65;
  }
}

/* Shared Joomla-inspired footer; loaded identically in Gutenberg and frontend. */
.rigalloro-footer-main {
  background-color: #f8f5ef;
  background-image: url("/wp-content/uploads/rigalloro-style/background-texture.png");
  background-position: 50% 0;
  background-repeat: repeat;
}

.rigalloro-footer-main,
.rigalloro-footer-main p,
.rigalloro-footer-main li,
.rigalloro-footer-main a {
  font-family: "Roboto Mono", monospace;
  color: #22201e;
}

.rigalloro-footer-main p,
.rigalloro-footer-main li,
.rigalloro-footer-main a {
  font-size: 12px;
  line-height: 1.6;
}

.rigalloro-footer-main .rigalloro-footer-heading {
  margin: 0 0 20px;
  font-family: "Roboto Mono", monospace !important;
  font-size: 13px !important;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 1.7px;
  color: #9a9895;
  text-transform: uppercase;
}

.rigalloro-footer-main .rigalloro-footer-copy {
  font-size: 12px;
  line-height: 1.6;
  color: #9a9895;
}

.rigalloro-footer-main .rigalloro-footer-links,
.rigalloro-footer-main .rigalloro-footer-links a {
  font-size: 12px;
  line-height: 1.4;
  letter-spacing: 1.7px;
  text-transform: uppercase;
  text-decoration: none;
}

.rigalloro-footer-main a:hover {
  color: #e07557;
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

/* Ordinary text links retain the surrounding text size and use the Joomla red. */
.rigalloro2608-main a:not(.wp-block-button__link),
.rigalloro-footer-main a:not(.wp-block-button__link):not(.wp-social-link-anchor),
.editor-styles-wrapper a:not(.wp-block-button__link) {
  color: #d8522c;
  font-size: inherit;
  text-decoration: none;
}

.rigalloro2608-main a:not(.wp-block-button__link):hover,
.rigalloro2608-main a:not(.wp-block-button__link):focus,
.rigalloro-footer-main a:not(.wp-block-button__link):not(.wp-social-link-anchor):hover,
.rigalloro-footer-main a:not(.wp-block-button__link):not(.wp-social-link-anchor):focus,
.editor-styles-wrapper a:not(.wp-block-button__link):hover,
.editor-styles-wrapper a:not(.wp-block-button__link):focus {
  color: #e07557;
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

/* Mark the current page in the global navigation like the original Joomla menu. */
.wp-block-navigation .current-menu-item > .wp-block-navigation-item__content,
.wp-block-navigation .current-menu-ancestor > .wp-block-navigation-item__content,
.wp-block-navigation .wp-block-navigation-item__content[aria-current="page"],
.wp-block-navigation .rigalloro-current-nav {
  border-bottom: 3px solid #d8522c;
  padding-bottom: 17px;
}

.wp-block-navigation .current-menu-item > .wp-block-navigation-item__content,
.wp-block-navigation .current-menu-ancestor > .wp-block-navigation-item__content,
.wp-block-navigation .wp-block-navigation-item__content[aria-current="page"],
.wp-block-navigation .rigalloro-current-nav {
  position: relative;
  border-bottom: 0;
  padding-bottom: 0;
}

.wp-block-navigation .current-menu-item > .wp-block-navigation-item__content::after,
.wp-block-navigation .current-menu-ancestor > .wp-block-navigation-item__content::after,
.wp-block-navigation .wp-block-navigation-item__content[aria-current="page"]::after,
.wp-block-navigation .rigalloro-current-nav::after {
  position: absolute;
  right: 0;
  bottom: -20px;
  left: 0;
  height: 3px;
  background: #d8522c;
  content: "";
  pointer-events: none;
}

.rigalloro-header-logo-link {
  display: block;
  line-height: 0;
}

/* Home Sports and Activities remain native Gutenberg Lists in two-column blocks. */
.rigalloro-offer-list {
  margin-top: 0;
  margin-bottom: 0;
  columns: 2;
  column-gap: 2.5rem;
}

.rigalloro-offer-list,
.rigalloro-offer-list li {
  color: #d8522c !important;
}

.rigalloro-footer-totop a {
  color: #ffffff;
  text-decoration: none;
}

/* Reusable Gutenberg style for the original Joomla FIND OUT MORE stamp. */
.wp-block-button.is-style-rigalloro-stamp .wp-block-button__link {
  box-sizing: border-box;
  min-height: 50px;
  padding: 0 40px;
  border: 3px solid #d8522c;
  border-image-source: url("/wp-content/uploads/rigalloro-style/button-border-red.svg");
  border-image-slice: 3;
  border-image-width: 3px;
  border-image-repeat: round;
  border-radius: 0;
  background: transparent;
  color: #d8522c;
  font-family: "Roboto Mono", monospace;
  font-size: 16px;
  font-weight: 400;
  line-height: 44px;
  letter-spacing: .2px;
  text-decoration: none;
}

.wp-block-button.is-style-rigalloro-stamp .wp-block-button__link:hover,
.wp-block-button.is-style-rigalloro-stamp .wp-block-button__link:focus {
  border-color: #e07557;
  color: #e07557;
}

.wp-block-button.is-style-rigalloro-stamp .wp-block-button__link:active {
  border-color: #e07557;
  color: #e07557;
}

/* Show every Gutenberg Cover image without a dark color overlay. */
.wp-block-cover .wp-block-cover__background,
.wp-block-cover .wp-block-cover__gradient-background,
.editor-styles-wrapper .wp-block-cover .wp-block-cover__background,
.editor-styles-wrapper .wp-block-cover .wp-block-cover__gradient-background {
  opacity: 0 !important;
}

/* Anlage owner card: the ALT design uses a solid terracotta Cover panel. */
.wp-block-cover.rigalloro-owner-panel .wp-block-cover__background,
.editor-styles-wrapper .wp-block-cover.rigalloro-owner-panel .wp-block-cover__background {
  background-color: #d8522c !important;
  opacity: 1 !important;
}

/* Sports surfing accordions: match their native Details summaries to H5. */
.wp-block-details.rigalloro-surf-details > summary,
.editor-styles-wrapper .wp-block-details.rigalloro-surf-details > summary {
  color: #22201e;
  font-family: "Amatic SC", cursive !important;
  font-size: clamp(32px, 3vw, 44px) !important;
  font-style: normal;
  font-weight: 700;
  line-height: 1.05;
}

/* Apartments: Joomla-derived, Gutenberg-editable section and image geometry. */
.rigalloro-apartments-hero {
  align-items: flex-end;
  padding: 0 3.2vw 6vh;
}

.rigalloro-apartments-hero-caption {
  width: fit-content;
  max-width: min(94vw, 1050px);
  margin: 0;
  padding: 10px 16px 14px;
  background: rgba(34, 32, 30, .62);
}

.rigalloro-apartments-hero-caption h2,
.rigalloro-apartments-hero-caption h4 {
  margin: 0;
  color: #fff !important;
}

.rigalloro-apartment-section,
.rigalloro-apartments-service,
.rigalloro-apartments-extras {
  box-sizing: border-box;
  padding: clamp(64px, 7vw, 112px) clamp(24px, 4vw, 70px);
}

.rigalloro-apartment-section > .wp-block-columns,
.rigalloro-apartments-service > .wp-block-columns,
.rigalloro-apartments-extras > .wp-block-columns {
  max-width: 1760px;
  margin-right: auto;
  margin-left: auto;
}

.rigalloro-apartment-top,
.rigalloro-apartment-bottom {
  gap: clamp(28px, 4vw, 72px);
}

.rigalloro-apartment-bottom {
  margin-top: clamp(28px, 3vw, 54px);
}

.rigalloro-apartment-copy h2,
.rigalloro-apartment-copy h4 {
  margin-top: 0;
  margin-bottom: 18px;
}

.rigalloro-apartment-tall img,
.rigalloro-apartment-stack img {
  display: block;
  width: 100%;
  object-fit: cover;
}

.rigalloro-apartment-tall .wp-block-image,
.rigalloro-apartment-stack .wp-block-image {
  margin: 0;
}

.rigalloro-apartment-stack {
  display: flex;
  flex-direction: column;
  gap: clamp(18px, 2vw, 30px);
}

.rigalloro-apartment-section .rigalloro-offer-list {
  columns: 1;
  margin: 28px 0;
}

.rigalloro-apartments-service .rigalloro-offer-list {
  columns: 1;
}

.rigalloro-apartment-section .rigalloro-offer-list,
.rigalloro-apartment-section .rigalloro-offer-list li,
.rigalloro-apartments-service .rigalloro-offer-list,
.rigalloro-apartments-service .rigalloro-offer-list li {
  color: #22201e !important;
}

.rigalloro-price-table table {
  border-collapse: collapse;
  width: 100%;
}

.rigalloro-price-table td {
  padding: 9px 0;
  border: 0;
  border-bottom: 1px dotted #9a9895;
  vertical-align: bottom;
}

.rigalloro-price-table td:last-child {
  padding-left: 20px;
  color: #d8522c;
  text-align: right;
  white-space: nowrap;
}

.rigalloro-apartments-separator {
  min-height: 50vh;
  margin: 0;
}

.rigalloro-apartments-wide {
  padding: 0;
}

.rigalloro-apartments-wide-image,
.rigalloro-apartments-wide-image img {
  display: block;
  width: 100%;
  margin: 0;
}

@media (max-width: 781px) {
  .rigalloro-apartments-hero {
    min-height: 68vh !important;
    padding: 0 20px 36px;
  }

  .rigalloro-apartment-top,
  .rigalloro-apartment-bottom,
  .rigalloro-service-grid {
    gap: 28px;
  }

  .rigalloro-apartment-tall,
  .rigalloro-apartment-stack,
  .rigalloro-apartment-details {
    flex-basis: 100% !important;
  }
}
