:root{--pink:#ff008c;--ink:#101e2d;--ivory:#fffdf9;--line:#e4e0da;--blush:#fff0f5;scroll-behavior:smooth}*{box-sizing:border-box}body{background:var(--ivory);color:var(--ink);margin:0;font-family:Georgia,Times New Roman,serif;font-size:19px;line-height:1.5}a{color:inherit;text-decoration:none}p{margin:0 0 1.15em}h1,h2,h3{letter-spacing:-.035em;margin:0 0 .5em;font-weight:400;line-height:1.07}h1{font-size:clamp(48px,5.4vw,86px)}h2{font-size:clamp(34px,3.4vw,54px)}h3{font-size:clamp(25px,2.3vw,36px)}em{color:var(--pink);font-weight:400}img{max-width:100%;display:block}.header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:30px;max-width:1500px;min-height:115px;margin:auto;padding:22px 4%;display:flex}.logo{flex-shrink:0;width:210px;display:block}.logo img{mix-blend-mode:multiply;width:100%}.header nav{align-items:center;gap:30px;font-size:16px;display:flex}.header nav a[aria-current=page]{color:var(--pink);border-bottom:1px solid var(--pink);padding-bottom:7px}.button{background:var(--pink);color:#fff;border:1px solid var(--pink);min-height:49px;font:inherit;text-align:center;cursor:pointer;justify-content:center;align-items:center;padding:13px 26px;font-size:17px;transition:background .2s,transform .2s;display:inline-flex}.button:hover{background:#d90077;border-color:#d90077}.button:active{transform:translateY(1px)}.button.outline{color:var(--ink);border-color:var(--ink);background:0 0}.button.outline:hover{background:var(--blush)}.button:disabled{opacity:.65;cursor:wait}.actions{flex-wrap:wrap;gap:16px;margin-top:28px;display:flex}.center .actions{justify-content:center}.eyebrow{text-transform:uppercase;letter-spacing:.22em;color:var(--pink);margin-bottom:24px;font-family:Arial,sans-serif;font-size:12px;font-weight:600}.hero{grid-template-columns:1fr 1fr;max-width:1500px;margin:auto;display:grid}.hero-copy{padding:70px 9% 65px}.hero-image{min-height:640px;max-height:810px}.hero-image .photo{object-fit:cover;object-position:center 34%;width:100%;height:100%}.hero.reverse .hero-copy{order:2}.hero.reverse .hero-image{order:1;height:740px;padding:25px 0 25px 8%}.hero.reverse .hero-image .photo{object-position:50% 20%}.hero .lead{max-width:530px;font-size:24px;line-height:1.35}.hero .lead .smaller{font-size:19px}.ribbon{background:var(--blush);text-align:center;text-transform:uppercase;letter-spacing:.28em;padding:23px;font:12px/1.6 Arial,sans-serif}.section{max-width:1380px;margin:auto;padding:70px 5%;scroll-margin-top:20px}.center{text-align:center}.intro{max-width:1000px;font-size:23px;line-height:1.5}.center .intro{margin-left:auto;margin-right:auto}.text-link{color:#d90077;margin-top:7px;font-size:19px;display:inline-block}.text-link:hover{text-decoration:underline}.three-columns{text-align:left;grid-template-columns:repeat(3,1fr);gap:35px;margin:50px 0 0;display:grid}.three-columns article{border-right:1px solid var(--line);padding:0 25px 0 0}.three-columns article:last-child{border:0}.three-columns p{font-size:21px}.photo-cta{background:var(--ink);max-width:1500px;color:var(--ivory);grid-template-columns:1fr 1fr;margin:auto;display:grid}.photo-cta>.photo{object-fit:cover;width:100%;height:500px}.photo-cta>div{align-self:center;padding:65px 10%}.photo-cta h2{font-size:clamp(32px,3.4vw,52px)}.cta{background:var(--ink);color:var(--ivory);text-align:center;padding:70px 8%}.cta h2{max-width:1050px;margin-left:auto;margin-right:auto}.cta p{max-width:850px;margin-left:auto;margin-right:auto}.cta .button{margin-top:10px}.two-columns{grid-template-columns:1fr 1fr;gap:45px;display:grid}.awards{background:var(--ink);color:var(--ivory);padding:65px max(5%,50vw - 620px)}.awards h3{font-size:30px}.awards .two-columns{gap:32px;margin-top:45px}.awards p{margin:0;font-size:18px}.pink-section{background:var(--blush);padding:55px 7%}.feature-grid{grid-template-columns:repeat(3,1fr);gap:22px;margin-top:30px;display:grid}.feature-grid article{border:1px solid var(--line);flex-direction:column;padding:30px;display:flex}.feature-grid article h3{font-size:30px}.feature-grid article p{font-size:19px}.feature-grid .button{align-self:flex-start;margin-top:auto;padding:11px 18px}.feature-grid .eyebrow{font-size:11px}.feature-grid.two{grid-template-columns:1fr 1fr}.conversation{padding-top:0}.link-row{border:1px solid var(--line);justify-content:space-between;align-items:center;gap:25px;padding:28px;display:flex}.link-row h3{margin:0;font-size:28px}.appearance{grid-template-columns:1.4fr 1fr;align-items:center;gap:40px;padding-top:15px;display:grid}.mini-gallery{grid-template-columns:1.1fr .9fr;gap:12px;display:grid}.mini-gallery .photo{object-fit:cover;width:100%;height:365px}.mini-gallery .photo:last-child{object-position:30% center}.book-hero{grid-template-columns:.9fr 1.1fr;align-items:center;gap:60px;max-width:1300px;margin:auto;padding:65px 5%;display:grid}.book-image .photo{object-fit:contain;mix-blend-mode:multiply;width:100%;max-height:650px}.book-hero .subtitle{font-size:29px;line-height:1.25}.book-hero .byline{margin-top:30px;font-size:27px}.byline small{font-size:21px}.themes{margin:40px 0 0;font-size:clamp(30px,3.5vw,52px);line-height:1.3}.editions{padding-top:20px}.editions .three-columns{text-align:center;margin:40px 0}.book-event>.photo{height:670px}.service-grid{grid-template-columns:1fr 1fr;gap:20px;padding-top:35px;padding-bottom:25px;display:grid}.service-grid article{background:#f8f5f0;align-items:flex-start;gap:24px;padding:28px;display:flex}.service-grid h3{letter-spacing:-.02em;font-size:29px}.service-grid p{margin:0}.service-number{color:#d90077;background:#ffe2ed;border-radius:50%;padding:18px;font:16px Arial,sans-serif}.photo-story{grid-template-columns:1.15fr 1fr;align-items:center;gap:50px;padding-top:25px;display:grid}.photo-story .photo{width:100%}.inquiry{background:#faf6f1;grid-template-columns:1.6fr 1fr;gap:50px;max-width:none;padding-left:max(5%,50vw - 620px);padding-right:max(5%,50vw - 620px);display:grid}.inquiry h2{font-size:42px}.inquiry aside{border-left:1px solid var(--line);padding:70px 0 0 35px}.inquiry aside h3{font-size:34px}.inquiry aside a{overflow-wrap:anywhere;margin:15px 0;font-size:17px;display:block}.booking-form{margin-top:24px}.form-grid{grid-template-columns:1fr 1fr;gap:17px 24px;display:grid}.booking-form label{font-size:15px;display:block}.booking-form label>span{color:#d90077}.booking-form input,.booking-form select,.booking-form textarea{background:var(--ivory);width:100%;color:var(--ink);border:1px solid #b9bdc2;border-radius:0;min-height:44px;margin:6px 0 8px;padding:12px;font:16px Arial,sans-serif;display:block}.booking-form textarea{resize:vertical}.booking-form .consent{margin:20px 0;font:13px/1.6 Arial,sans-serif;display:block}.booking-form .consent input{vertical-align:middle;width:16px;min-height:0;margin:0 7px 0 0;display:inline-block}.consent a{text-decoration:underline}.honeypot{position:absolute;left:-9999px}.fine{margin-top:17px;font:12px/1.7 Arial,sans-serif}.error{color:#a40035;font:15px/1.5 Arial,sans-serif}.confirmation{max-width:1150px;padding-top:65px;padding-bottom:70px}.confirmation h1{font-size:clamp(43px,5.2vw,72px)}.confirmation .pink-section{max-width:850px;margin:30px auto;padding:30px}.check{border:2px solid var(--pink);color:var(--pink);border-radius:50%;place-items:center;width:65px;height:65px;margin-bottom:25px;font:35px Arial;display:inline-grid}.privacy{max-width:950px}.privacy h1{margin-bottom:35px}.privacy h3{margin-top:35px}.privacy a{text-decoration:underline}footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:45px;max-width:1380px;margin:auto;padding:40px 5%;font-size:15px;display:flex}footer .logo{width:190px}.footer-contact a{margin:6px 0;display:block}.footer-links{flex-direction:column;gap:6px;font:12px/1.8 Arial,sans-serif;display:flex}.footer-contact{overflow-wrap:anywhere}.menu-toggle{display:none}.skip{position:absolute;left:-9999px}.skip:focus{background:var(--ink);color:#fff;z-index:50;padding:12px;top:10px;left:10px}:focus-visible{outline-offset:4px;outline:3px solid #d90077}section[id]{scroll-margin-top:25px}@media (min-width:1500px){.hero-copy{padding-left:65px}.hero{padding:0 30px}.hero-image{height:730px}}@media (max-width:950px){.header nav{gap:17px;font-size:14px}.logo{width:175px}.header nav .button{padding:12px 18px;font-size:14px}.hero-copy{padding:45px 8%}.hero-image{min-height:550px}.hero .lead{font-size:21px}.feature-grid article{padding:22px}.feature-grid .button{font-size:14px}.inquiry{grid-template-columns:1fr}.inquiry aside{border:0;border-top:1px solid var(--line);padding:30px 0 0}.book-hero{gap:35px}.book-hero h1{font-size:64px}.photo-cta>div{padding:40px 8%}}@media (max-width:700px){body{font-size:18px}.header{min-height:88px;padding:14px 6%;position:relative}.header .logo{width:155px}.menu-toggle{color:var(--ink);background:0 0;border:0;align-items:center;gap:10px;font:14px Arial,sans-serif;display:flex}.menu-toggle span{font-size:23px}.header nav{z-index:10;background:var(--ivory);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:22px;padding:25px 6%;font-size:18px;display:none;position:absolute;top:100%;left:0;right:0}.header nav.open{display:flex}.header nav .button{font-size:17px}.hero,.book-hero{flex-direction:column;display:flex}.hero-copy{padding:42px 7%}.hero h1{font-size:49px}.hero-image{width:100%;height:470px;min-height:0;max-height:none}.hero-image .photo{object-position:center 26%}.hero.reverse .hero-copy{order:0}.hero.reverse .hero-image{order:1;height:480px;padding:0}.hero.reverse .hero-image .photo{object-position:center 18%}.hero .actions .button{white-space:nowrap;flex:1;padding:12px 15px;font-size:15px}.ribbon{letter-spacing:.18em;padding:20px 15px;font-size:10px}.section{padding:45px 7%}.intro{font-size:20px}.three-columns{grid-template-columns:1fr;gap:26px;margin-top:32px}.three-columns article{border-right:0;border-bottom:1px solid var(--line);padding:0 0 25px}.three-columns p{font-size:18px}.three-columns article h3 br{display:none}.photo-cta{grid-template-columns:1fr}.photo-cta>.photo{height:360px}.photo-cta>div{padding:40px 7%}.two-columns{grid-template-columns:1fr;gap:30px}.awards{padding:45px 7%}.awards .two-columns{gap:27px}.feature-grid,.feature-grid.two{grid-template-columns:1fr}.feature-grid article{padding:25px}.feature-grid .button{align-self:stretch;font-size:16px}.conversation{padding-top:5px}.link-row{flex-direction:column;align-items:flex-start;padding:25px}.appearance{grid-template-columns:1fr}.mini-gallery .photo{height:260px}.book-hero{gap:30px;padding:35px 7%}.book-image{max-width:330px;margin:auto}.book-hero h1{font-size:65px}.book-hero .subtitle{font-size:25px}.book-hero .actions .button{flex:1;padding:12px;font-size:14px}.themes{font-size:34px}.editions .three-columns{gap:20px}.book-event>.photo{object-position:center 20%;height:480px}.service-grid{grid-template-columns:1fr;gap:13px}.service-grid article{gap:20px;padding:23px}.service-grid h3{font-size:26px}.photo-story{grid-template-columns:1fr;gap:28px}.inquiry{gap:15px;padding:45px 7%}.inquiry h2{font-size:35px}.form-grid{grid-template-columns:1fr}.inquiry aside h3{font-size:29px}.confirmation h1{font-size:44px}.confirmation .actions{flex-direction:column}.pink-section{padding:40px 7%}footer{text-align:center;flex-direction:column;gap:22px;padding:35px 7%}.footer-links{gap:8px}.cta{padding:45px 7%}.cta h2{font-size:36px}}@media (prefers-reduced-motion:reduce){:root{scroll-behavior:auto}.button{transition:none}}.edition-link{color:#d90077;text-underline-offset:6px;text-decoration:underline}.edition-link:hover{color:var(--ink)}
