@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--paper:#f6f3eb;--ink:#2e342c;--olive:#69734e;--line:#d7d6c9;--muted:#6e7167}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.7}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:5px}button{cursor:pointer}img{display:block;width:100%;height:100%;object-fit:cover}header{max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:29px 6%;border-bottom:1px solid var(--line)}.brand{font-family:'Playfair Display',Georgia,serif;font-size:29px;letter-spacing:-1px;line-height:1.15}.brand span{display:block;font:8px 'DM Sans',sans-serif;letter-spacing:2.5px;margin-top:9px}nav{display:flex;gap:30px;font-size:12px;align-items:center}.nav-book{border-bottom:1px solid var(--ink);padding-bottom:6px}.hero{max-width:1440px;margin:auto;padding:65px 8% 65px 8%;display:grid;grid-template-columns:1.1fr 1fr;gap:7%;position:relative;align-items:center}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2px;margin:0 0 25px}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400;line-height:1.12;letter-spacing:-2px}h1{font-size:clamp(60px,6.8vw,100px);margin:0 0 28px}i{font-weight:400;color:var(--olive)}.intro{font-size:21px;line-height:1.5}.hero-copy>p:not(.eyebrow):not(.handwritten){max-width:370px}.hero-copy>p{color:var(--muted)}.button{border:0;background:var(--ink);color:var(--paper);padding:15px 22px;display:inline-flex;align-items:center;justify-content:space-between;gap:40px;font-size:12px}.hero .button{margin-top:18px}.handwritten{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:22px;color:var(--olive);display:block}.hero .handwritten{margin:25px 0 0 35px;transform:rotate(-5deg)}.hero-photo{margin:0;position:relative;padding:14px 14px 0;background:#fffdfa;transform:rotate(3deg);box-shadow:0 8px 35px #31362815}.hero-photo img{aspect-ratio:4/4.8;object-position:50% 45%}.hero-photo figcaption{font-family:Georgia,serif;font-style:italic;font-size:13px;text-align:center;padding:15px 0}.photo-label{position:absolute;right:-20px;top:30px;background:#e0e4d1;font-size:9px;padding:7px 13px;transform:rotate(-7deg)}.vertical-note{position:absolute;right:21px;writing-mode:vertical-rl;font-size:8px;letter-spacing:3px}.ribbon{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:15px;text-align:center;letter-spacing:3px;font-size:10px;word-spacing:3px}.ribbon span{color:var(--olive);margin:0 45px;font-size:17px}.section{max-width:1440px;padding:85px 8%;margin:auto}h2{font-size:clamp(35px,4vw,55px);margin:0 0 24px}.world{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:start}.large{font-size:21px;line-height:1.6}.world-text>p:first-child{margin-top:0}.world-text>p:not(.large){color:var(--muted)}.text-link{background:none;border:0;border-bottom:1px solid var(--olive);padding:0 0 6px;display:inline-block;font-size:12px;margin-top:15px;text-align:left}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:35px;gap:30px}.section-heading>p{font-size:12px;color:var(--muted);max-width:270px}.stories{padding-top:20px}.story-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.card-image{display:block;position:relative;overflow:hidden;aspect-ratio:3/4}.card-image img{transition:transform .5s}.card-image:hover img{transform:scale(1.04)}.card-image span{position:absolute;bottom:0;left:0;background:#f6f3ebe8;padding:7px 10px;font-size:8px;letter-spacing:1px}h3{font-size:23px;letter-spacing:-.7px;margin:20px 0 12px}h3 a{display:flex;justify-content:space-between;gap:8px}h3 span{font-family:Arial;font-size:18px}.story-card p{font-size:12px;color:var(--muted);line-height:1.8}.inspiration{display:grid;grid-template-columns:1fr 1fr;background:#e9eadd}.inspiration-image img{min-height:620px;max-height:740px;object-position:center}.inspiration-copy{padding:70px 15% 50px 12%;align-self:center}.inspiration-copy>p:not(.large):not(.eyebrow){font-size:13px}.inspiration-copy .handwritten{margin-top:30px}.formats details{border-top:1px solid var(--line);scroll-margin-top:30px}.formats details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;display:flex;gap:32px;align-items:center;padding:25px 0;cursor:pointer;font-family:'Playfair Display',Georgia,serif;font-size:28px}summary::-webkit-details-marker{display:none}summary small{display:block;font-family:'DM Sans',sans-serif;font-size:11px;color:var(--muted);letter-spacing:0;margin-top:5px}.format-number{font:11px 'DM Sans',sans-serif;color:var(--olive)}.plus{margin-left:auto;font:25px 'DM Sans',sans-serif}details[open] .plus{transform:rotate(45deg)}.details-body{padding:0 60px 30px;max-width:760px;font-size:14px;color:var(--muted)}.archive{padding-top:10px}.gallery{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:26px}.gallery button{border:0;padding:10px 10px 0;background:#fffcf6;text-align:left;color:var(--ink);box-shadow:0 5px 18px #00000008}.gallery button:nth-child(2){transform:rotate(2deg)}.gallery button:nth-child(3){transform:rotate(-2deg)}.gallery img{height:270px}.gallery span{display:block;padding:13px 2px;font:italic 13px Georgia,serif}.booking{background:#e8e8dc;display:grid;grid-template-columns:1fr 1fr;gap:10%;max-width:none;padding-left:max(8%,calc((100vw - 1200px)/2));padding-right:max(8%,calc((100vw - 1200px)/2))}.booking-intro>p:not(.eyebrow){max-width:350px;font-size:14px}.booking-note{color:var(--muted);font-size:11px!important;border-top:1px solid #c7cbbb;padding-top:20px;margin-top:35px}form label{display:block;font-size:11px;margin-bottom:20px}label span{color:var(--muted)}input,select,textarea{display:block;width:100%;border:0;border-bottom:1px solid #afb5a0;border-radius:0;background:transparent;color:var(--ink);padding:12px 0;font-size:13px}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:25px}.form-note{font-size:10px;color:#575f50}#form-status{font-size:12px}footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;padding:45px 8%;font-size:11px}footer p{color:var(--muted)}footer small{width:100%;border-top:1px solid var(--line);padding-top:20px;font-size:9px;color:var(--muted)}dialog{border:0;padding:20px;background:var(--paper);max-width:90vw;max-height:94vh;box-shadow:0 20px 80px #0005}dialog::backdrop{background:#20261fe6}dialog img{max-height:75vh;width:auto;max-width:80vw;object-fit:contain}dialog p{font:italic 14px Georgia,serif}.close{position:absolute;right:20px;top:20px;border:0;background:var(--paper);font-size:30px;width:40px;height:40px}
@media(min-width:1500px){.inspiration{max-width:1440px;margin:auto}.booking{max-width:1440px;padding:85px 115px;margin:auto}}@media(max-width:900px){header{padding:24px 6%}nav{gap:18px}nav>a:not(.nav-book){display:none}.hero{padding:50px 7%;gap:6%}h1{font-size:65px}.story-grid{grid-template-columns:1fr 1fr;gap:30px}.inspiration-copy{padding:45px 10%}.inspiration-image img{min-height:650px}.world{gap:6%}.gallery{gap:15px}.gallery img{height:220px}.booking{gap:7%;padding:65px 7%}}@media(max-width:600px){header{padding:20px 6%}.brand{font-size:25px}.brand span{font-size:6px}.nav-book{font-size:10px;max-width:110px}.hero{grid-template-columns:1fr;padding:40px 7% 50px;gap:35px}.eyebrow{font-size:8px;letter-spacing:1.6px;margin-bottom:20px}h1{font-size:64px}.hero-copy>p:not(.eyebrow):not(.handwritten){max-width:100%}.hero-photo{width:88%;margin:0 auto}.hero-photo img{aspect-ratio:4/4.3}.vertical-note{display:none}.ribbon{font-size:7px;letter-spacing:1px}.ribbon span{margin:0 8px;font-size:12px}.section{padding:55px 7%}.world{grid-template-columns:1fr;gap:5px}h2{font-size:38px}.large{font-size:18px}.section-heading{display:block;margin-bottom:25px}.section-heading>p{max-width:none}.story-grid{gap:20px 15px}.story-card h3{font-size:20px;line-height:1.25}.story-card p{font-size:11px}.card-image span{font-size:6px;padding:6px}.inspiration{grid-template-columns:1fr}.inspiration-image img{min-height:0;max-height:none;aspect-ratio:1/1}.inspiration-copy{padding:40px 7%}.formats summary{font-size:23px;gap:15px}.details-body{padding:0 0 25px 30px}.gallery{grid-template-columns:1fr;gap:25px}.gallery img{height:320px}.gallery button{max-width:100%;transform:none!important}.booking{grid-template-columns:1fr;gap:30px}.booking-intro>p:not(.eyebrow){max-width:none}.form-row{gap:18px}footer{padding:35px 7%;align-items:start}footer p{width:100%;margin:0}dialog{padding:12px}dialog img{max-width:83vw}.close{right:12px;top:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.hero-collage{position:relative;min-width:0}.hero-collage .hero-photo{width:100%}.sketch-photo{position:absolute;right:-25px;top:-34px;width:36%;margin:0;padding:8px 8px 0;background:#fffdfa;transform:rotate(-8deg);box-shadow:0 7px 24px #20271f40;z-index:2}.sketch-photo img{aspect-ratio:3/4;object-fit:cover}.sketch-photo figcaption{font:italic 10px Georgia,serif;text-align:center;padding:9px 0;line-height:1.4}.hero-photo .photo-label{top:auto;bottom:86px;right:-17px}.hero-photo figcaption{line-height:1.5}@media(max-width:600px){.hero-collage{width:88%;margin:10px auto 0}.hero-collage .hero-photo{width:100%}.sketch-photo{width:37%;right:-18px;top:-25px;padding:6px 6px 0}.sketch-photo figcaption{font-size:8px;padding:7px 0}}

.red-cap-crop{position:relative;overflow:hidden;aspect-ratio:3/4}.red-cap-crop img{position:absolute;top:-25%;left:0;width:100%;height:163%;object-fit:fill}.logo-photo{position:absolute;width:44%;right:-35px;bottom:55px;margin:0;transform:rotate(-9deg);filter:drop-shadow(0 6px 6px #2223)}.logo-photo img{object-fit:contain;height:auto}.irish-illustration{padding:20px 7px 0}.irish-collage .hero-photo{padding:7px 7px 0;box-shadow:0 5px 16px #31362815}.irish-collage .hero-photo img{aspect-ratio:3/4}.irish-collage .hero-photo figcaption{font-size:9px;padding:10px 0}.irish-collage .sketch-photo{right:-8px;top:-20px;width:43%;padding:4px 4px 0}.irish-collage .sketch-photo figcaption{font-size:7px;padding:5px 0}.irish-collage .photo-label{font-size:6px;bottom:60px;padding:4px;right:-8px}@media(max-width:600px){.red-cap-collage .logo-photo{right:-22px;width:43%;bottom:48px}.irish-illustration .irish-collage{width:100%;margin:0}.irish-collage .hero-photo figcaption{font-size:8px}.irish-collage .sketch-photo figcaption{font-size:6px}}
