:root{--green:#314d36;--green-dark:#1f3626;--paper:#fbfaf5;--white:#fffef9;--ochre:#a96f22;--ink:#28342b;--rule:rgba(49,77,54,.3);--header-height:76px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Cormorant Garamond",Georgia,serif;font-size:18px;line-height:1.55}a{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--ochre);outline-offset:4px}.skip-link{background:var(--green-dark);color:white;left:1rem;padding:.7rem 1rem;position:fixed;top:-5rem;z-index:30}.skip-link:focus{top:1rem}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.site-header{align-items:center;backdrop-filter:blur(7px);background:rgba(255,254,249,.86);color:var(--green-dark);display:flex;height:var(--header-height);justify-content:space-between;left:0;padding:0 5vw;position:fixed;right:0;top:0;transition:transform .22s ease,background-color .22s ease,box-shadow .22s ease;z-index:20}.site-header.scrolled{background:rgba(255,254,249,.97);box-shadow:0 1px 0 rgba(31,54,38,.14)}.site-header.header-hidden{transform:translateY(-105%)}.monogram{font-family:Italianno,"Brush Script MT",cursive;font-size:2.2rem;line-height:1;text-decoration:none}.monogram span,.footer-names span,.hero h1 span{color:var(--ochre)}.site-nav{align-items:center;display:flex;gap:2rem}.site-nav a{font-size:.78rem;font-weight:600;letter-spacing:.14em;min-height:44px;padding:13px 0 10px;position:relative;text-decoration:none;text-transform:uppercase}.site-nav a::after{background:var(--green);bottom:7px;content:"";height:1px;left:0;position:absolute;transform:scaleX(0);transition:transform .18s;width:100%}.site-nav a:hover::after,.site-nav a:focus-visible::after,.site-nav a[aria-current]::after{transform:scaleX(1)}.menu-button,.mobile-menu{display:none}.hero{align-items:center;background-image:url("assets/corte-watercolour.png");background-position:center;background-size:cover;display:flex;justify-content:center;min-height:92vh;padding:calc(var(--header-height) + 2rem) 1.5rem 5rem;position:relative}.hero-content{color:var(--green-dark);inset:0;pointer-events:none;position:absolute;text-align:center;text-shadow:0 1px 12px rgba(255,254,249,.92)}.hero h1{font-family:Italianno,"Brush Script MT",cursive;font-size:clamp(4.5rem,9vw,7rem);font-weight:400;left:50%;line-height:.92;margin:0;position:absolute;top:31%;transform:translate(-50%,-50%);width:calc(100% - 3rem)}.hero-date{bottom:8%;left:50%;position:absolute;transform:translateX(-50%);width:calc(100% - 3rem)}.date-rule{background:var(--green);height:1px;margin:0 auto 1.2rem;width:72px}.wedding-date{font-size:1.65rem;font-weight:600;letter-spacing:.17em;line-height:1.2;margin:0;text-transform:uppercase}.wedding-date span{display:block;font-size:.78rem;margin-bottom:.35rem}.scroll-cue{align-items:center;bottom:.4rem;display:flex;flex-direction:column;font-size:.72rem;gap:.45rem;letter-spacing:.18em;min-height:44px;padding:.4rem;text-decoration:none;text-transform:uppercase}.chevron{border-bottom:1px solid;border-right:1px solid;height:9px;transform:rotate(45deg);width:9px}.day-section{background:var(--white);padding:7rem 6vw 8rem}.section-heading{margin:0 auto 5rem;max-width:680px;text-align:center}.eyebrow{font-size:.78rem;font-weight:600;letter-spacing:.23em;margin:0 0 1rem;text-transform:uppercase}.section-heading h2,.venue-copy h2,.page-hero h1{color:var(--green);font-family:Italianno,"Brush Script MT",cursive;font-size:4.6rem;font-weight:400;line-height:1;margin:0 0 1.2rem}.section-heading>p:last-of-type,.venue-copy>p{font-size:1.2rem;font-style:italic}.button-link{border:1px solid var(--green);display:inline-flex;font-size:.8rem;font-weight:600;justify-content:center;letter-spacing:.12em;margin-top:1.5rem;min-height:44px;padding:.65rem 1.1rem;text-decoration:none;text-transform:uppercase}.button-link:hover{background:var(--green);color:var(--white)}.timeline{list-style:none;margin:0 auto;max-width:920px;padding:0}.timeline-event{display:grid;grid-template-columns:110px 40px minmax(0,1fr);min-width:0;padding-bottom:3.2rem;position:relative}.event-time{font-size:.9rem;font-weight:600;letter-spacing:.12em;padding-top:.2rem;text-align:right}.timeline-event::before{background:var(--rule);bottom:0;content:"";left:129px;position:absolute;top:.8rem;width:1px}.timeline-event:last-child::before{display:none}.timeline-marker{background:var(--ochre);border:5px solid var(--white);border-radius:50%;box-shadow:0 0 0 1px var(--ochre);grid-column:2;height:13px;justify-self:center;margin-top:.35rem;position:relative;width:13px;z-index:1}.timeline-event--featured .timeline-marker{background:var(--green);box-shadow:0 0 0 1px var(--green);height:19px;width:19px}.event-disclosure,.event-copy{grid-column:3;min-width:0;padding-left:1.5rem}.event-disclosure>summary{cursor:pointer;list-style:none;min-height:44px;padding:0 2.2rem .4rem 0;position:relative}.event-disclosure>summary::-webkit-details-marker,.reception-subevent summary::-webkit-details-marker{display:none}.event-disclosure>summary::after,.reception-subevent summary::after{border-bottom:1px solid var(--green);border-right:1px solid var(--green);content:"";height:8px;position:absolute;right:.3rem;top:.75rem;transform:rotate(45deg);transition:transform .18s;width:8px}.event-disclosure[open]>summary::after,.reception-subevent details[open]>summary::after{transform:rotate(225deg)}.event-title{color:var(--green);display:block;font-family:Italianno,"Brush Script MT",cursive;font-size:3rem;font-weight:400;line-height:1;margin:0}.timeline-event--featured .event-title{font-size:4rem}.event-summary{display:block;font-size:1rem;margin-top:.55rem;max-width:650px}.event-details{max-width:720px;padding-top:.75rem}.event-details>p{margin:.45rem 0}.event-preview{display:block;margin:.7rem 0}.event-preview span{display:block}.event-preview-venue{font-size:.92rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase}.event-preview-address{font-size:.95rem;font-style:italic}.text-link{display:inline-block;font-weight:600;margin-top:.35rem;text-decoration-thickness:1px;text-underline-offset:4px}.external-link::after{content:" ↗"}.coming-soon{color:#725019;font-style:italic;font-weight:600}.transport-groups{display:grid;gap:2rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:2rem}.transport-group{border-top:1px solid var(--rule);padding-top:1rem}.transport-group h3{font-size:1rem;letter-spacing:.12em;margin:0;text-transform:uppercase}.transport-group p{font-size:.92rem;margin:.25rem 0 .7rem}.transport-group ul{list-style:none;margin:0;padding:0}.transport-group li{border-bottom:1px solid rgba(49,77,54,.12);padding:.3rem 0}.reception-timeline{list-style:none;margin:1.8rem 0 0;padding:0}.reception-subevent{display:grid;grid-template-columns:58px 24px minmax(0,1fr);padding-bottom:1.8rem;position:relative}.reception-subevent::before{background:var(--rule);bottom:0;content:"";left:69px;position:absolute;top:.6rem;width:1px}.reception-subevent:last-child::before{display:none}.reception-subevent>time{font-size:.78rem;font-weight:600;text-align:right}.subevent-marker{background:var(--ochre);border:4px solid var(--white);border-radius:50%;box-shadow:0 0 0 1px var(--ochre);grid-column:2;height:11px;justify-self:center;margin-top:.2rem;position:relative;width:11px;z-index:1}.reception-subevent details{grid-column:3;padding-left:.8rem}.reception-subevent summary{cursor:pointer;font-size:.92rem;font-weight:600;letter-spacing:.06em;list-style:none;min-height:44px;padding:0 2rem .4rem 0;position:relative;text-transform:uppercase}.reception-subevent p{margin:.2rem 0}.date-divider{color:var(--green-dark);font-size:.78rem;font-weight:600;letter-spacing:.16em;margin:-.4rem 0 2.5rem 150px;text-transform:uppercase}.venue-section{align-items:stretch;background:#eceddf;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.8fr);min-height:610px}.venue-image{background-image:url("assets/corte-watercolour.png");background-position:center;background-size:cover;min-height:520px}.venue-copy{align-self:center;max-width:520px;padding:5rem 6vw}.venue-copy h2{font-size:4rem}footer{background:var(--green-dark);color:var(--paper);padding:3rem 1.5rem;text-align:center}footer p{font-size:.75rem;letter-spacing:.18em;margin:0;text-transform:uppercase}.footer-names{font-family:Italianno,"Brush Script MT",cursive;font-size:2.7rem;letter-spacing:0;margin-bottom:.8rem;text-transform:none}.page-main{min-height:75vh;padding-top:var(--header-height)}.page-hero{background:#eceddf;padding:6rem 6vw 5rem;text-align:center}.page-hero p{font-size:1.2rem;font-style:italic;margin:0 auto;max-width:620px}.content-sections{margin:0 auto;max-width:980px;padding:5rem 6vw 7rem}.info-section{border-top:1px solid var(--rule);padding:3rem 0}.info-section:first-child{border-top:0;padding-top:0}.info-section h2,.faq-list h2{color:var(--green);font-family:Italianno,"Brush Script MT",cursive;font-size:3.2rem;font-weight:400;line-height:1;margin:0 0 1.2rem}.location-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(2,minmax(0,1fr));margin:1.7rem 0 2.5rem}.location-card{background:var(--white);border:1px solid var(--rule);padding:1.5rem}.location-card h3{color:var(--green);font-size:1.05rem;letter-spacing:.08em;margin:0 0 .6rem;text-transform:uppercase}.location-card address{font-style:normal}.travel-groups{display:grid;gap:1.5rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:2rem}.travel-group{background:rgba(255,255,255,.6);padding:1.4rem}.travel-group h3{margin-top:0}.faq-list{margin:0 auto;max-width:820px;padding:5rem 6vw 7rem}.faq-list details{border-top:1px solid var(--rule);padding:0}.faq-list details:last-child{border-bottom:1px solid var(--rule)}.faq-list summary{color:var(--green-dark);cursor:pointer;font-size:1.3rem;font-weight:600;list-style:none;min-height:58px;padding:1.1rem 2.5rem 1.1rem 0;position:relative}.faq-list summary::after{content:"+";font-size:1.6rem;font-weight:400;position:absolute;right:.4rem;top:.8rem}.faq-list details[open] summary::after{content:"−"}.faq-answer{padding:0 2.5rem 1.4rem 0}.faq-answer p{margin:0}
@media(max-width:760px){:root{--header-height:66px}.site-header{padding:0 1rem}.desktop-nav{display:none}.menu-button{align-items:center;background:transparent;border:0;color:var(--green-dark);display:flex;font:600 .75rem "Cormorant Garamond",serif;gap:.65rem;letter-spacing:.12em;min-height:44px;padding:.5rem;text-transform:uppercase}.menu-icon,.menu-icon::before,.menu-icon::after{background:currentColor;content:"";display:block;height:1px;width:22px}.menu-icon{position:relative}.menu-icon::before{position:absolute;top:-7px}.menu-icon::after{position:absolute;top:7px}.mobile-menu{background:var(--white);box-shadow:0 10px 24px rgba(31,54,38,.15);display:block;left:0;padding:1rem 1.2rem 1.5rem;position:absolute;right:0;top:100%}.mobile-menu[hidden]{display:none}.mobile-nav{display:grid}.mobile-nav a{border-bottom:1px solid var(--rule);font-size:1rem;font-weight:600;letter-spacing:.1em;min-height:48px;padding:.7rem .2rem;text-decoration:none;text-transform:uppercase}.language-choices{border:0;margin:1.2rem 0 0;padding:0}.language-choices legend{font-size:.75rem;font-weight:600;letter-spacing:.12em;margin-bottom:.5rem;text-transform:uppercase}.language-choices label{display:flex;gap:.45rem;min-height:44px;padding:.5rem .2rem}.language-unavailable{opacity:.65}.language-unavailable span{font-size:.85rem;font-style:italic;margin-left:auto}.hero{background-position:48% center;min-height:88vh}.hero h1{font-size:4.5rem;top:34%}.wedding-date{font-size:1.2rem;letter-spacing:.1em}.day-section{padding:5.5rem 1rem 6rem}.section-heading{margin-bottom:3.5rem}.section-heading h2,.page-hero h1{font-size:3.8rem}.timeline-event{grid-template-columns:56px 20px minmax(0,1fr);padding-bottom:2.8rem}.event-time{font-size:.8rem;letter-spacing:.05em}.timeline-event::before{left:65.5px}.event-disclosure,.event-copy{padding-left:.8rem}.event-title{font-size:2.25rem}.timeline-event--featured .event-title{font-size:3rem}.event-summary{font-size:1rem}.transport-groups,.location-grid,.travel-groups{grid-template-columns:1fr}.reception-subevent{grid-template-columns:46px 18px minmax(0,1fr)}.reception-subevent::before{left:54.5px}.reception-subevent>time{font-size:.75rem}.reception-subevent details{padding-left:.55rem}.reception-subevent summary{font-size:.86rem;letter-spacing:.03em}.date-divider{margin-left:76px}.venue-section{grid-template-columns:1fr}.venue-image{min-height:360px}.venue-copy{padding:4.5rem 1.5rem}.page-hero{padding:4.5rem 1.2rem 3.5rem}.content-sections,.faq-list{padding:3.5rem 1.2rem 5rem}.info-section h2,.faq-list h2{font-size:2.8rem}}
.desktop-language{align-items:center;display:flex;margin-left:1.25rem}.desktop-language select{appearance:none;background:transparent;border:1px solid var(--rule);border-radius:0;color:var(--green-dark);cursor:pointer;font:600 .76rem "Cormorant Garamond",serif;letter-spacing:.1em;min-height:36px;padding:.35rem 1.55rem .35rem .55rem;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 10px) 15px,calc(100% - 6px) 15px;background-repeat:no-repeat;background-size:4px 4px}.desktop-language select:focus-visible{outline:3px solid var(--ochre);outline-offset:3px}@media(max-width:1100px) and (min-width:761px){.site-header{padding-left:2vw;padding-right:2vw}.site-nav{gap:1rem}.site-nav a{font-size:.7rem;letter-spacing:.1em}.desktop-language{margin-left:.75rem}}@media(max-width:760px){.desktop-language{display:none}}
@media(max-width:360px){.day-section{padding-left:.75rem;padding-right:.75rem}.timeline-event{grid-template-columns:48px 18px minmax(0,1fr)}.timeline-event::before{left:56.5px}.event-disclosure,.event-copy{padding-left:.55rem}.event-title{font-size:2.05rem}.timeline-event--featured .event-title{font-size:2.65rem}.reception-subevent{grid-template-columns:40px 16px minmax(0,1fr)}.reception-subevent::before{left:47.5px}.date-divider{margin-left:66px}.hero h1{font-size:4rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
.guide-nav{background:var(--green-dark);color:var(--paper);display:flex;gap:2rem;justify-content:center;overflow-x:auto;padding:.9rem 6vw}.guide-nav a{font-size:.75rem;font-weight:600;letter-spacing:.1em;min-width:max-content;padding:.45rem 0;text-decoration:none;text-transform:uppercase}.guide-nav a:hover{text-decoration:underline;text-underline-offset:5px}.visiting-guide{max-width:1040px}.guide-list{display:grid;gap:.8rem;margin-top:2rem}.guide-card{background:var(--white);border:1px solid var(--rule)}.guide-card summary{cursor:pointer;list-style:none;min-height:76px;padding:1rem 4rem 1rem 1.4rem;position:relative}.guide-card summary::-webkit-details-marker{display:none}.guide-card summary::after{content:"+";font-size:1.6rem;position:absolute;right:1.4rem;top:1.05rem}.guide-card[open] summary::after{content:"−"}.guide-card summary b{color:var(--green);display:block;font-size:1.35rem}.guide-card summary small{display:block;font-size:.78rem;font-weight:600;letter-spacing:.09em;margin-top:.2rem;text-transform:uppercase}.guide-card-body{border-top:1px solid rgba(49,77,54,.14);padding:1.2rem 1.4rem 1.6rem}.guide-card-body>*:first-child{margin-top:0}.guide-card-body ul{padding-left:1.2rem}.quick-picks{background:var(--rule);display:grid;gap:1px;grid-template-columns:repeat(2,minmax(0,1fr));margin:2rem 0}.quick-picks div{background:#eceddf;padding:1rem 1.2rem}.quick-picks span,.quick-picks b{display:block}.quick-picks span{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}.quick-picks b{color:var(--green);font-size:1.15rem;margin-top:.15rem}.day-ideas{display:grid;gap:1rem;grid-template-columns:repeat(3,minmax(0,1fr));margin:2rem 0}.day-ideas article{background:#eceddf;padding:1.2rem}.day-ideas h3{font-size:.78rem;letter-spacing:.1em;margin:0 0 .35rem;text-transform:uppercase}.day-ideas p{margin:0}.driving-note{border-left:3px solid var(--ochre);margin:2rem 0;padding:.2rem 0 .2rem 1.2rem}.driving-note p{margin:.25rem 0 0}@media(max-width:760px){.guide-nav{justify-content:flex-start}.quick-picks,.day-ideas{grid-template-columns:1fr}.guide-card summary{padding-left:1rem}.guide-card-body{padding-left:1rem;padding-right:1rem}}
.guide-card-body h3{font-size:.8rem;letter-spacing:.12em;margin:1.5rem 0 .45rem;text-transform:uppercase}.guide-sources{display:flex;flex-wrap:wrap;gap:.25rem 1.5rem;margin-top:1rem}
.recommendation-note{background:#eceddf;border-left:3px solid var(--ochre);margin-top:2rem;padding:1.5rem}.recommendation-note h3{color:var(--green-dark);font-size:.8rem;letter-spacing:.12em;margin:0 0 .6rem;text-transform:uppercase}.recommendation-note h3:not(:first-child){margin-top:1.5rem}.recommendation-note .water-warning{align-items:center;background:#fff1d6;border:2px solid var(--ochre);color:#6f3519;display:flex;font-size:1rem;font-weight:800;gap:.35rem;letter-spacing:.08em;margin:-.5rem -.5rem .9rem;padding:.75rem .85rem}.recommendation-note p{margin:.6rem 0}.visiting-update{background:#eceddf;border:1px solid var(--ochre);margin:1.5rem auto 0;max-width:760px;padding:1rem 1.2rem}.rental-list{display:grid;gap:.25rem 2rem;grid-template-columns:repeat(2,minmax(0,1fr));margin:.5rem 0 0;padding-left:1.2rem}.site-nav{gap:1.35rem}.site-nav .nav-action{background:var(--green);border:1px solid var(--green);color:var(--white);padding:12px 14px 10px}.site-nav .nav-action::after{display:none}.rsvp-callout{margin-top:1.5rem}.rsvp-callout .button-link{background:var(--green);color:var(--white);margin-top:0}.rsvp-callout .button-link:hover{background:var(--green-dark)}.rsvp-callout p{font-size:.95rem;font-style:normal;margin:.55rem 0 0}@media(max-width:760px){.mobile-nav .nav-action{background:var(--green);color:var(--white);margin-top:.8rem;padding-left:.8rem}.mobile-nav .nav-action::after{content:" ↗"}}@media(max-width:520px){.rental-list{grid-template-columns:1fr}}

/* Giuliana’s full itinerary, using the visiting guide’s existing disclosure cards. */
.favourites-guide [hidden]{display:none!important}
.favourites-guide .guide-card summary h3{color:var(--green);font-size:1.35rem;font-weight:700;letter-spacing:normal;line-height:1.4;margin:0;text-transform:none}
.favourites-guide .guide-card-body h4{color:var(--green-dark);font-size:1.25rem;line-height:1.35;margin:1.8rem 0 .6rem}
.favourites-guide .guide-card-body h5{color:var(--green-dark);font-size:1.05rem;margin:1.2rem 0 .5rem}
.favourites-guide .guide-card-body li{margin:.5rem 0}
.favourites-guide .guide-card-body a{text-decoration-thickness:1px;text-underline-offset:3px;overflow-wrap:anywhere}
.favourites-guide .guide-card-body ol{padding-left:1.5rem}
.favourites-guide .favourites-extra{color:var(--green);font-size:1.6rem;letter-spacing:normal;margin:2.5rem 0 .6rem;text-transform:none}

.time-change-notice{background:#fff1d6;border-left:4px solid var(--ochre);color:#6f3519;margin:1rem 0;padding:.85rem 1rem}.time-change-notice strong{font-weight:700}

.bus-update{margin:0 auto 2.5rem;max-width:920px}.bus-update p{margin:.6rem 0}.bus-update p:first-child{margin-top:0}.bus-update p:last-child{margin-bottom:0}
