*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-primary: #660000;--color-primary-dark: #7a1609;--color-bg: #fcfcfc;--color-bg-warm: #e8d9c0;--color-bg-card: #f9f3e7;--color-border: #e4d7be;--color-border-dark: #bdbdbd;--color-text: #333;--color-text-light: #666;--color-text-footer: #7e1f13;--color-white: #fff;--font-serif: "Lora", Georgia, "Times New Roman", Times, serif;--max-width: 960px}body{font-family:var(--font-serif);font-size:16px;line-height:1.6;color:var(--color-text);background-color:var(--color-bg);background-image:linear-gradient(to bottom,var(--color-bg-warm),var(--color-bg) 300px)}a{color:var(--color-primary);text-decoration:none;transition:color .2s}a:hover{text-decoration:underline;color:var(--color-primary-dark)}img{max-width:100%;height:auto}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);font-weight:600;line-height:1.3}.lang-switcher{display:flex;gap:.5rem;justify-content:flex-end;max-width:var(--max-width);margin:0 auto;padding:.5rem 1rem}.lang-switcher a{display:flex;align-items:center;gap:.25rem;font-size:.85rem;padding:.25rem .5rem;border-radius:4px;transition:background-color .2s}.lang-switcher a:hover{background-color:#0000000d;text-decoration:none}.lang-switcher a.active{font-weight:700}.lang-switcher img{width:20px;height:14px;border:1px solid #ddd}.site-header{background-color:var(--color-primary);background-image:linear-gradient(135deg,#4a0000,#600,#7a1609);padding:1.5rem 1rem}.site-header .wrap{max-width:var(--max-width);margin:0 auto;display:flex;align-items:center;gap:1.5rem}.site-header .logo{flex-shrink:0}.site-header .logo img{height:80px;width:auto}.site-header .logo a{display:block}.site-header .title-area{color:var(--color-white)}.site-header .site-title{font-size:1.5rem;font-style:italic;font-weight:400;margin:0}.site-header .site-title a{color:var(--color-white)}.site-header .site-title a:hover{text-decoration:none}.site-header .site-description{font-size:1rem;font-style:italic;opacity:.85;margin-top:.25rem}.site-nav{background-color:var(--color-bg-warm);border-bottom:1px solid var(--color-border-dark);position:sticky;top:0;z-index:100}.site-nav .wrap{max-width:var(--max-width);margin:0 auto;padding:0 1rem}.site-nav ul{list-style:none;display:flex;flex-wrap:wrap;gap:0}.site-nav li a{display:block;padding:.75rem 1rem;font-size:1rem;color:#555;text-decoration:none;position:relative;transition:color .2s,background-color .2s}.site-nav li a:hover,.site-nav li a.active{color:var(--color-primary);background-color:#0000000a;text-decoration:none}.site-nav li a.active:after{content:"";position:absolute;bottom:0;left:.5rem;right:.5rem;height:3px;background-color:var(--color-primary);border-radius:3px 3px 0 0}.nav-toggle{display:none;background:none;border:none;font-size:1.5rem;cursor:pointer;padding:.75rem 1rem;color:#555}.site-main{max-width:var(--max-width);margin:0 auto;padding:1.5rem 1rem;display:grid;grid-template-columns:1fr 300px;gap:1.5rem}.site-main.full-width{grid-template-columns:1fr}.content-area{min-width:0}.card{background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.card h1{font-size:1.5rem;color:var(--color-text);margin-bottom:1rem}.card h2{font-size:1.25rem;color:var(--color-text);margin:1.5rem 0 .75rem}.card p{margin-bottom:.75rem;color:var(--color-text-light)}.card ul{list-style:disc;padding-left:1.5rem;margin-bottom:1rem}.card ul li{margin-bottom:.4rem;color:var(--color-text-light)}.sidebar{display:flex;flex-direction:column;gap:1.5rem}.sidebar-box{background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:1.25rem}.sidebar-box h3{font-size:1.1rem;color:var(--color-primary);margin-bottom:.75rem}.booking-form{display:flex;flex-direction:column;gap:.6rem}.booking-form label{font-size:.85rem;font-weight:600;color:var(--color-text)}.booking-form input,.booking-form select,.booking-form textarea{width:100%;padding:.5rem;font-family:var(--font-serif);font-size:.9rem;border:1px solid var(--color-border);border-radius:4px;background-color:#f7f5f2;color:var(--color-text)}.booking-form textarea{min-height:80px;resize:vertical}.booking-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.booking-form .privacy-row{display:flex;align-items:flex-start;gap:.5rem;font-size:.75rem;color:var(--color-text-light)}.booking-form .privacy-row input[type=checkbox]{width:auto;margin-top:.2rem}.booking-form button,.btn-primary{background-color:var(--color-primary);color:var(--color-white);border:none;padding:.6rem 1.5rem;font-family:var(--font-serif);font-size:.95rem;border-radius:4px;cursor:pointer;transition:background-color .2s}.booking-form button:hover,.btn-primary:hover{background-color:var(--color-primary-dark)}.contact-form{display:flex;flex-direction:column;gap:.75rem}.contact-form label{font-size:.9rem;font-weight:600}.contact-form input,.contact-form textarea{width:100%;padding:.5rem;font-family:var(--font-serif);font-size:.9rem;border:1px solid var(--color-border);border-radius:4px;background-color:#f7f5f2}.contact-form textarea{min-height:120px;resize:vertical}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;margin:1rem 0}.gallery img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:6px;border:2px solid var(--color-white);box-shadow:0 2px 4px #0000001a;transition:transform .2s,box-shadow .2s}.gallery img:hover{transform:scale(1.05);box-shadow:0 4px 8px #0003}.img-left{float:left;margin:0 1rem .75rem 0;border:2px solid var(--color-white);border-radius:6px;max-width:280px}.site-footer{background-color:var(--color-bg-warm);border-top:1px solid var(--color-border-dark);margin-top:2rem}.site-footer .wrap{max-width:var(--max-width);margin:0 auto;padding:2rem 1rem;text-align:center}.site-footer p{color:var(--color-text-footer);font-size:.8rem;line-height:1.6}.site-footer a{color:var(--color-text-footer)}.site-footer hr{border:none;border-top:1px solid var(--color-text-footer);margin-bottom:1rem}@media(max-width:768px){.site-header .wrap{flex-direction:column;text-align:center}.nav-toggle{display:block}.site-nav ul{display:none;flex-direction:column}.site-nav ul.open{display:flex}.site-nav li a{border-bottom:1px solid rgba(0,0,0,.05)}.site-main{grid-template-columns:1fr}.img-left{float:none;max-width:100%;margin:0 0 1rem}.booking-form .form-row{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(2,1fr)}}.room-types{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin:1rem 0}.room-type{text-align:center;padding:1rem;background:#ffffff80;border-radius:6px;border:1px solid var(--color-border)}.room-type h3{font-size:1rem;color:var(--color-primary);margin-bottom:.25rem;font-weight:600}.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.5rem;margin:1rem 0}.services-grid li{list-style:none;padding:.5rem;background:#ffffff80;border-radius:4px;font-size:.9rem;color:var(--color-text-light)}.pearl-item{display:flex;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--color-primary);align-items:flex-start}.pearl-item:last-child{border-bottom:none}.pearl-item img{width:120px;height:120px;object-fit:cover;border-radius:6px;flex-shrink:0}.pearl-item h3{font-size:1rem;color:var(--color-primary);margin-bottom:.25rem}.pearl-item p{font-size:.9rem}.pdf-table{width:100%;margin:1rem 0}.pdf-row{padding:.75rem 0;border-bottom:1px solid var(--color-primary)}.pdf-row:first-child{border-top:1px solid var(--color-primary)}.pdf-row strong{display:block;color:var(--color-text);margin-bottom:.25rem}.pdf-row p{font-size:.9rem;margin:0}.map-container{width:100%;height:350px;border:1px solid var(--color-border);border-radius:8px;overflow:hidden;margin:1rem 0}.map-container iframe{width:100%;height:100%;border:none}.logos-box{text-align:center}.logos-box img{border-radius:6px;max-width:100%}.entry-title{font-size:1.75rem;color:var(--color-text);margin-bottom:1.5rem;padding-left:.5rem;border-left:4px solid var(--color-primary)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-40px;left:0;background:var(--color-primary);color:#fff;padding:8px;z-index:1000;transition:top .2s}.skip-link:focus{top:0}
