:root{--blush:#f9e6ee;--blush-deep:#f3d6e1;--ivory:#fffafc;--cream:#fff6fa;--ink:#4b2f38;--taupe:#815966;--rose:#b76d8b;--mauve:#cf8fa8;--gold:#d6b15f;--line:rgba(183,109,139,.18);--shadow:0 20px 50px rgba(183,109,139,.14);--radius:28px;--container:1180px}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:"Manrope",sans-serif;color:var(--ink);background:linear-gradient(180deg,var(--ivory),#fdeff5);line-height:1.65}body:before{content:"";position:fixed;inset:18px;border:1px solid rgba(214,177,95,.28);pointer-events:none;z-index:999}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.container{width:min(var(--container),calc(100% - 40px));margin:auto}.section{padding:90px 0}.soft-section{background:rgba(249,230,238,.42)}h1,h2,h3,h4{font-family:"Cormorant Garamond",serif;font-weight:500;line-height:1}.eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:18px;color:var(--rose);font-size:.75rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase}.eyebrow:before{content:"";width:28px;height:1px;background:var(--gold)}.section-title{font-size:clamp(2.7rem,5vw,4.6rem);margin-bottom:18px}.lead{max-width:62ch;color:var(--taupe);font-size:1.04rem}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 23px;border:1px solid transparent;border-radius:999px;font-size:.77rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;transition:.2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg,#cfa24a,var(--gold));color:#30221d;box-shadow:0 14px 30px rgba(214,177,95,.25)}.btn-secondary{background:rgba(255,255,255,.7);border-color:rgba(183,109,139,.25);color:var(--taupe)}.button-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,243,248,.9);border-bottom:1px solid rgba(214,177,95,.22);backdrop-filter:blur(16px)}.nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;flex-direction:column}.brand-name{font-family:"Cormorant Garamond",serif;font-size:1.55rem}.brand-sub{color:var(--mauve);font-size:.62rem;letter-spacing:.2em;text-transform:uppercase}.nav-toggle{display:none;border:0;background:transparent;color:var(--ink);font:inherit;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.nav-links{display:flex;align-items:center;gap:22px;list-style:none;color:var(--taupe);font-size:.74rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.nav-links a[aria-current="page"]{color:var(--rose)}.nav-links .nav-cta{padding:11px 18px;border-radius:999px;background:var(--rose);color:white}
.hero{padding:72px 0}.hero-grid{display:grid;grid-template-columns:1.06fr .94fr;gap:28px;align-items:stretch}.hero-copy,.hero-photo,.card,.panel{border:1px solid rgba(183,109,139,.14);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.hero-copy{padding:clamp(36px,6vw,68px);background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(249,230,238,.94));display:flex;flex-direction:column;justify-content:center}.hero-copy h1{font-size:clamp(3.8rem,7vw,6.6rem);margin-bottom:20px}.hero-copy .lead{margin-top:10px}.location{margin-top:18px;color:var(--rose);font-size:.82rem;font-weight:700;letter-spacing:.08em}.hero-photo{min-height:650px}.hero-photo img{width:100%;height:100%;object-fit:cover}.page-hero{padding:80px 0 50px;text-align:center}.page-hero .lead{margin:0 auto}.page-hero h1{font-size:clamp(3.7rem,7vw,6.4rem);margin-bottom:18px}
.gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:280px;gap:16px;margin-top:32px}.gallery figure{overflow:hidden;border-radius:24px;box-shadow:var(--shadow)}.gallery img{width:100%;height:100%;object-fit:cover}.gallery figure:nth-child(1),.gallery figure:nth-child(6){grid-row:span 2}.gallery-actions{text-align:center;margin-top:30px}.service-cards,.review-grid,.pricing-grid,.highlights{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:32px}.card{padding:30px;background:rgba(255,250,252,.86)}.card h3{font-size:2rem;margin-bottom:12px}.card p{color:var(--taupe)}.card .text-link{display:inline-block;margin-top:20px;color:var(--rose);font-size:.74rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.meet-preview,.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:34px;align-items:center}.meet-preview-photo,.section-photo{overflow:hidden;border-radius:var(--radius);box-shadow:var(--shadow);min-height:500px}.meet-preview-photo img,.section-photo img{width:100%;height:100%;min-height:500px;object-fit:cover}.review-card{padding:28px;border-top:2px solid var(--gold);background:rgba(255,255,255,.58)}.review-card p{color:var(--taupe);font-style:italic}.review-credit{margin-top:14px;color:var(--rose);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase}.cta{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;padding:clamp(34px,6vw,64px);border-radius:34px;background:linear-gradient(135deg,var(--blush),var(--ivory));box-shadow:var(--shadow)}
.jump-links{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:28px}.jump-links a{padding:10px 16px;border:1px solid var(--line);border-radius:999px;background:white;color:var(--rose);font-size:.72rem;font-weight:700;letter-spacing:.12em}.service-section{scroll-margin-top:100px}.service-heading{display:flex;justify-content:space-between;gap:20px;align-items:start;margin-bottom:24px}.service-heading h2{font-size:clamp(2.6rem,5vw,4.4rem)}.price{color:var(--rose);font-size:1.25rem;font-weight:700;white-space:nowrap}.service-list{display:grid;gap:16px}.service-item{padding:28px;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.66)}.service-item h3{font-size:2rem;margin-bottom:8px}.service-meta{margin-bottom:12px;color:var(--rose);font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.includes{margin-top:16px;padding-left:20px;color:var(--taupe)}.callout{margin-top:24px;padding:24px;border-radius:22px;background:var(--blush);color:var(--ink)}.travel-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:22px 0}.travel-option{padding:22px;border:1px solid var(--line);border-radius:20px;background:white}.badge-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.badge{padding:9px 13px;border-radius:999px;background:white;border:1px solid rgba(214,177,95,.35);font-size:.7rem;font-weight:700;letter-spacing:.1em}.featured-service{border:1px solid rgba(214,177,95,.6);background:linear-gradient(145deg,#fff,var(--blush))}.faq{display:grid;gap:12px;margin-top:28px}.faq details{padding:20px 22px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.72)}.faq summary{cursor:pointer;font-weight:700;letter-spacing:.05em}.faq p{margin-top:10px;color:var(--taupe)}
.portfolio-section+.portfolio-section{padding-top:20px}.portfolio-section h2{font-size:2.8rem;margin-bottom:24px}.portfolio-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.portfolio-gallery figure{position:relative;overflow:hidden;border-radius:24px;min-height:380px;background:#f1e6e3;box-shadow:var(--shadow)}.portfolio-gallery img{width:100%;height:100%;min-height:380px;object-fit:contain}.portfolio-gallery .wide{grid-column:span 2}
.about-page{display:grid;gap:72px}.about-hero{display:grid;grid-template-columns:.9fr 1.1fr;gap:46px;align-items:center}.about-portrait{min-height:620px;overflow:hidden;border-radius:var(--radius);box-shadow:var(--shadow)}.about-portrait img{width:100%;height:100%;min-height:620px;object-fit:cover;object-position:center top}.about-copy{display:grid;gap:15px;color:var(--taupe)}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.story-card{padding:clamp(30px,5vw,52px);border-radius:var(--radius);background:rgba(255,255,255,.72);box-shadow:var(--shadow)}.story-card h2{font-size:clamp(2.4rem,4vw,3.8rem);margin-bottom:20px}.highlights{grid-template-columns:1fr;margin-top:24px}.highlight{padding:16px;border-top:1px solid var(--line)}.highlight strong{display:block;color:var(--rose);font-size:.75rem;letter-spacing:.15em}.favorites-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:110px;gap:16px;margin-top:28px}.favorite{grid-column:span 4;grid-row:span 3;position:relative;overflow:hidden;border-radius:26px;background:#eee;box-shadow:var(--shadow)}.favorite.family{grid-column:span 8}.favorite img{width:100%;height:100%;object-fit:cover}.favorite.contain img{object-fit:contain}.favorite.disney{background:#253122}.favorite.friends{background:#5a4436}.favorite figcaption{position:absolute;left:14px;bottom:14px;padding:8px 12px;border-radius:999px;background:rgba(255,250,252,.92);font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.inquire-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:28px;align-items:start}.inquire-photo{overflow:hidden;border-radius:var(--radius);box-shadow:var(--shadow)}.inquire-photo img{width:100%;height:620px;object-fit:cover}.form-shell{padding:30px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.75);box-shadow:var(--shadow)}.form-shell>p{margin-bottom:20px;color:var(--taupe)}.next-steps{margin-top:28px;padding:30px;border-radius:var(--radius);background:var(--blush)}.next-steps h2{font-size:2.4rem;margin-bottom:12px}
.site-footer{padding:48px 0;background:#4b2f38;color:white}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:30px;align-items:start}.footer-brand{font-family:"Cormorant Garamond",serif;font-size:1.8rem}.footer-copy{color:rgba(255,255,255,.7);font-size:.86rem}.footer-links{display:grid;gap:8px;color:rgba(255,255,255,.8);font-size:.8rem;text-transform:uppercase;letter-spacing:.1em}
@media(max-width:900px){.nav-toggle{display:block}.nav-links{display:none;position:absolute;top:78px;left:0;right:0;padding:20px;background:var(--ivory);box-shadow:var(--shadow);flex-direction:column;align-items:stretch;text-align:center}.nav-links.open{display:flex}.hero-grid,.meet-preview,.split,.about-hero,.story-grid,.inquire-layout,.cta{grid-template-columns:1fr}.hero-photo,.hero-photo img{min-height:520px}.service-cards,.review-grid,.pricing-grid{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(2,1fr)}.portfolio-gallery{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.favorites-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:260px}.favorite,.favorite.family{grid-column:span 1;grid-row:span 1}}
@media(max-width:600px){body:before{inset:7px}.section{padding:66px 0}.container{width:min(100% - 28px,var(--container))}.brand-sub{display:none}.hero{padding-top:34px}.hero-copy{padding:34px 26px}.hero-copy h1{font-size:3.6rem}.hero-photo,.hero-photo img{min-height:440px}.gallery,.portfolio-gallery,.favorites-grid{grid-template-columns:1fr}.gallery figure,.gallery figure:nth-child(1),.gallery figure:nth-child(6){grid-row:span 1;min-height:360px}.portfolio-gallery .wide{grid-column:span 1}.portfolio-gallery figure,.portfolio-gallery img{min-height:420px}.service-heading{display:block}.price{margin-top:8px}.travel-grid{grid-template-columns:1fr}.about-portrait,.about-portrait img{min-height:470px}.favorites-grid{grid-auto-rows:320px}.cta{padding:32px 26px}.button-row .btn,.cta .btn{width:100%}.footer-grid{grid-template-columns:1fr}.inquire-photo img{height:440px}}
