/* Surf Ireland Visual System — Report 33
   Keeps body/utility text readable while making major destinations, cards and actions feel like one product. */
:root{
  --si33-ink:#063847;
  --si33-deep:#062c40;
  --si33-teal:#0b8791;
  --si33-cyan:#3aebd4;
  --si33-coral:#ff7458;
  --si33-yellow:#ffda59;
  --si33-cream:#fff8eb;
  --si33-sky:#69e7ef;
  --si33-shadow:#032937;
}

/* ---------- Shared display language ---------- */
.home-refresh .section-head h2,
.home-refresh .community h2,
.home-refresh .choose h2,
.forecast-page .location-guide-copy h3,
.guides-index-page .guide-hero h1,
.guides-index-page .guide-tile h2,
.spot-guide.template-v2 .sg-hero h1,
.spot-guide.template-v2 .sg-section-head h2,
.spot-guide.template-v2 .sg-safety-strip h2,
.spot-guide.template-v2 .sg-cta h2,
.schools-page .school-hero h1,
.schools-page .partner-showcase-head h2,
.schools-page .finder-heading h2,
.trip-page .trip-hero h1,
.trip-page .trip-summary h2,
.gallery-page .gallery-hero h1,
.gallery-page .album-heading h2,
.gallery-page .gallery-cta h2{
  font-family:'Arial Rounded MT Bold',ui-rounded,'Trebuchet MS',Arial,sans-serif!important;
  font-weight:1000!important;
  letter-spacing:-1.5px!important;
  paint-order:stroke fill;
}

/* Major bright-surface headlines: surf WordArt without losing real HTML text. */
.home-refresh .section-head h2,
.home-refresh .choose h2,
.guides-index-page .guide-tile h2,
.spot-guide.template-v2 .sg-section-head h2,
.schools-page .partner-showcase-head h2,
.schools-page .finder-heading h2{
  color:var(--si33-ink);
  text-shadow:0 2px 0 #fff,0 4px 0 #9ddbd2,0 7px 12px #073e4720;
}

/* Hero/display WordArt on dark/photo backgrounds. */
.guides-index-page .guide-hero h1,
.spot-guide.template-v2 .sg-hero h1,
.schools-page .school-hero h1,
.trip-page .trip-hero h1,
.gallery-page .gallery-hero h1{
  color:#fff;
  -webkit-text-stroke:1px rgba(4,47,60,.58);
  text-shadow:0 3px 0 #075367,0 7px 0 #053645,0 12px 24px rgba(0,25,40,.4)!important;
}

/* Old tiny typewriter/eyebrow labels become legible badges. */
.home-refresh .eyebrow,
.forecast-page .kicker,
.guides-index-page .guide-kicker,
.spot-guide.template-v2 .sg-kicker,
.spot-guide.template-v2 .sg-eyebrow,
.schools-page .eyebrow,
.trip-page .eyebrow,
.gallery-page .eyebrow{
  display:inline-flex;
  width:max-content;
  max-width:100%;
  align-items:center;
  min-height:31px;
  padding:7px 11px;
  margin-bottom:12px;
  border-radius:999px;
  font-family:ui-rounded,'Trebuchet MS',Arial,sans-serif!important;
  font-size:11px!important;
  line-height:1.15!important;
  font-weight:900!important;
  letter-spacing:.55px!important;
  text-transform:uppercase;
  background:linear-gradient(180deg,#ffffffee,#e8f8f3e8);
  color:#075568!important;
  border:1px solid rgba(255,255,255,.75);
  box-shadow:inset 0 2px 0 rgba(255,255,255,.7),0 4px 0 rgba(5,80,91,.16),0 8px 14px rgba(3,45,58,.12);
}
.guides-index-page .guide-hero .guide-kicker,
.spot-guide.template-v2 .sg-hero .sg-kicker,
.schools-page .school-hero .eyebrow,
.trip-page .trip-hero .eyebrow,
.gallery-page .gallery-hero .eyebrow{
  background:linear-gradient(180deg,#fffef8,#dffaf4);
  color:#06465a!important;
}


/* Homepage brand label is a wordmark, not a tiny eyebrow badge. */
.home-refresh .hero .eyebrow{
  display:inline-block!important;
  min-height:0!important;
  padding:0!important;
  margin:0 0 20px!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
  box-shadow:none!important;
  color:#fff8eb!important;
  font-family:'Arial Rounded MT Bold',ui-rounded,'Trebuchet MS',Arial,sans-serif!important;
  font-size:clamp(28px,5vw,42px)!important;
  font-weight:1000!important;
  line-height:1!important;
  letter-spacing:-1px!important;
  text-shadow:0 3px 0 #063b49,0 7px 0 #07576a,0 12px 22px rgba(0,32,45,.35)!important;
}

/* ---------- Shared tactile actions ---------- */
.home-refresh .button,
.guides-index-page .guide-navlinks a,
.guides-index-page .guide-button,
.spot-guide.template-v2 .sg-btn,
.spot-guide.template-v2 .guide-navlinks a,
.schools-page .button,
.schools-page .partner-forecast-cta,
.schools-page .partner-actions a,
.schools-page .partner-actions button,
.schools-page .row-actions a,
.schools-page .show-map,
.trip-page .button,
.trip-page .secondary,
.trip-page .share,
.trip-page .revolut-link,
.gallery-page .button,
.gallery-page .photo-filters button,
.gallery-page .carousel-controls button,
.forecast-page .share-button,
.forecast-page .player-share,
.forecast-page #forecast-play,
.forecast-page #motion-toggle,
.forecast-page .unit-controls button,
.forecast-page .range-tabs button{
  font-family:'Arial Rounded MT Bold',ui-rounded,'Trebuchet MS',Arial,sans-serif!important;
  font-weight:900!important;
}

.trip-page .button,
.trip-page .secondary,
.gallery-page .button,
.schools-page .button,
.schools-page .partner-forecast-cta{
  border:1px solid rgba(255,255,255,.42)!important;
  box-shadow:inset 0 3px 1px rgba(255,255,255,.4),inset 0 -5px 0 rgba(0,0,0,.13),0 7px 0 rgba(3,42,50,.28),0 13px 20px rgba(1,27,38,.18)!important;
  transition:transform .16s ease,box-shadow .16s ease,filter .16s ease!important;
}
.trip-page .button:hover,.trip-page .secondary:hover,
.gallery-page .button:hover,.schools-page .button:hover,.schools-page .partner-forecast-cta:hover{transform:translateY(-2px);filter:saturate(1.05) brightness(1.03)}
.trip-page .button:active,.trip-page .secondary:active,
.gallery-page .button:active,.schools-page .button:active,.schools-page .partner-forecast-cta:active{transform:translateY(3px);box-shadow:inset 0 2px 1px rgba(255,255,255,.28),0 2px 0 rgba(3,42,50,.24)!important}

/* ---------- Homepage ---------- */
.home-refresh .section-head h2{font-size:clamp(36px,6vw,58px)!important;line-height:.96!important}
.home-refresh .choose>a,
.home-refresh .event-card,
.home-refresh .event-empty,
.home-refresh .partners a{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.75)!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.7),0 7px 0 rgba(7,62,71,.12),0 16px 28px rgba(7,62,71,.12)!important;
}
.home-refresh .choose>a::after,
.home-refresh .partners a::after{content:'';position:absolute;left:8%;right:8%;top:5px;height:30%;border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.35),transparent);pointer-events:none}
.home-refresh .choose h2,.home-refresh .partners h3{font-family:'Arial Rounded MT Bold',ui-rounded,'Trebuchet MS',Arial,sans-serif!important;font-weight:1000!important;text-shadow:0 2px 0 #fff,0 4px 0 rgba(7,62,71,.12)}
.home-refresh .text-link{display:inline-flex;align-items:center;min-height:42px;padding:9px 13px;border-radius:15px;text-decoration:none;background:linear-gradient(180deg,#fff,#eaf7f2);box-shadow:0 4px 0 #b8d7ce;font-weight:900}

/* ---------- Surf report ---------- */
.forecast-page .destination-card .dest-copy strong{
  font-family:'Arial Rounded MT Bold',ui-rounded,'Trebuchet MS',Arial,sans-serif!important;
  font-size:clamp(15px,2.6vw,23px)!important;
  font-weight:1000!important;
  letter-spacing:-.7px!important;
  color:#fff!important;
  -webkit-text-stroke:.45px rgba(4,48,62,.52);
  text-shadow:0 2px 0 #063f51,0 4px 7px rgba(0,25,39,.3)!important;
}
.forecast-page .destination-card[aria-pressed="true"] .dest-copy strong{color:#063b4b!important;-webkit-text-stroke:0;text-shadow:0 2px 0 rgba(255,255,255,.65)!important}
.forecast-page .destination-card .dest-county{font-family:'Arial Rounded MT Bold',ui-rounded,'Trebuchet MS',Arial,sans-serif!important;font-weight:900!important}
.forecast-page .moment-header #playback-town{font-family:'Arial Rounded MT Bold',ui-rounded,'Trebuchet MS',Arial,sans-serif!important;text-shadow:0 2px 0 #6f5413,0 4px 7px rgba(0,0,0,.18)}
.forecast-page .location-guide-banner{position:relative;overflow:hidden}
.forecast-page .location-guide-banner::after{content:'';position:absolute;inset:5px 8% auto;height:38%;border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.34),transparent);pointer-events:none}
.forecast-page .location-guide-copy h3{font-size:clamp(24px,4.6vw,36px)!important;color:#07495b;text-shadow:0 2px 0 #fff,0 5px 0 #b7ded4,0 8px 13px #073e4720}
.forecast-page .panel-top h3,.forecast-page .chart-panel h3,.forecast-page .warning-panel h3{font-family:'Arial Rounded MT Bold',ui-rounded,'Trebuchet MS',Arial,sans-serif!important;font-weight:1000!important}

/* ---------- Surf guide index ---------- */
.guides-index-page .guide-hero h1{font-size:clamp(50px,10vw,92px)!important}
.guides-index-page .guide-tile h2{font-size:clamp(29px,4vw,39px)!important;text-shadow:0 2px 0 #fff,0 5px 0 var(--tile-line),0 8px 12px rgba(7,62,71,.15)!important}
.guides-index-page .guide-tile small{font-family:'Arial Rounded MT Bold',ui-rounded,'Trebuchet MS',Arial,sans-serif!important;font-size:11px!important;letter-spacing:.45px!important;box-shadow:0 3px 0 rgba(7,62,71,.1)}
.guides-index-page .guide-navlinks a{box-shadow:inset 0 2px 0 rgba(255,255,255,.24),0 4px 0 rgba(0,19,29,.25)!important}

/* ---------- Individual surf guides ---------- */
.spot-guide.template-v2 .sg-hero h1{font-size:clamp(50px,9vw,90px)!important}
.spot-guide.template-v2 .sg-section-head h2{font-size:clamp(34px,5vw,52px)!important;text-shadow:0 2px 0 #fff,0 5px 0 var(--spot-accent),0 8px 14px rgba(7,62,71,.16)}
.spot-guide.template-v2 .sg-info-card{border:1px solid rgba(7,62,71,.12);box-shadow:inset 0 2px 0 rgba(255,255,255,.8),0 7px 0 rgba(7,62,71,.08),0 16px 28px rgba(7,62,71,.1)!important}
.spot-guide.template-v2 .sg-info-card h3,
.spot-guide.template-v2 .sg-detail h3{font-family:'Arial Rounded MT Bold',ui-rounded,'Trebuchet MS',Arial,sans-serif!important;font-size:clamp(20px,3vw,27px)!important;font-weight:1000!important;letter-spacing:-.6px!important;color:#074653;text-shadow:0 1px 0 #fff}
.spot-guide.template-v2 .sg-quick article{box-shadow:inset 0 2px 0 rgba(255,255,255,.45)}
.spot-guide.template-v2 .sg-btn{box-shadow:inset 0 3px 1px rgba(255,255,255,.45),inset 0 -4px 0 rgba(0,0,0,.12),0 7px 0 rgba(3,42,50,.22),0 12px 18px rgba(3,42,50,.12)!important}

/* ---------- Surf schools ---------- */
.schools-page .partner-showcase-head h2,.schools-page .finder-heading h2{font-size:clamp(42px,7vw,70px)!important}
.schools-page .county-group h2{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  margin:18px 0 8px!important;
  padding:9px 15px!important;
  border-radius:16px;
  background:linear-gradient(180deg,#fffef8,#dff4ee);
  color:#075568!important;
  border:1px solid #fff;
  box-shadow:0 5px 0 #b2d5cb,0 10px 16px rgba(7,62,71,.1);
  font-family:'Arial Rounded MT Bold',ui-rounded,'Trebuchet MS',Arial,sans-serif!important;
  font-size:18px!important;
  font-weight:1000!important;
  letter-spacing:-.3px!important;
  text-transform:none!important;
}
.schools-page .school-row h3{font-size:clamp(23px,3vw,31px)!important;line-height:1!important;text-shadow:0 2px 0 #fff,0 4px 0 rgba(8,125,133,.15)!important}
.schools-page .school-row.partner{box-shadow:inset 0 2px 0 rgba(255,255,255,.72),0 6px 0 rgba(7,62,71,.08),0 14px 24px rgba(7,62,71,.1)}
.schools-page .reset{font-family:'Arial Rounded MT Bold',ui-rounded,'Trebuchet MS',Arial,sans-serif!important;font-weight:900!important;box-shadow:inset 0 2px 0 rgba(255,255,255,.38),0 4px 0 #b64b35!important}

/* ---------- Trip / booking ---------- */
.trip-page .trip-hero{box-shadow:0 9px 0 rgba(1,28,41,.35),0 18px 28px rgba(0,18,29,.2)}
.trip-page .trip-hero h1{font-size:clamp(42px,9vw,68px)!important;line-height:.98!important}
.trip-page .panel{box-shadow:inset 0 2px 0 rgba(255,255,255,.04),0 7px 0 rgba(0,23,35,.22),0 15px 24px rgba(0,20,31,.12)!important}
.trip-page .panel h2{font-family:'Arial Rounded MT Bold',ui-rounded,'Trebuchet MS',Arial,sans-serif!important;font-weight:1000!important;letter-spacing:-1px!important;text-shadow:0 2px 0 rgba(0,0,0,.2)}
.trip-page .button{background:linear-gradient(180deg,#ffe981,#ffca43)!important;color:#062c40!important}
.trip-page .secondary{background:linear-gradient(180deg,#2a6075,#17465b)!important;color:#fff!important}
.trip-page .revolut-link{display:inline-flex;align-items:center;min-height:48px;padding:10px 15px;border-radius:17px;background:linear-gradient(180deg,#56f7e5,#18cfca);color:#063847!important;text-decoration:none;box-shadow:0 6px 0 #0b8f8b,0 11px 18px rgba(0,0,0,.18)}
.trip-page .status-chip{box-shadow:inset 0 2px 0 rgba(255,255,255,.15),0 3px 0 rgba(0,0,0,.17)}

/* ---------- Gallery ---------- */
.gallery-page .gallery-hero h1{font-size:clamp(48px,9vw,86px)!important}
.gallery-page .album-heading h2{font-size:clamp(34px,5vw,52px)!important;text-shadow:0 2px 0 #fff,0 5px 0 #a3d9cc,0 8px 13px rgba(7,62,71,.16)}
.gallery-page .photo-filters button{min-height:44px!important;border:1px solid #fff!important;background:linear-gradient(180deg,#fffef9,#e7f3ed)!important;box-shadow:inset 0 2px 0 rgba(255,255,255,.7),0 5px 0 #b0d1c6!important;font-family:'Arial Rounded MT Bold',ui-rounded,'Trebuchet MS',Arial,sans-serif!important;font-size:12px!important;font-weight:900!important}
.gallery-page .photo-filters button[aria-pressed=true]{background:linear-gradient(180deg,#56f7e5,#19cdc9)!important;color:#063847!important;box-shadow:inset 0 2px 0 rgba(255,255,255,.5),0 5px 0 #0a8b8c!important}
.gallery-page .carousel-controls button{min-width:46px;min-height:46px!important;border:1px solid #fff!important;box-shadow:inset 0 2px 0 rgba(255,255,255,.55),0 5px 0 #b0c9c1!important;font-family:'Arial Rounded MT Bold',ui-rounded,'Trebuchet MS',Arial,sans-serif!important;font-weight:900!important}
.gallery-page .memory-card{border:1px solid rgba(255,255,255,.8)}

/* ---------- Mobile refinements ---------- */
@media(max-width:620px){
  .home-refresh .eyebrow,.forecast-page .kicker,.guides-index-page .guide-kicker,.spot-guide.template-v2 .sg-kicker,.spot-guide.template-v2 .sg-eyebrow,.schools-page .eyebrow,.trip-page .eyebrow,.gallery-page .eyebrow{font-size:10px!important;min-height:29px;padding:6px 9px}
  .schools-page .county-group h2{font-size:16px!important}
  .forecast-page .destination-card .dest-copy strong{font-size:17px!important}
  .trip-page .button,.trip-page .secondary{font-size:14px!important}
}

@media(prefers-reduced-motion:reduce){
  .trip-page .button,.trip-page .secondary,.gallery-page .button,.schools-page .button{transition:none!important}
}

/* ---------- Navigation: compact but no longer flat ---------- */
.home-refresh .nav-links a,
.forecast-page .forecast-nav nav>a:not(.school-mark-button),
.schools-page .nav-links a,
.trip-page .top nav>a,
.trip-page .top nav .share{
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:17px!important;
  font-family:'Arial Rounded MT Bold',ui-rounded,'Trebuchet MS',Arial,sans-serif!important;
  font-weight:900!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.12),inset 0 -3px 0 rgba(0,0,0,.12),0 4px 0 rgba(0,24,35,.22)!important;
  transition:transform .15s ease,filter .15s ease!important;
}
.home-refresh .nav-links a:hover,
.forecast-page .forecast-nav nav>a:not(.school-mark-button):hover,
.schools-page .nav-links a:hover,
.trip-page .top nav>a:hover,
.trip-page .top nav .share:hover{transform:translateY(-2px);filter:brightness(1.06)}
.home-refresh .nav-links a:active,
.forecast-page .forecast-nav nav>a:not(.school-mark-button):active,
.schools-page .nav-links a:active,
.trip-page .top nav>a:active,
.trip-page .top nav .share:active{transform:translateY(2px)}

/* Make the homepage school names and report locations feel like destinations, not admin labels. */
.home-refresh .partners h3,
.home-refresh .event-card h3,
.home-refresh .event-empty h3{
  font-family:'Arial Rounded MT Bold',ui-rounded,'Trebuchet MS',Arial,sans-serif!important;
  font-weight:1000!important;
  letter-spacing:-.8px!important;
  text-shadow:0 2px 0 rgba(255,255,255,.06),0 4px 0 rgba(0,0,0,.18)!important;
}
.home-refresh .partners h3{color:#fff8eb!important}
.home-refresh .county{display:inline-flex;min-height:28px;align-items:center;padding:5px 9px;border-radius:999px;background:linear-gradient(180deg,#5af2df,#24c9c4);color:#063847!important;font-size:10px!important;letter-spacing:.3px!important;font-weight:900!important;box-shadow:0 3px 0 #0d8e91}

/* Forecast school/service controls get the same tactile hierarchy as the new school cards. */
.forecast-page .school-services span{box-shadow:inset 0 2px 0 rgba(255,255,255,.72),0 5px 0 rgba(7,62,71,.12),0 10px 16px rgba(7,62,71,.09)!important}
.forecast-page .school-actions .primary-link,
.forecast-page .school-actions .guide-link,
.forecast-page .school-actions .all-schools-link{font-family:'Arial Rounded MT Bold',ui-rounded,'Trebuchet MS',Arial,sans-serif!important;font-weight:1000!important}

/* Secondary card headings stay readable but gain character. */
.gallery-page .memory-card,
.schools-page .school-row,
.trip-page .payment-box,
.trip-page .hold-clock{box-shadow:inset 0 2px 0 rgba(255,255,255,.04),0 5px 0 rgba(0,22,34,.12),0 11px 18px rgba(0,20,31,.08)}
