/* Explain: Theme tokens for the Coastal Irish color palette and fonts. */
:root {
    --primary-color: #2c2c2c;
    --primary-hover: #3d3d3d;
    --secondary-color: #1a1a1a;
    --accent-color: #8b1e1e;
    --logo-subtitle-color: #9ca3af;
    --button-color: #8b1e1e;
    --background-color: #050505;
    --surface-color: #121212;
    --footer-bg: #000000;
    --text-color: #f3f4f6;
    --text-muted: #9ca3af;
    --border-color: rgba(255, 255, 255, 0.1);
    --glass-bg: rgba(18, 18, 18, 0.72);
    --glass-border: rgba(255, 255, 255, 0.08);
    --nav-bg: rgba(5, 5, 5, 0.85);
    --field-bg: rgba(255, 255, 255, 0.05);
    --sage-soft: rgba(139, 30, 30, 0.15);
    --sage-dark: #ef4444;
    --terracotta-soft: rgba(30, 30, 30, 0.4);
    --shadow-soft: 0 22px 70px rgba(0, 0, 0, 0.5);
    --shadow-button: 0 16px 36px rgba(139, 30, 30, 0.25);
    --font-heading: 'Kage', 'Playfair Display', serif;
    --font-body: 'Montserrat', sans-serif;
    --font-logo: 'Playfair Display', serif;
    --font-kage: 'Kage', 'Playfair Display', serif;
    --font-bogart: 'Bogart', 'Playfair Display', serif;
    --stone-texture: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='160' viewBox='0 0 240 160'%3E%3Cg fill='none' stroke='%23FFFFFF' stroke-opacity='0.03' stroke-width='1.3' stroke-linejoin='round'%3E%3Cpath d='M0 2 L68 0 L70 35 L1 38 Z M73 0 L160 2 L158 37 L72 36 Z M163 1 L240 0 L239 38 L161 37 Z M0 42 L48 40 L46 78 L1 77 Z M51 41 L118 42 L120 78 L49 78 Z M123 40 L240 42 L239 79 L121 77 Z M1 80 L88 82 L87 118 L0 117 Z M91 82 L150 80 L152 117 L89 119 Z M155 81 L240 82 L239 119 L153 117 Z M0 120 L60 122 L59 157 L1 156 Z M63 122 L130 120 L132 158 L61 157 Z M135 121 L240 120 L240 158 L133 156 Z'/%3E%3C/g%3E%3C/svg%3E");
    --stone-wall: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='480' height='300' viewBox='0 0 480 300'%3E%3Crect width='480' height='300' fill='%230b0b09'/%3E%3Cg stroke='%23060504' stroke-width='2.4' stroke-linejoin='round'%3E%3Cpath d='M2 3 L58 0 L64 10 L62 42 L1 44 Z' fill='%23b3b3a7'/%3E%3Cpath d='M66 0 L128 3 L134 12 L131 43 L65 44 Z' fill='%238f8f83'/%3E%3Cpath d='M136 2 L188 0 L195 9 L191 44 L135 43 Z' fill='%23a2a296'/%3E%3Cpath d='M197 1 L252 3 L258 13 L255 44 L196 44 Z' fill='%237c7b70'/%3E%3Cpath d='M260 2 L318 0 L325 11 L321 43 L259 44 Z' fill='%2399998d'/%3E%3Cpath d='M327 1 L388 3 L395 12 L391 44 L326 43 Z' fill='%23a6a69a'/%3E%3Cpath d='M397 2 L448 0 L456 10 L452 44 L396 44 Z' fill='%2386857a'/%3E%3Cpath d='M458 1 L480 3 L480 44 L457 44 Z' fill='%2390908a'/%3E%3Cpath d='M1 50 L52 48 L58 56 L55 84 L0 86 Z' fill='%238f8f83'/%3E%3Cpath d='M60 49 L110 51 L116 58 L112 85 L59 86 Z' fill='%23b0b0a4'/%3E%3Cpath d='M118 48 L152 50 L156 57 L153 85 L117 86 Z' fill='%237f7e73'/%3E%3Cpath d='M158 49 L222 48 L228 57 L225 85 L157 86 Z' fill='%239c9c90'/%3E%3Cpath d='M230 50 L286 48 L292 56 L288 85 L229 86 Z' fill='%238a897e'/%3E%3Cpath d='M294 49 L352 51 L358 58 L354 85 L293 86 Z' fill='%23a8a89c'/%3E%3Cpath d='M360 48 L416 50 L422 57 L418 85 L359 86 Z' fill='%237a7a6f'/%3E%3Cpath d='M424 49 L480 48 L480 86 L423 86 Z' fill='%239e9e92'/%3E%3Cpath d='M2 92 L66 90 L72 100 L68 132 L1 134 Z' fill='%23a9a99d'/%3E%3Cpath d='M74 91 L124 93 L130 101 L126 133 L73 134 Z' fill='%23817f76'/%3E%3Cpath d='M132 92 L170 90 L176 99 L172 133 L131 134 Z' fill='%23939387'/%3E%3Cpath d='M178 91 L240 92 L246 101 L242 133 L177 134 Z' fill='%2377766c'/%3E%3Cpath d='M248 92 L300 90 L306 99 L302 133 L247 134 Z' fill='%23a0a094'/%3E%3Cpath d='M308 91 L368 92 L374 101 L370 133 L307 134 Z' fill='%238c8c80'/%3E%3Cpath d='M376 92 L430 90 L436 99 L432 133 L375 134 Z' fill='%239a9a8e'/%3E%3Cpath d='M438 91 L480 92 L480 134 L437 134 Z' fill='%238f8f84'/%3E%3Cpath d='M1 140 L40 138 L46 146 L43 176 L0 178 Z' fill='%23b0b0a4'/%3E%3Cpath d='M48 139 L108 140 L114 148 L110 177 L47 178 Z' fill='%237c7b71'/%3E%3Cpath d='M116 140 L164 138 L170 146 L167 177 L115 178 Z' fill='%239a9a8e'/%3E%3Cpath d='M172 139 L238 140 L244 148 L240 177 L171 178 Z' fill='%2386857a'/%3E%3Cpath d='M246 140 L300 138 L306 146 L303 177 L245 178 Z' fill='%23a4a498'/%3E%3Cpath d='M308 139 L372 140 L378 148 L374 177 L307 178 Z' fill='%23807f75'/%3E%3Cpath d='M380 140 L436 138 L442 146 L439 177 L379 178 Z' fill='%239d9d91'/%3E%3Cpath d='M444 139 L480 140 L480 178 L443 178 Z' fill='%238b8b80'/%3E%3Cpath d='M2 184 L62 182 L68 190 L65 220 L1 222 Z' fill='%23807f75'/%3E%3Cpath d='M70 183 L118 185 L124 192 L120 221 L69 222 Z' fill='%23a8a89c'/%3E%3Cpath d='M126 184 L188 182 L194 190 L191 221 L125 222 Z' fill='%238b8b80'/%3E%3Cpath d='M196 183 L248 185 L254 192 L250 221 L195 222 Z' fill='%23757469'/%3E%3Cpath d='M256 184 L324 182 L330 190 L327 221 L255 222 Z' fill='%2397978b'/%3E%3Cpath d='M332 183 L394 185 L400 192 L396 221 L331 222 Z' fill='%23a0a094'/%3E%3Cpath d='M402 184 L480 182 L480 222 L401 222 Z' fill='%238f8f84'/%3E%3Cpath d='M1 228 L56 226 L62 234 L59 260 L0 262 Z' fill='%239d9d91'/%3E%3Cpath d='M64 227 L120 228 L126 236 L122 261 L63 262 Z' fill='%23807f75'/%3E%3Cpath d='M128 228 L184 226 L190 234 L187 261 L127 262 Z' fill='%23a8a89c'/%3E%3Cpath d='M192 227 L250 228 L256 236 L252 261 L191 262 Z' fill='%238b8b80'/%3E%3Cpath d='M258 228 L320 226 L326 234 L323 261 L257 262 Z' fill='%23757469'/%3E%3Cpath d='M328 227 L392 228 L398 236 L394 261 L327 262 Z' fill='%2397978b'/%3E%3Cpath d='M400 228 L480 226 L480 262 L399 262 Z' fill='%23a0a094'/%3E%3Cpath d='M2 268 L68 266 L74 274 L71 298 L1 300 Z' fill='%2390908a'/%3E%3Cpath d='M76 267 L134 268 L140 276 L136 299 L75 300 Z' fill='%23b0b0a4'/%3E%3Cpath d='M142 268 L200 266 L206 274 L203 299 L141 300 Z' fill='%237f7e73'/%3E%3Cpath d='M208 267 L270 268 L276 276 L272 299 L207 300 Z' fill='%239c9c90'/%3E%3Cpath d='M278 268 L340 266 L346 274 L343 299 L277 300 Z' fill='%238a897e'/%3E%3Cpath d='M348 267 L414 268 L420 276 L416 299 L347 300 Z' fill='%23a8a89c'/%3E%3Cpath d='M422 268 L480 266 L480 300 L421 300 Z' fill='%237a7a6f'/%3E%3C/g%3E%3Cg fill='none' stroke='%23ffffff' stroke-opacity='0.09' stroke-width='1.2'%3E%3Cpath d='M4 4 L56 1'/%3E%3Cpath d='M68 1 L126 4'/%3E%3Cpath d='M138 3 L186 1'/%3E%3Cpath d='M199 2 L250 4'/%3E%3Cpath d='M262 3 L316 1'/%3E%3Cpath d='M329 2 L386 4'/%3E%3Cpath d='M399 3 L446 1'/%3E%3Cpath d='M3 50 L50 48'/%3E%3Cpath d='M62 50 L108 51'/%3E%3Cpath d='M120 49 L150 51'/%3E%3Cpath d='M160 50 L220 48'/%3E%3Cpath d='M232 51 L284 48'/%3E%3Cpath d='M296 50 L350 52'/%3E%3Cpath d='M362 49 L414 51'/%3E%3Cpath d='M4 93 L64 91'/%3E%3Cpath d='M76 92 L122 94'/%3E%3Cpath d='M134 93 L168 91'/%3E%3Cpath d='M180 92 L238 93'/%3E%3Cpath d='M250 93 L298 91'/%3E%3Cpath d='M310 92 L366 93'/%3E%3Cpath d='M378 93 L428 91'/%3E%3Cpath d='M3 141 L38 139'/%3E%3Cpath d='M50 140 L106 141'/%3E%3Cpath d='M118 141 L162 139'/%3E%3Cpath d='M174 140 L236 141'/%3E%3Cpath d='M248 141 L298 139'/%3E%3Cpath d='M310 140 L370 141'/%3E%3Cpath d='M382 141 L434 139'/%3E%3Cpath d='M4 185 L60 183'/%3E%3Cpath d='M72 184 L116 186'/%3E%3Cpath d='M128 185 L186 183'/%3E%3Cpath d='M198 184 L246 186'/%3E%3Cpath d='M258 185 L322 183'/%3E%3Cpath d='M334 184 L392 186'/%3E%3Cpath d='M3 229 L54 227'/%3E%3Cpath d='M66 228 L118 229'/%3E%3Cpath d='M130 229 L182 227'/%3E%3Cpath d='M194 228 L248 229'/%3E%3Cpath d='M260 229 L318 227'/%3E%3Cpath d='M330 228 L390 229'/%3E%3Cpath d='M4 269 L66 267'/%3E%3Cpath d='M78 268 L132 269'/%3E%3Cpath d='M144 269 L198 267'/%3E%3Cpath d='M210 268 L268 269'/%3E%3Cpath d='M280 269 L338 267'/%3E%3Cpath d='M350 268 L412 269'/%3E%3C/g%3E%3Cg fill='%235f6647' opacity='0.22'%3E%3Cellipse cx='90' cy='26' rx='24' ry='7'/%3E%3Cellipse cx='300' cy='66' rx='28' ry='8'/%3E%3Cellipse cx='180' cy='110' rx='22' ry='6'/%3E%3Cellipse cx='420' cy='150' rx='26' ry='8'/%3E%3Cellipse cx='60' cy='200' rx='20' ry='6'/%3E%3Cellipse cx='250' cy='240' rx='26' ry='7'/%3E%3Cellipse cx='150' cy='284' rx='22' ry='6'/%3E%3Cellipse cx='380' cy='30' rx='20' ry='6'/%3E%3C/g%3E%3Cg fill='%237a8259' opacity='0.16'%3E%3Cellipse cx='210' cy='40' rx='16' ry='5'/%3E%3Cellipse cx='340' cy='120' rx='18' ry='6'/%3E%3Cellipse cx='120' cy='160' rx='15' ry='5'/%3E%3Cellipse cx='300' cy='200' rx='18' ry='6'/%3E%3Cellipse cx='440' cy='250' rx='16' ry='5'/%3E%3Cellipse cx='40' cy='130' rx='14' ry='5'/%3E%3C/g%3E%3Cg fill='none' stroke='%232f2f28' stroke-opacity='0.3' stroke-width='2'%3E%3Cpath d='M150 62 L146 96'/%3E%3Cpath d='M330 162 L326 196'/%3E%3Cpath d='M220 250 L216 288'/%3E%3C/g%3E%3C/svg%3E");
}