:root{--ivory:#fbf9f4;--green:#203c32;--ink:#243a30;--gold:#ae8950;--line:#e5e0d5;--body:#50594f}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--ivory);color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.75}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;line-height:1.05}h2{font-size:clamp(38px,4.1vw,59px);letter-spacing:-1.3px}h3{font-size:29px}h1{font-size:clamp(58px,6.6vw,96px);letter-spacing:-2px;line-height:.98}h1 em,h2 em{font-weight:400}p{color:var(--body)}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}img{max-width:100%;display:block;object-fit:cover}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.wrap{width:min(1200px,calc(100% - 100px));margin:auto}.section{padding-top:85px;padding-bottom:85px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:2.3px;color:var(--gold);margin-bottom:16px}.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;border-radius:40px;padding:12px 27px;line-height:1.4;font-size:14px;font-weight:700;transition:background .2s,transform .2s;border:1px solid transparent}.button:hover{transform:translateY(-2px)}.gold{background:var(--gold);color:white}.gold:hover{background:#92703f}.green{background:var(--green);color:white}.outline{border-color:var(--gold)}.outline-light{border-color:#fff;color:white}.small{min-height:42px;padding:10px 23px}.actions{display:flex;gap:12px;flex-wrap:wrap}header{background:var(--ivory);position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line)}.nav{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:10px;white-space:nowrap;font-family:'Cormorant Garamond',Georgia,serif;font-size:29px;line-height:1}.brand small{display:block;text-align:center;font:9px Manrope,sans-serif;letter-spacing:3px;margin-top:8px;color:var(--gold)}.brand-mark{color:var(--gold);font-size:52px;line-height:1}.nav nav{display:flex;gap:26px;font-size:13px;font-weight:600}.nav nav a:hover{color:var(--gold)}.menu{display:none}.hero{position:relative;min-height:640px;background:var(--green) url('assets/hero.webp') center/cover;display:flex;align-items:center;color:white}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,35,30,.69),rgba(11,35,30,.18) 52%,transparent 75%)}.hero-content{position:relative;padding-top:65px;padding-bottom:65px}.hero .eyebrow{color:#e2c18a;margin-bottom:24px}.hero-description{color:#f8f5ef;line-height:1.6;max-width:510px;margin:25px 0;font-size:17px}.hero-note{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-size:20px;display:block;margin-top:26px;color:#e7e8dc}.promise{display:flex;justify-content:center;align-items:center;gap:50px;border-bottom:1px solid var(--line);padding:20px;font-size:11px;font-weight:600;letter-spacing:2px}.promise i{color:var(--gold)}.about{display:grid;grid-template-columns:1.15fr 1fr;gap:100px;align-items:center}.about p:not(.eyebrow){margin-top:20px}.about .lead{font-size:20px;color:var(--green)}.about-picture{position:relative;padding:0 25px 20px 0}.about-picture>img{width:100%;height:450px;border-radius:100px 10px 10px 10px}.picture-note{position:absolute;right:0;bottom:0;background:#efe8da;padding:20px 28px;font-family:'Cormorant Garamond',Georgia,serif;font-size:24px;font-style:italic}.values{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);margin-top:32px;padding-top:20px}.values span{display:flex;flex-direction:column;align-items:center;color:var(--gold);font-size:30px;line-height:1.4}.values b{font-size:11px;font-weight:500;color:var(--green);margin-top:8px}.services{background:#f3f0e9}.section-heading{text-align:center;margin-bottom:40px}.section-heading>p:last-child{margin-top:18px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.service-grid img{width:100%;height:190px;border-radius:10px;margin-bottom:22px}.number{font-size:10px;letter-spacing:1.8px;color:var(--gold);font-weight:700}.service-grid h3{font-size:27px;margin:12px 0}.service-grid p{font-size:14px;line-height:1.8}.text-link{display:inline-block;font-size:13px;font-weight:700;border-bottom:1px solid var(--gold);padding-bottom:4px;margin-top:18px}.wedding{display:grid;grid-template-columns:1fr 1fr;background:var(--green);color:#fbf9f4}.wedding-image img{width:100%;height:100%;min-height:750px}.wedding-content{padding:65px min(6vw,90px)}.wedding-content p:not(.eyebrow){color:#d9e0d8;font-size:15px;margin:23px 0}.wedding h2{font-size:clamp(35px,3.9vw,56px)}.wedding .eyebrow{color:#d8b77b}.wedding-details{display:flex;flex-wrap:wrap;gap:7px 16px;font-size:11px;color:#ddd7c4;margin:22px 0}.mini-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.mini-gallery img{width:100%;height:105px;border-radius:6px}.heading-row{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:35px}.gallery-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:15px}.gallery-grid img{width:100%;height:210px;border-radius:9px;transition:filter .2s}.gallery-grid a:hover img{filter:brightness(.9)}.reviews{background:#f0eee6}.review-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:100px;align-items:center}.review-layout h2{font-size:45px}.review-layout p{margin-top:23px;max-width:590px}.review-card{background:var(--ivory);padding:35px;text-align:center;border:1px solid #e5dfd1;border-radius:12px}.google-word{font-size:14px}.google-word b{font-family:Arial,sans-serif;color:#4285f4;font-size:23px;margin-right:7px}.review-card h3{font-size:33px;margin-top:20px}.review-card p{margin:15px 0 23px}.contact{display:grid;grid-template-columns:1fr 1.2fr;gap:70px}.contact .eyebrow{font-size:10px;letter-spacing:1.5px}.contact h2{margin-bottom:28px}address{font-style:normal}address p{margin-bottom:18px;font-size:15px}address span{display:block;font-size:10px;letter-spacing:1.6px;color:var(--gold);font-weight:700;margin-bottom:5px}.phone{font-size:24px;color:var(--green)}.muted{font-size:12px;margin-bottom:22px}.map-panel{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#e8e7dc;display:flex;flex-direction:column}.map-panel iframe{border:0;width:100%;flex:1;min-height:390px}.map-panel>a{padding:14px;background:#f0e9db;text-align:center;font-size:12px;font-weight:600}.english{border-top:1px solid var(--line);padding-top:28px;padding-bottom:35px;display:flex;align-items:center;gap:50px}.english h3{font-size:27px;min-width:220px}.english p{font-size:12px;line-height:1.9}footer{background:#172c24;color:#f5f2ea;padding:45px 0 20px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:35px}.footer-top p,.footer-top>a:last-child{font-size:12px;color:#d4dacf}.footer-top b{font-weight:500}.footer-bottom{border-top:1px solid #3b4a40;margin-top:30px;padding-top:20px;display:flex;justify-content:space-between;font-size:10px;color:#b0baad}.mobile-actions{display:none}.skip{position:fixed;left:15px;top:-100px;background:white;padding:10px;z-index:100}.skip:focus{top:10px}@media(min-width:1450px){.hero{min-height:730px}}@media(max-width:1050px){.wrap{width:calc(100% - 60px)}.nav{gap:15px}.nav nav{gap:16px}.nav-order{display:none}.about{gap:45px}.service-grid{gap:18px}.service-grid img{height:155px}.service-grid h3{font-size:24px}.review-layout{gap:40px}.gallery-grid img{height:165px}.wedding-content{padding:45px 35px}.wedding-image img{min-height:730px}.contact{gap:35px}}@media(max-width:700px){html{scroll-padding-top:75px}.wrap{width:calc(100% - 40px)}.section{padding-top:55px;padding-bottom:55px}.nav{min-height:72px}.brand{font-size:25px}.brand-mark{font-size:43px}.brand small{font-size:8px}.menu{display:block;border:1px solid var(--line);background:none;color:var(--green);height:44px;width:44px;border-radius:50%;font-size:21px;cursor:pointer}.nav nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--ivory);padding:16px 25px 25px;border-bottom:1px solid var(--line)}.nav nav.open{display:flex;flex-direction:column;gap:0}.nav nav a{padding:10px 0;font-size:16px}.hero{min-height:660px;background-position:62% center;align-items:flex-end}.hero-shade{background:linear-gradient(0deg,rgba(9,31,24,.9),rgba(9,31,24,.35) 65%,rgba(9,31,24,.05))}.hero-content{padding-top:110px;padding-bottom:42px}.hero h1{font-size:65px;line-height:1}.hero .eyebrow{font-size:10px;margin-bottom:20px}.hero-description{font-size:15px;max-width:340px;margin:23px 0}.hero-note{margin-top:20px;font-size:19px}.promise{gap:11px;padding:16px 8px;font-size:8px;letter-spacing:.9px}.promise i{font-size:12px}.about{grid-template-columns:1fr;gap:35px}.about-picture>img{height:340px;border-radius:75px 10px 10px 10px}.about-picture{padding-right:15px}.about p:not(.eyebrow){font-size:15px}.about .lead{font-size:19px!important}.values b{font-size:10px}.values{justify-content:space-around}.eyebrow{font-size:10px;letter-spacing:1.8px}h2{font-size:42px}.service-grid{grid-template-columns:1fr 1fr;gap:35px 16px}.service-grid img{height:145px;margin-bottom:14px}.service-grid h3{font-size:25px;line-height:1.1}.service-grid p{font-size:13px}.number{font-size:9px;letter-spacing:1px}.service-grid .text-link{font-size:12px}.section-heading{margin-bottom:30px}.section-heading>p:last-child{font-size:14px}.wedding{grid-template-columns:1fr}.wedding-image img{height:380px;min-height:0;object-position:center}.wedding-content{padding:42px 25px}.wedding h2{font-size:43px}.mini-gallery img{height:95px}.heading-row{display:block;margin-bottom:25px}.heading-row h2{font-size:40px}.heading-row .text-link{margin-top:18px}.gallery-grid{grid-template-columns:repeat(3,1fr);gap:10px}.gallery-grid img{height:150px}.review-layout{grid-template-columns:1fr;gap:30px}.review-layout h2{font-size:39px}.review-layout p{font-size:14px}.review-card{padding:30px 20px}.contact{grid-template-columns:1fr;gap:30px}.map-panel iframe{min-height:300px}.english{display:block;padding-bottom:30px}.english h3{margin-bottom:15px}.footer-top{flex-direction:column;align-items:flex-start;gap:25px}.footer-top p{font-size:13px}.footer-bottom{flex-direction:column;gap:9px}footer{padding-bottom:100px}.mobile-actions{display:grid;grid-template-columns:1fr 1.3fr;position:fixed;bottom:0;left:0;right:0;z-index:30;background:var(--ivory);padding:10px 15px calc(10px + env(safe-area-inset-bottom));gap:10px;border-top:1px solid var(--line);box-shadow:0 -4px 20px #102a2010}.mobile-actions a{min-height:44px;display:flex;align-items:center;justify-content:center;border-radius:30px;border:1px solid var(--green);font-size:13px;font-weight:700}.mobile-actions a:last-child{background:var(--green);color:white}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media(max-width:360px){.hero h1{font-size:58px}.promise{font-size:7px;gap:8px}.service-grid{grid-template-columns:1fr}.service-grid img{height:210px}.gallery-grid{grid-template-columns:1fr 1fr}}
