        :root{--paper:#fcfbf9;--white:#fff;--mist:#f0f2ef;--mist-deep:#e8ece8;--eucalyptus:#667a73;--eucalyptus-deep:#40544d;--ink:#303633;--muted:#68706d;--line:#d9dedb;--blush:#f4eeea;--sand:#eee6dc;--radius:18px;--shadow:0 22px 70px rgba(46,59,53,.08);--max:1360px;--font:"Manrope","Avenir Next","Segoe UI",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:16px;font-weight:400;line-height:1.72;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body.menu-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--eucalyptus-deep);outline-offset:4px}.skip-link{position:fixed;z-index:1000;top:12px;left:12px;padding:10px 16px;border-radius:999px;background:var(--eucalyptus-deep);color:#fff;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header{position:sticky;z-index:100;top:0;height:76px;border-bottom:1px solid rgba(217,222,219,.82);background:rgba(252,251,249,.92);backdrop-filter:blur(18px)}.header-inner{width:min(calc(100% - 48px),var(--max));height:100%;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:clamp(22px,3vw,48px)}.brand{width:170px;min-width:170px;display:inline-flex;align-items:center;justify-self:center}.brand img{width:170px;height:58px;object-fit:contain}.header-nav{display:flex;align-items:center;gap:clamp(18px,2.1vw,32px)}.header-nav-left{justify-self:start}.header-nav-right{justify-self:end}.header-nav a,.mobile-nav a{min-height:44px;display:inline-flex;align-items:center;color:var(--ink);font-size:13px;font-weight:500;text-decoration:none}.header-nav a:not(.button-link),.mobile-nav a:not(.button-link){position:relative}.header-nav a:not(.button-link)::after,.mobile-nav a:not(.button-link)::after{content:"";position:absolute;right:0;bottom:7px;left:0;height:1px;background:var(--eucalyptus);transform:scaleX(0);transform-origin:right;transition:transform .28s ease}.header-nav a:hover::after,.header-nav a[aria-current="page"]::after,.mobile-nav a:hover::after,.mobile-nav a[aria-current="page"]::after{transform:scaleX(1);transform-origin:left}.mobile-nav{display:none}.button-link,.button{min-height:48px;padding:0 22px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--eucalyptus-deep);border-radius:999px;background:var(--eucalyptus-deep);color:#fff!important;font:600 13px/1 var(--font);text-decoration:none;cursor:pointer;transition:background .25s,color .25s,transform .25s}.button-link{min-height:44px;padding:0 20px}.button:hover,.button-link:hover{background:transparent;color:var(--eucalyptus-deep)!important;transform:translateY(-2px)}.button.secondary{border-color:var(--line);background:transparent;color:var(--ink)!important}.button.secondary:hover{border-color:var(--eucalyptus);color:var(--eucalyptus-deep)!important}.menu-button{width:48px;height:48px;padding:0;display:none;align-items:center;justify-content:center;border:0;background:transparent;color:var(--ink);cursor:pointer}.menu-button span,.menu-button span::before,.menu-button span::after{width:24px;height:1px;display:block;position:relative;background:currentColor;transition:transform .25s,opacity .25s}.menu-button span::before,.menu-button span::after{content:"";position:absolute;left:0}.menu-button span::before{top:-7px}.menu-button span::after{top:7px}.menu-button[aria-expanded="true"] span{background:transparent}.menu-button[aria-expanded="true"] span::before{top:0;transform:rotate(45deg)}.menu-button[aria-expanded="true"] span::after{top:0;transform:rotate(-45deg)}main{overflow:hidden}.wrap{width:min(calc(100% - 48px),var(--max));margin:0 auto}.page-hero{padding:clamp(64px,7vw,110px) 0}.page-hero-grid,.pricing-hero-grid,.offer-hero-grid,.testimonial-hero-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(480px,1.1fr);gap:clamp(50px,7vw,110px);align-items:center}.page-hero-copy{max-width:680px}.eyebrow{margin:0 0 22px;color:var(--eucalyptus-deep);font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}h1,h2,h3,p{text-wrap:pretty}h1{margin:0;font-size:clamp(46px,5vw,74px);font-weight:300;letter-spacing:-.045em;line-height:1.02}h2{margin:0;font-size:clamp(36px,4vw,60px);font-weight:300;letter-spacing:-.035em;line-height:1.08}h3{margin:0;font-size:24px;font-weight:400;line-height:1.25}.hero-lead{max-width:650px;margin:28px 0 0;color:var(--muted);font-size:clamp(17px,1.35vw,20px);line-height:1.68}.hero-actions{margin-top:34px;display:flex;flex-wrap:wrap;gap:12px}.page-hero-copy>.button{margin-top:34px}.hero-photo,.offer-hero-image,.pricing-hero-photo{margin:0;overflow:hidden;border-radius:var(--radius);background:var(--mist);box-shadow:var(--shadow)}.hero-photo{height:min(68vw,680px)}.hero-photo img,.pricing-hero-photo>img,.offer-hero-image>img{width:100%;height:100%;object-fit:cover}.hero-photo.portrait img{object-position:center 38%}.proof-band{border-block:1px solid var(--line);background:rgba(255,255,255,.56)}.proof-grid{display:grid;grid-template-columns:repeat(4,1fr)}.proof-grid>div{min-height:138px;padding:28px clamp(18px,2.7vw,38px);display:flex;flex-direction:column;justify-content:center;border-left:1px solid var(--line)}.proof-grid>div:first-child{border-left:0;padding-left:0}.proof-grid>div:last-child{padding-right:0}.proof-grid strong{color:var(--eucalyptus-deep);font-size:clamp(20px,1.7vw,27px);font-weight:400;line-height:1.2}.proof-grid span{margin-top:8px;color:var(--muted);font-size:14px;line-height:1.45}.section{padding:clamp(88px,10vw,148px) 0}.soft-section{background:var(--mist)}.section-heading{max-width:760px}.section-heading.centred{max-width:850px;margin:0 auto clamp(45px,6vw,78px);text-align:center}.section-heading.wide{max-width:940px;margin-bottom:clamp(42px,6vw,76px)}.section-heading.wide>p:last-child{max-width:700px;margin:22px 0 0;color:var(--muted)}.editorial-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(440px,.82fr);gap:clamp(60px,10vw,160px);align-items:start}.long-copy{max-width:650px;color:var(--muted);font-size:17px}.long-copy p{margin:0 0 22px}.split-feature,.image-quote-grid,.split-note,.digital-price-grid,.inclusion-grid,.map-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.78fr);gap:clamp(50px,8vw,120px);align-items:center}.feature-photo,.image-quote-grid figure,.split-note figure,.digital-price-grid figure{margin:0;overflow:hidden;border-radius:var(--radius)}.feature-photo{height:680px}.feature-photo img,.image-quote-grid img,.split-note img,.digital-price-grid figure img{width:100%;height:100%;object-fit:cover}.feature-copy p{color:var(--muted)}.feature-copy h2+.feature-copy p,.feature-copy h2+p{margin-top:28px}.text-link{min-height:44px;margin-top:12px;display:inline-flex;align-items:center;border-bottom:1px solid var(--eucalyptus);color:var(--eucalyptus-deep);font-size:14px;font-weight:600;text-decoration:none}.text-link:hover{border-color:transparent}.service-links{margin-top:clamp(42px,6vw,76px);border-top:1px solid var(--line)}.service-links a{min-height:120px;padding:24px 0;display:grid;grid-template-columns:70px minmax(180px,.7fr) 1fr;gap:26px;align-items:center;border-bottom:1px solid var(--line);text-decoration:none;transition:padding .25s,background .25s}.service-links a:hover{padding-inline:22px;background:var(--mist)}.service-links span{color:var(--eucalyptus);font-size:13px}.service-links strong{font-size:clamp(22px,2vw,30px);font-weight:400}.service-links small{color:var(--muted);font-size:15px}.compact-cta{padding:28px 0 80px}.compact-cta-inner{min-height:230px;padding:clamp(36px,5vw,70px);display:flex;align-items:center;justify-content:space-between;gap:50px;border-radius:var(--radius);background:var(--mist-deep)}.compact-cta h2{max-width:760px;font-size:clamp(32px,3.6vw,52px)}.compact-cta p{max-width:650px;margin:18px 0 0;color:var(--muted)}.testimonial-hero{background:var(--mist)}.testimonial-hero-grid{grid-template-columns:minmax(0,1fr) minmax(420px,.84fr)}.quote-portrait{position:relative}.quote-portrait img{width:100%;height:570px;object-fit:cover;border-radius:var(--radius)}.quote-portrait blockquote{max-width:420px;margin:-70px 30px 0 auto;padding:30px;position:relative;border-radius:14px;background:var(--paper);box-shadow:var(--shadow);font-size:20px;font-weight:300;line-height:1.55}.review-wall{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:start}.review-card{min-height:310px;padding:34px;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius);background:var(--white)}.review-card-wide{grid-row:span 2;min-height:638px;justify-content:center;background:var(--mist)}.quote-mark{width:38px;height:28px;margin-bottom:28px;color:var(--eucalyptus)}.review-card p{margin:0;color:var(--muted);font-size:15px}.review-card strong{margin-top:auto;padding-top:26px;font-size:13px;font-weight:600}.source-note{margin:28px 0 0;color:var(--muted);font-size:12px}.image-quote-section{background:var(--blush)}.image-quote-grid figure{height:610px}.image-quote-copy{max-width:560px}.image-quote-copy p{color:var(--muted)}.image-quote-copy h2+p{margin-top:28px}.sculpture-hero{background:linear-gradient(90deg,var(--paper) 0 62%,var(--sand) 62%)}.frame-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.frame-card{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--white)}.frame-card img{width:100%;aspect-ratio:1/1;object-fit:cover}.frame-card>div{padding:28px}.frame-card span,.option-note span{display:block;color:var(--eucalyptus-deep);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.frame-card strong{display:block;margin:10px 0;font-size:38px;font-weight:300}.frame-card p{margin:0;color:var(--muted)}.option-note{margin-top:20px;padding:30px;display:grid;grid-template-columns:.7fr .9fr 1.4fr;gap:30px;align-items:center;border:1px solid var(--line);border-radius:var(--radius);background:var(--white)}.option-note strong{display:block;margin-top:6px;font-size:18px;font-weight:500}.option-note p{margin:0;color:var(--muted);font-size:13px}.process-layout{display:grid;grid-template-columns:minmax(300px,.65fr) minmax(0,1fr);gap:clamp(60px,9vw,140px)}.process-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.process-list li{padding:30px 0;display:grid;grid-template-columns:60px 1fr;gap:24px;border-bottom:1px solid var(--line)}.process-list li>span{color:var(--eucalyptus);font-size:13px}.process-list h3{font-size:22px}.process-list p{margin:10px 0 0;color:var(--muted)}.faq-section{background:var(--blush)}.faq-layout{display:grid;grid-template-columns:minmax(300px,.62fr) minmax(0,1fr);gap:clamp(55px,8vw,120px);align-items:start}.accordion{border-top:1px solid var(--line)}.accordion details{border-bottom:1px solid var(--line)}.accordion summary{min-height:78px;padding:20px 48px 20px 0;display:flex;align-items:center;position:relative;font-size:17px;font-weight:500;cursor:pointer;list-style:none}.accordion summary::-webkit-details-marker{display:none}.accordion summary::after{content:"+";position:absolute;right:10px;color:var(--eucalyptus-deep);font-size:24px;font-weight:300}.accordion details[open] summary::after{content:"−"}.accordion details p{max-width:780px;margin:-4px 50px 26px 0;color:var(--muted)}.faq-hero{text-align:center;background:var(--mist)}.narrow-hero{max-width:980px}.narrow-hero .hero-lead{margin-inline:auto}.narrow-hero>.button{margin-top:32px}.faq-directory .faq-layout{grid-template-columns:minmax(320px,.62fr) minmax(0,1.1fr)}.faq-aside{position:sticky;top:120px}.faq-aside>p{max-width:520px;color:var(--muted)}.faq-aside h2+p{margin-top:25px}.aside-contact{margin-top:35px;padding-top:25px;display:flex;flex-direction:column;border-top:1px solid var(--line)}.aside-contact span{margin-bottom:8px;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em}.aside-contact a{width:max-content;min-height:34px;display:flex;align-items:center;color:var(--eucalyptus-deep);font-size:14px;text-decoration:none}.accordion-numbered summary{gap:22px}.accordion-numbered summary>span{color:var(--eucalyptus);font-size:12px}.split-note{grid-template-columns:minmax(0,.78fr) minmax(400px,1fr)}.split-note figure{height:560px}.clean-list{margin:28px 0;padding:0;list-style:none;border-top:1px solid var(--line)}.clean-list li{padding:17px 0 17px 25px;position:relative;border-bottom:1px solid var(--line)}.clean-list li::before{content:"";width:6px;height:6px;position:absolute;top:26px;left:0;border-radius:50%;background:var(--eucalyptus)}.pricing-hero{background:var(--blush)}.pricing-hero-grid{grid-template-columns:minmax(0,.95fr) minmax(460px,.9fr)}.pricing-hero-photo{height:600px;position:relative}.pricing-hero-photo>div{position:absolute;right:24px;bottom:24px;padding:22px 28px;border-radius:13px;background:rgba(252,251,249,.94);box-shadow:var(--shadow)}.pricing-hero-photo strong,.pricing-hero-photo span{display:block}.pricing-hero-photo strong{font-size:25px;font-weight:400}.pricing-hero-photo span{color:var(--muted);font-size:12px}.package-heading{max-width:none;margin-bottom:clamp(45px,6vw,78px);display:grid;grid-template-columns:1fr minmax(320px,.55fr);gap:70px;align-items:end}.package-heading>p{margin:0;color:var(--muted)}.package-grid{display:grid;gap:20px;align-items:stretch}.newborn-package-grid{grid-template-columns:repeat(3,1fr)}.two-package-grid{grid-template-columns:repeat(2,1fr);max-width:1000px;margin:0 auto}.package-card{padding:clamp(28px,3.5vw,48px);display:flex;flex-direction:column;position:relative;border:1px solid var(--line);border-radius:var(--radius);background:var(--white)}.package-card.featured{border-color:var(--eucalyptus);box-shadow:var(--shadow)}.package-badge{width:max-content;margin:-64px 0 22px;padding:8px 13px;border-radius:999px;background:var(--eucalyptus-deep);color:#fff;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.package-name{margin:0;color:var(--eucalyptus-deep);font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.package-price{margin:16px 0 24px;font-size:clamp(42px,4vw,58px);font-weight:300;line-height:1}.package-card ul{margin:0 0 28px;padding:0;list-style:none;border-top:1px solid var(--line)}.package-card li{padding:13px 0;border-bottom:1px solid var(--line);color:var(--muted);font-size:14px}.package-card .button,.package-card .text-link{margin-top:auto;width:max-content}.digital-price-section{background:var(--sand)}.digital-price-grid{grid-template-columns:minmax(400px,.75fr) minmax(0,1fr)}.digital-price-grid figure{height:720px}.digital-price-copy{max-width:650px}.digital-price-copy>p{color:var(--muted)}.digital-price-copy h2+p{margin-top:26px}.mini-prices{margin:34px 0;display:grid;grid-template-columns:1fr 1fr;gap:15px}.mini-prices>div{padding:24px;border-radius:14px;background:rgba(255,255,255,.62)}.mini-prices span,.mini-prices strong,.mini-prices small{display:block}.mini-prices span{min-height:42px;color:var(--muted);font-size:12px;text-transform:uppercase}.mini-prices strong{margin:10px 0;font-size:38px;font-weight:300}.mini-prices small{color:var(--muted)}.addon{padding-top:20px;border-top:1px solid rgba(64,84,77,.18)}.pricing-note{padding:28px 0 80px}.pricing-note-inner{padding:50px;display:grid;grid-template-columns:1fr 1fr auto;gap:50px;align-items:center;border-radius:var(--radius);background:var(--mist-deep)}.pricing-note-inner h2{font-size:36px}.pricing-note-inner>p{margin:0;color:var(--muted)}.offer-hero{background:linear-gradient(90deg,var(--mist) 0 61%,var(--paper) 61%)}.offer-hero-grid{grid-template-columns:minmax(0,.94fr) minmax(500px,1.06fr)}.offer-hero-prices{margin:30px 0;display:flex;gap:30px}.offer-hero-prices>div{padding-left:20px;border-left:1px solid var(--eucalyptus)}.offer-hero-prices span,.offer-hero-prices strong,.offer-hero-prices small{display:block}.offer-hero-prices span{max-width:180px;color:var(--muted);font-size:11px;text-transform:uppercase}.offer-hero-prices strong{font-size:36px;font-weight:300}.offer-hero-prices small{color:var(--muted);font-size:11px}.offer-hero-image{height:690px;position:relative}.offer-hero-image figcaption{position:absolute;right:24px;bottom:24px;padding:22px 26px;border-radius:13px;background:rgba(252,251,249,.94)}.offer-hero-image figcaption strong,.offer-hero-image figcaption span{display:block}.offer-hero-image figcaption strong{font-size:25px;font-weight:400}.offer-hero-image figcaption span{color:var(--muted);font-size:12px}.offer-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.offer-steps article{padding:35px;border-top:1px solid var(--eucalyptus);background:var(--white)}.offer-steps span{color:var(--eucalyptus);font-size:12px}.offer-steps h3{margin-top:34px}.offer-steps p{margin:14px 0 0;color:var(--muted)}.offer-gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:240px;gap:12px}.offer-gallery figure{margin:0;overflow:hidden;border-radius:12px}.offer-gallery figure:nth-child(1),.offer-gallery figure:nth-child(4){grid-row:span 2}.offer-gallery img{width:100%;height:100%;object-fit:cover}.inclusion-grid{grid-template-columns:minmax(0,.8fr) minmax(400px,.72fr)}.offer-card{padding:clamp(30px,4vw,54px);border-radius:var(--radius);background:var(--eucalyptus-deep);color:#fff}.offer-card>div{padding:18px 0;border-bottom:1px solid rgba(255,255,255,.24)}.offer-card span,.offer-card strong,.offer-card small{display:block}.offer-card span{font-size:12px;text-transform:uppercase}.offer-card strong{font-size:44px;font-weight:300}.offer-card small{opacity:.75}.offer-card>p{margin:24px 0}.offer-card .button{border-color:#fff;background:#fff;color:var(--eucalyptus-deep)!important}.offer-card .button:hover{background:transparent;color:#fff!important}.contact-hero{padding-bottom:60px;text-align:center;background:var(--blush)}.contact-section{padding-top:70px}.contact-layout{display:grid;grid-template-columns:minmax(320px,.58fr) minmax(0,1fr);gap:clamp(50px,8vw,120px);align-items:start}.contact-details{position:sticky;top:120px}.contact-details h2{font-size:clamp(34px,3.5vw,50px)}.contact-method{padding:22px 0;border-bottom:1px solid var(--line)}.contact-method span{display:block;margin-bottom:7px;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.contact-method a,.contact-method address{font-size:17px;font-style:normal;text-decoration:none}.contact-region{margin:28px 0;color:var(--muted)}.contact-social-links{display:flex;flex-wrap:wrap;gap:18px}.contact-social-links a{font-size:13px;font-weight:600;text-decoration:none;border-bottom:1px solid var(--eucalyptus)}.enquiry-panel{padding:clamp(30px,5vw,64px);border-radius:var(--radius);background:var(--mist)}.form-heading{margin-bottom:34px}.form-heading h2{font-size:clamp(32px,3.5vw,48px)}.enquiry-form label{display:block;color:var(--ink);font-size:13px;font-weight:500}.enquiry-form label span{color:#955f5a}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.enquiry-form input,.enquiry-form select,.enquiry-form textarea{width:100%;margin:8px 0 20px;padding:14px 15px;border:1px solid var(--line);border-radius:9px;background:var(--white);color:var(--ink);font:400 16px/1.4 var(--font)}.enquiry-form textarea{resize:vertical}.enquiry-form input:focus,.enquiry-form select:focus,.enquiry-form textarea:focus{border-color:var(--eucalyptus);outline:2px solid rgba(102,122,115,.2)}.honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.form-privacy{margin:14px 0 0;color:var(--muted);font-size:11px}.form-notice{margin-bottom:24px;padding:16px;border-radius:10px;font-size:14px}.form-notice.success{background:#e2ebe5;color:#30483e}.form-notice.error{background:#f5e7e3;color:#754c45}.map-section{padding:0 0 clamp(88px,10vw,148px)}.map-grid{padding:clamp(30px,4vw,60px);grid-template-columns:minmax(300px,.7fr) minmax(0,1fr);border-radius:var(--radius);background:var(--sand)}.map-copy{max-width:520px}.map-copy h2{font-size:clamp(32px,3.4vw,48px)}.map-copy p{color:var(--muted)}.studio-map{width:100%;min-height:420px;border:0;border-radius:14px}.site-footer{padding:75px 0 26px;border-top:1px solid var(--line);background:var(--paper)}.footer-main{display:grid;grid-template-columns:minmax(280px,.7fr) 1fr;gap:80px;align-items:end}.footer-logo{width:180px;height:72px;object-fit:contain}.footer-copy{max-width:530px;margin:18px 0 0;color:var(--muted);font-size:13px}.footer-actions{display:flex;flex-direction:column;align-items:flex-end;gap:26px}.footer-links,.footer-social{display:flex;align-items:center;flex-wrap:wrap;gap:24px}.footer-links a,.footer-blog{font-size:13px;font-weight:500;text-decoration:none}.footer-social a:not(.footer-blog){width:28px;height:28px;display:inline-flex}.footer-social svg{width:100%;height:100%}.footer-bottom{margin-top:55px;padding-top:20px;display:flex;justify-content:space-between;gap:30px;border-top:1px solid var(--line);color:var(--muted);font-size:11px}.to-top{width:46px;height:46px;display:flex;align-items:center;justify-content:center;position:fixed;z-index:80;right:24px;bottom:24px;border:1px solid var(--line);border-radius:50%;background:rgba(252,251,249,.93);color:var(--eucalyptus-deep);box-shadow:0 8px 24px rgba(46,59,53,.12);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(12px);transition:.25s}.to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0)}.to-top svg{width:22px;height:22px}.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.js .reveal.is-visible{opacity:1;transform:none}
        @media (max-width:1180px){.header-nav{display:none}.header-inner{grid-template-columns:48px 1fr 48px}.brand{grid-column:2}.menu-button{display:flex;grid-column:3;justify-self:end}.mobile-nav{position:fixed;z-index:90;top:76px;right:0;bottom:0;left:0;padding:30px max(24px,calc((100vw - var(--max))/2));display:flex;flex-direction:column;align-items:stretch;gap:2px;background:var(--paper);opacity:0;visibility:hidden;transform:translateY(-10px);transition:.25s}.mobile-nav.is-open{opacity:1;visibility:visible;transform:none}.mobile-nav a{min-height:56px;border-bottom:1px solid var(--line);font-size:16px}.mobile-nav .button-link{width:100%;margin-top:18px;border-bottom:1px solid var(--eucalyptus-deep)}}
        @media (max-width:960px){.page-hero-grid,.pricing-hero-grid,.offer-hero-grid,.testimonial-hero-grid,.editorial-grid,.split-feature,.image-quote-grid,.split-note,.digital-price-grid,.inclusion-grid,.map-grid,.contact-layout,.faq-layout,.faq-directory .faq-layout,.process-layout{grid-template-columns:1fr}.page-hero{padding:64px 0}.page-hero-copy{max-width:760px}.hero-photo{height:620px}.proof-grid{grid-template-columns:1fr 1fr}.proof-grid>div:nth-child(3){border-left:0}.proof-grid>div:first-child,.proof-grid>div:nth-child(3){padding-left:0}.editorial-grid,.split-feature,.image-quote-grid,.split-note,.digital-price-grid,.inclusion-grid,.map-grid,.contact-layout,.faq-layout,.faq-directory .faq-layout,.process-layout{gap:48px}.feature-photo,.digital-price-grid figure{height:580px}.service-links a{grid-template-columns:54px minmax(170px,.8fr) 1fr}.review-wall{grid-template-columns:1fr 1fr}.review-card-wide{grid-row:auto;min-height:310px}.frame-grid{grid-template-columns:1fr 1fr}.frame-card:last-child{grid-column:1/-1;max-width:50%}.option-note{grid-template-columns:1fr 1fr}.option-note p{grid-column:1/-1}.faq-aside,.contact-details{position:static}.package-heading{grid-template-columns:1fr;gap:24px}.newborn-package-grid{grid-template-columns:1fr}.package-card.featured{margin-top:26px}.two-package-grid{max-width:none}.pricing-note-inner{grid-template-columns:1fr}.offer-hero{background:var(--mist)}.offer-gallery{grid-template-columns:repeat(3,1fr)}.offer-gallery figure:nth-child(4){grid-row:auto}.contact-layout{grid-template-columns:1fr}.contact-details{display:grid;grid-template-columns:1fr 1fr;column-gap:40px}.contact-details>.eyebrow,.contact-details>h2,.contact-details>.contact-region,.contact-details>.contact-social-links{grid-column:1/-1}}
        @media (max-width:680px){.wrap,.header-inner{width:min(calc(100% - 32px),var(--max))}.site-header{height:68px}.mobile-nav{top:68px}.brand,.brand img{width:145px;min-width:145px}.brand img{height:52px}h1{font-size:clamp(40px,12vw,54px)}h2{font-size:clamp(32px,9vw,44px)}.page-hero{padding:48px 0}.hero-photo,.quote-portrait img,.pricing-hero-photo,.offer-hero-image{height:480px}.hero-actions{align-items:stretch;flex-direction:column}.hero-actions .button{width:100%}.proof-grid{grid-template-columns:1fr}.proof-grid>div{min-height:100px;padding:22px 0!important;border-left:0;border-top:1px solid var(--line)}.proof-grid>div:first-child{border-top:0}.section{padding:76px 0}.editorial-grid,.split-feature,.image-quote-grid,.split-note,.digital-price-grid,.inclusion-grid,.map-grid,.contact-layout,.faq-layout,.faq-directory .faq-layout,.process-layout{gap:36px}.feature-photo,.image-quote-grid figure,.split-note figure,.digital-price-grid figure{height:450px}.service-links a{grid-template-columns:40px 1fr;gap:15px}.service-links small{grid-column:2}.compact-cta{padding-bottom:55px}.compact-cta-inner{min-height:0;padding:34px 24px;align-items:stretch;flex-direction:column}.compact-cta .button{width:100%}.quote-portrait blockquote{margin:-40px 14px 0;font-size:17px}.review-wall{grid-template-columns:1fr}.review-card,.review-card-wide{min-height:0}.frame-grid{grid-template-columns:1fr}.frame-card:last-child{grid-column:auto;max-width:none}.option-note{grid-template-columns:1fr}.option-note p{grid-column:auto}.process-list li{grid-template-columns:38px 1fr}.accordion summary{min-height:70px;padding-right:38px;font-size:15px}.accordion details p{margin-right:35px}.two-package-grid{grid-template-columns:1fr}.package-card.featured{margin-top:20px}.mini-prices{grid-template-columns:1fr}.pricing-note-inner{padding:32px 24px;gap:25px}.pricing-note-inner .button{width:100%}.offer-hero-prices{flex-direction:column;gap:14px}.offer-hero-prices span{max-width:none}.offer-steps{grid-template-columns:1fr}.offer-gallery{grid-template-columns:1fr 1fr;grid-auto-rows:220px}.offer-gallery figure:nth-child(1){grid-row:span 1}.offer-gallery figure:nth-child(3){grid-row:span 2}.offer-card .button{width:100%}.contact-details{display:block}.field-row{grid-template-columns:1fr}.enquiry-panel{padding:30px 20px}.map-grid{padding:28px 20px}.studio-map{min-height:350px}.footer-main{grid-template-columns:1fr;gap:42px}.footer-actions{align-items:flex-start}.footer-links{gap:18px}.footer-bottom{align-items:flex-start;flex-direction:column}.to-top{right:16px;bottom:16px}}
        @media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js .reveal{opacity:1;transform:none;transition:none}.button,.button-link,.to-top{transition:none}}
        .slv2-page h1,
        .slv2-page h2,
        .slv2-page h3 {
            font-family: "Newsreader", Georgia, "Times New Roman", serif;
        }
        .service-links a {
            transition: background .25s ease;
        }
        .service-links a:hover {
            padding-inline: 0;
        }
        .frame-card img {
            width: 100%;
            height: auto;
            aspect-ratio: auto;
            object-fit: contain;
            background: #fff;
        }
        .studio-map-panel {
            overflow: hidden;
            border: 1px solid rgba(64, 84, 77, .22);
            border-radius: 14px;
            background: #fff;
        }
        .studio-map-panel .studio-map {
            width: 100%;
            height: 420px;
            min-height: 420px;
            display: block;
            border: 0;
            border-radius: 0;
        }
        .studio-map-link {
            min-height: 54px;
            padding: 0 20px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 16px;
            border-top: 1px solid var(--line);
            color: var(--eucalyptus-deep);
            font-size: 13px;
            font-weight: 600;
            text-decoration: none;
        }
        .studio-map-link:hover {
            background: var(--mist);
        }
        .policy-intro {
            max-width: 560px;
            margin: 28px 0 0;
            color: var(--muted);
        }
        .booking-policy-list {
            border-top: 1px solid var(--line);
        }
        .booking-policy-item {
            padding: 30px 0;
            display: grid;
            grid-template-columns: minmax(150px, .36fr) minmax(0, 1fr);
            gap: clamp(24px, 4vw, 54px);
            border-bottom: 1px solid var(--line);
        }
        .booking-policy-item h3 {
            color: var(--eucalyptus-deep);
            font-size: 22px;
        }
        .booking-policy-item p {
            margin: 0;
            color: var(--muted);
            font-size: 15px;
        }
        .studio-map-card {
            min-height: 420px;
            padding: 48px;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            border: 1px solid rgba(64, 84, 77, .22);
            border-radius: 14px;
            background: rgba(255, 255, 255, .45);
            color: var(--eucalyptus-deep);
            text-align: center;
            text-decoration: none;
            transition: background .25s ease, transform .25s ease;
        }
        .studio-map-card:hover {
            background: rgba(255, 255, 255, .72);
            transform: translateY(-3px);
        }
        .studio-map-card svg {
            width: 68px;
            height: 68px;
            margin-bottom: 30px;
        }
        .studio-map-card span {
            color: var(--muted);
            font-size: 13px;
            letter-spacing: .05em;
            text-transform: uppercase;
        }
        .studio-map-card strong {
            margin-top: 8px;
            font-size: 24px;
            font-weight: 400;
        }
        @media (max-width: 680px) {
            .booking-policy-item {
                grid-template-columns: 1fr;
                gap: 12px;
            }
            .studio-map-panel .studio-map {
                height: 340px;
                min-height: 340px;
            }
            .studio-map-card {
                min-height: 320px;
                padding: 34px 20px;
            }
        }
        @media (max-width: 1180px) {
            .site-header {
                -webkit-backdrop-filter: none;
                backdrop-filter: none;
            }
        }

        .process-note {
            max-width: 760px;
            margin: 26px 0 0;
            padding: 22px 24px;
            border-left: 2px solid var(--eucalyptus);
            background: var(--mist);
            color: var(--muted);
            font-size: 14px;
        }

        .package-choice-guide {
            margin-top: 30px;
            padding-top: 24px;
            border-top: 1px solid rgba(64, 84, 77, .2);
        }
        .package-choice-title {
            margin: 0 0 10px;
            color: var(--ink);
            font-size: 16px;
            font-weight: 600;
        }
        .package-choice-guide ul {
            margin: 0;
            padding: 0;
            list-style: none;
        }
        .package-choice-guide li {
            min-height: 42px;
            padding: 7px 0;
            display: grid;
            grid-template-columns: minmax(0, 1fr) auto;
            gap: 18px;
            align-items: center;
            border-bottom: 1px solid rgba(64, 84, 77, .14);
        }
        .package-choice-guide li > span {
            color: var(--muted);
            font-size: 13px;
            line-height: 1.45;
        }
        .package-choice-guide a {
            min-height: 32px;
            display: inline-flex;
            align-items: center;
            gap: 8px;
            color: var(--eucalyptus-deep);
            font-size: 13px;
            font-weight: 600;
            text-decoration: none;
            white-space: nowrap;
        }
        .package-choice-guide a::before {
            content: "→";
            font-weight: 400;
        }
        .package-heading-subtitle {
            max-width: 680px;
            margin: 18px 0 0;
            color: var(--muted);
            font-size: clamp(18px, 1.7vw, 24px);
            line-height: 1.45;
        }
        .digital-price-copy .digital-price-subtitle {
            margin: 24px 0 0;
            color: var(--ink);
            font-family: "Newsreader", Georgia, "Times New Roman", serif;
            font-size: clamp(22px, 2.2vw, 30px);
            font-weight: 300;
            letter-spacing: -.02em;
            line-height: 1.25;
        }
        .digital-price-copy .digital-price-subtitle + p {
            margin-top: 22px;
        }
        #newborn-essential,
        #newborn-standard,
        #newborn-premium,
        #baby-packages {
            scroll-margin-top: 100px;
        }

        @media (max-width: 680px) {
            .package-choice-guide li {
                padding: 10px 0;
                grid-template-columns: 1fr;
                gap: 2px;
            }
            .package-choice-guide a {
                min-height: 30px;
            }
            .pricing-hero .page-hero-copy > .button {
                width: 100%;
            }
            .process-note {
                padding: 20px;
            }
        }

        /* The legacy parent theme hides summary elements for its own widgets. */
        body.sweetlife-v2-native .accordion details,
        body.sweetlife-v2-native .accordion summary,
        body.sweetlife-v2-native .accordion details p {
            visibility: visible !important;
        }

        /*
         * Native-theme parity guard. The parent Photography theme forces
         * Montserrat and uppercase text on headings and buttons. V2 subpages
         * use Manrope for body copy and Newsreader for display text.
         */
        body.sweetlife-v2-native,
        body.sweetlife-v2-native input,
        body.sweetlife-v2-native select,
        body.sweetlife-v2-native textarea,
        body.sweetlife-v2-native button {
            font-family: "Manrope", "Avenir Next", "Segoe UI", sans-serif !important;
        }
        body.sweetlife-v2-native h1,
        body.sweetlife-v2-native h2,
        body.sweetlife-v2-native h3,
        body.sweetlife-v2-native h4,
        body.sweetlife-v2-native h5,
        body.sweetlife-v2-native h6 {
            font-family: "Newsreader", Georgia, "Times New Roman", serif !important;
            text-transform: none !important;
        }
        body.sweetlife-v2-native .button,
        body.sweetlife-v2-native .button-link {
            font-family: "Manrope", "Avenir Next", "Segoe UI", sans-serif !important;
            letter-spacing: 0 !important;
            text-transform: none !important;
        }

        /*
         * Native V2 heroes must paint without waiting for the footer script.
         * Reveal motion remains enabled for content below each page hero.
         */
        .js body.sweetlife-v2-native .page-hero .reveal {
            opacity: 1;
            transform: none;
            transition: none;
        }
