.of-page{--of-radius:16px;--of-button-radius:8px;--of-fast:180ms;--of-gold:#b39767;--of-h1:clamp(48px,5vw,76px);--of-h2:clamp(32px,3.2vw,48px);--of-h3:30px;--of-gutter:40px;max-width:1280px;margin:auto;padding:var(--s12) var(--of-gutter) var(--s24);color:var(--ink)}
.of-page .of-eyebrow{font:12px/1.5 var(--sans);letter-spacing:.14em;margin:0 0 var(--s4);color:var(--muted)}
.of-page h1{font:400 var(--of-h1)/1.04 var(--display);letter-spacing:-.045em;margin:0 0 var(--s6)}
.of-page h2{font:400 var(--of-h2)/1.12 var(--display);letter-spacing:-.03em}
.of-page h3{font:400 var(--of-h3)/1.18 var(--display);letter-spacing:-.02em}
.of-page p{line-height:1.65}
.of-page .of-hero{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:var(--s12);align-items:center;padding-bottom:var(--s16)}
.of-hero-copy>p:not(.of-eyebrow){color:var(--muted);max-width:36ch}
.of-hero-photos{display:grid;grid-template-columns:1fr 1fr;gap:var(--s4);align-items:start}
.of-hero-photos img{width:100%;height:auto;aspect-ratio:2/3;object-fit:cover}
.of-hero-photos img+img{margin-top:var(--s12)}
.of-page .of-button{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--s4);min-height:52px;padding:var(--s3) var(--s6);border:1px solid var(--accent);border-radius:var(--of-button-radius);color:var(--accent);background:transparent;text-decoration:none;font:16px/1.5 var(--sans);transition:background var(--of-fast),color var(--of-fast)}
.of-page .of-button-solid{background:var(--accent);color:var(--bg)}
.of-page .of-button:hover{background:var(--ink);border-color:var(--ink);color:var(--bg)}
.of-page .of-button:active{transform:translateY(1px)}
.of-page .of-link{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);width:fit-content;min-height:44px;font-size:16px;line-height:1.5;text-underline-offset:6px}
.of-page :is(.of-hero-copy,.of-closing) .of-button{margin-top:var(--s8)}
.of-page :is(.of-hero-copy,.of-closing) .of-link{margin-top:var(--s3)}
.of-page a:focus-visible{outline:3px solid var(--accent);outline-offset:5px}
.of-page .of-wedding,.of-page .of-sessions{padding-top:var(--s16);border-top:var(--border);margin-bottom:var(--s16)}
.of-section-heading{display:grid;grid-template-columns:1fr 1fr;gap:var(--s12);align-items:end;margin-bottom:var(--s8)}
.of-section-heading>p{max-width:42ch;color:var(--muted);justify-self:end}
.of-packages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s6)}
.of-package{display:flex;flex-direction:column;border:var(--border);border-radius:var(--of-radius);overflow:hidden;background:var(--surface);min-width:0}
.of-package-photo img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.of-package-body{display:flex;flex-direction:column;flex:1;padding:var(--s8) var(--s6)}
.of-page .of-price{font:400 30px/1.2 var(--display);color:var(--accent);margin:var(--s4) 0 var(--s6)}
.of-package ul{padding-left:var(--s4);margin:0 0 var(--s6);font-size:16px;line-height:1.6}
.of-package li{padding-left:var(--s1);margin-bottom:var(--s3)}
.of-page .of-gift{margin:auto 0 var(--s6);padding:var(--s4) 0;border-top:1px solid var(--of-gold);border-bottom:1px solid var(--of-gold);font-size:16px;color:var(--accent)}
.of-gift strong{font-weight:700}
.of-package .of-button{width:100%;padding-inline:var(--s4)}
.of-extras{display:grid;grid-template-columns:1fr 2fr;gap:var(--s12);padding:var(--s8) 0;margin-top:var(--s8)}
.of-extras h3{font-size:26px}
.of-extras ul{margin:0;padding-left:var(--s4);font-size:16px;color:var(--muted)}
.of-extras li+li{margin-top:var(--s3)}
.of-services{display:grid;gap:var(--s6)}
.of-service{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);border:var(--border);border-radius:var(--of-radius);overflow:hidden;background:var(--surface);min-width:0}
.of-service-photo{min-height:320px;background:var(--surface)}
.of-service-photo img{height:100%;width:100%;object-fit:cover;max-height:420px;object-position:center 35%}
.of-service-body{padding:var(--s8) var(--s12);align-self:center}
.of-service .of-price{font-size:26px;margin:var(--s3) 0 var(--s4)}
.of-service-list{color:var(--muted);font-size:16px}
.of-service .of-link{margin-top:var(--s6)}
.of-service:nth-child(2){grid-template-columns:minmax(0,1.28fr) minmax(0,.72fr)}
.of-service:nth-child(2) .of-service-photo{order:2}
.of-service:nth-child(2) .of-service-photo img{object-fit:contain}
.of-page .of-closing{display:grid;grid-template-columns:1fr 1fr;gap:var(--s12);align-items:start;padding:var(--s12) 0 0;border-top:var(--border)}
.of-closing>div>p:not(.of-eyebrow){color:var(--muted)}
@media(max-width:1000px){.of-page{--of-gutter:32px}.of-page .of-hero{grid-template-columns:1fr 1.1fr;gap:var(--s6)}.of-page .of-hero h1{font-size:52px}.of-hero-photos{gap:var(--s2)}.of-hero-photos img+img{margin-top:var(--s8)}.of-packages{grid-template-columns:1fr}.of-package{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.of-package-photo{background:var(--bg)}.of-package-photo img{height:auto;aspect-ratio:3/2;position:sticky;top:var(--s6)}.of-package-body{padding:var(--s8)}.of-service-body{padding:var(--s8)}.of-section-heading{gap:var(--s8)}.of-extras{grid-template-columns:1fr 1.5fr;gap:var(--s8)}}
@media(max-width:650px){.of-page{--of-gutter:24px;--of-h1:52px;--of-h2:36px;--of-h3:28px;padding-top:var(--s8);padding-bottom:var(--s12)}.of-page .of-hero{grid-template-columns:1fr;gap:var(--s8);padding-bottom:var(--s12)}.of-hero-copy>p:not(.of-eyebrow){font-size:16px}.of-hero-photos img+img{margin-top:var(--s6)}.of-hero-photos img{aspect-ratio:2/3}.of-page .of-wedding,.of-page .of-sessions{padding-top:var(--s12);margin-bottom:var(--s12)}.of-section-heading{grid-template-columns:1fr;gap:var(--s6)}.of-section-heading>p{justify-self:start;font-size:16px}.of-packages{gap:var(--s6)}.of-package{display:flex}.of-package-photo img{position:static;aspect-ratio:3/2}.of-package-body{padding:var(--s6)}.of-extras{grid-template-columns:1fr;gap:var(--s6);padding-block:var(--s6)}.of-service,.of-service:nth-child(2){grid-template-columns:1fr}.of-service:nth-child(2) .of-service-photo{order:0}.of-service-photo{min-height:0;height:260px}.of-service-photo img{max-height:none}.of-service-body{padding:var(--s6)}.of-page .of-closing{grid-template-columns:1fr;gap:var(--s6);padding-top:var(--s8)}.of-page .of-button{white-space:normal}.of-page .of-closing .of-button{width:100%}}
@media(prefers-reduced-motion:reduce){.of-page .of-button{transition:none;transform:none}}

.of-service-actions{display:flex;flex-wrap:wrap;gap:var(--s3);margin-top:var(--s6)}
.of-page .of-service-actions .of-button{justify-content:center;text-align:center;padding-inline:var(--s4)}
@media(max-width:650px){.of-service-actions{flex-direction:column}.of-service-actions .of-button{width:100%}}

.of-hero-actions{display:flex;gap:var(--s3);margin-top:var(--s8);align-items:stretch}.of-page .of-hero-actions .of-button{margin-top:0;padding-inline:var(--s4);text-align:center;justify-content:center;flex:1;font-size:15px}
