@font-face{font-family:Fraunces;src:url('assets/Fraunces.ttf') format('truetype');font-weight:100 900;font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:#392653;background:#fcfaff;font:17px/1.65 'Segoe UI',sans-serif}a{color:inherit}button{font:inherit;cursor:pointer}img{max-width:100%;display:block}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #56329a;outline-offset:5px}.preview{text-align:center;font-size:12px;letter-spacing:.1em;background:#56329a;color:white;padding:7px 16px}.skip{position:absolute;left:10px;top:-100px;background:white;padding:12px;z-index:10}.skip:focus{top:10px}header{max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:26px 6%}.logo{width:180px}nav{display:flex;align-items:center;gap:30px}nav a{text-decoration:none;font-size:15px}.nav-contact{border-bottom:1px solid #f27478;padding-bottom:5px}.menu{display:none}.hero{max-width:1440px;margin:auto;position:relative;display:grid;grid-template-columns:1.05fr 1fr;gap:6%;padding:35px 6% 75px;align-items:center}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.13em;color:#56329a}.hero h1{font:500 clamp(48px,5.8vw,84px)/1.08 Fraunces,Georgia,serif;letter-spacing:-.045em;margin:22px 0 28px;font-variation-settings:'SOFT' 65,'WONK' 1}.hero h1 em{font-style:normal;position:relative;z-index:0}.hero h1 em:after{content:'';position:absolute;bottom:3px;left:0;right:0;height:12px;background:#f27478;z-index:-1}.intro{max-width:445px;font-size:19px;line-height:1.7}.button{display:inline-flex;gap:32px;align-items:center;justify-content:space-between;background:#56329a;color:white;border:0;padding:15px 25px;text-decoration:none;border-radius:4px;font-size:16px}.button:hover{background:#402373}.quiet{font-size:14px;color:#705f85;margin-top:24px}.hero-photo{margin:0;position:relative;padding:0 18px 20px 0}.hero-photo:after{content:'';position:absolute;inset:30px 0 0 30px;background:#f27478;border-radius:170px 170px 6px 6px;z-index:-1}.hero-photo>img,.hero-photo video{width:100%;height:535px;object-fit:cover;object-position:center 33%;border-radius:170px 170px 6px 6px}.hero-photo figcaption{position:absolute;bottom:45px;left:24px;right:40px;color:white;font-size:14px;text-shadow:0 1px 5px #000;background:#171026b3;padding:9px 14px;backdrop-filter:blur(4px)}.hero-index{position:absolute;right:6%;bottom:20px;font-size:11px;letter-spacing:.15em;color:#705f85}.section{padding:88px 6%;max-width:1440px;margin:auto}h2{font:500 clamp(35px,3.5vw,53px)/1.16 Fraunces,Georgia,serif;letter-spacing:-.025em;margin:12px 0 25px}h3{font:500 30px/1.15 Fraunces,Georgia,serif;margin:15px 0}p{margin:0 0 20px}.story{background:#f4f0ff}.story .section{display:grid;grid-template-columns:1fr 1.1fr;gap:10%;align-items:center}.story-icon{width:72px;margin-bottom:25px}.story p:last-child{margin:0}.section-top{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:30px}.section-top p{max-width:390px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.service{border-top:2px solid #a28bd4;padding-top:24px}.number{font-size:14px;color:#56329a}.meta{font-size:14px;color:#705f85}.text-link{background:none;border:0;border-bottom:1px solid #56329a;color:#56329a;padding:0 0 6px;font-size:16px;text-align:left;text-decoration:none}.shared{margin-top:45px;background:#f4f0ff;padding:23px 28px;font-size:16px}.products-wrap{background:#f4f0ff}.products{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.product img{width:100%;height:360px;object-fit:cover;border-radius:90px 90px 3px 3px}.product:nth-child(2){padding-top:48px}.product:nth-child(3){padding-top:20px}.product p{max-width:320px}.product .image-note{font-size:12px;margin:9px 0;color:#705f85}.photo-note{font-size:14px;margin-top:35px;max-width:650px}.morning{background:#56329a;color:white}.morning .section{display:grid;grid-template-columns:1fr 1.3fr;gap:9%;align-items:center}.morning .eyebrow{color:#e0d4f7}.morning h2{font-size:clamp(38px,4.5vw,65px)}.morning .text-link{color:white;border-color:#f27478}.coral-dot{display:inline-block;width:16px;height:16px;background:#f27478;border-radius:50%;margin-right:9px}.contact{text-align:center;max-width:770px}.contact h2{font-size:clamp(40px,4.3vw,60px)}.contact p{max-width:530px;margin:0 auto 24px}footer{max-width:1440px;margin:auto;padding:30px 6%;border-top:1px solid #ded5ed;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:13px}footer .logo{width:130px}dialog{max-width:520px;width:calc(100% - 36px);border:0;border-radius:10px;padding:35px;color:#392653;background:#fcfaff}dialog::backdrop{background:#20133099}dialog h2{font-size:31px}dialog blockquote{margin:20px 0;background:#f4f0ff;padding:20px}dialog .close{float:right;border:0;background:none;color:#56329a;font-size:25px}dialog .button{margin-top:10px}.status-tag{display:inline-block;border:1px solid #a28bd4;border-radius:20px;padding:3px 12px;font-size:12px;color:#56329a;margin-bottom:8px}@media(min-width:1500px){.story,.products-wrap,.morning{margin:0 3%;border-radius:8px}}@media(max-width:850px){header{padding:20px 6%;flex-wrap:wrap}.menu{display:block;border:0;background:none;color:#56329a;font-size:15px}nav{display:none;flex-basis:100%;padding:20px 0 5px;flex-wrap:wrap;gap:20px}nav.open{display:flex}.hero{gap:5%;padding-top:25px}.hero h1{font-size:52px}.hero-photo>img{height:470px}.services{gap:22px}.product img{height:290px}.section{padding:65px 6%}.section-top{display:block}}@media(max-width:600px){.logo{width:148px}.preview{font-size:10px}.hero{grid-template-columns:1fr;padding-top:25px;padding-bottom:55px;gap:30px}.hero h1{font-size:56px;max-width:450px}.hero .intro{font-size:18px}.hero-photo{max-width:480px;width:100%}.hero-photo>img{height:420px}.hero-index{bottom:10px}.hero-copy .quiet{margin-bottom:0}.story .section,.morning .section{grid-template-columns:1fr;gap:20px}.services,.products{grid-template-columns:1fr;gap:36px}.service{padding-top:18px}.product:nth-child(n){padding-top:0}.product img{height:380px}.product p{max-width:none}.section{padding:55px 6%}.shared{padding:22px}.morning h2{margin-top:0}footer{align-items:start;flex-direction:column}.section-top{margin-bottom:25px}.section-top h2{margin-bottom:18px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Studio product reconstructions: keep complete products visible. */
.hero-photo>img,.product img{width:100%;height:auto;aspect-ratio:1122/1402;object-fit:contain;background:#f2eff7;object-position:center;border-radius:12px}
.hero-photo:after{border-radius:12px;bottom:55px}
.hero-photo figcaption{position:static;margin:14px 0 0;color:#705f85;font-size:14px;text-shadow:none;background:none;padding:0;backdrop-filter:none}

/* Approved purpose-led opening, September 2026. */
.hero{grid-template-columns:1fr 1.08fr;gap:5%;padding-top:35px;align-items:center}
.hero h1{font-size:clamp(44px,4.8vw,68px);margin-top:0}
.hero .intro{max-width:560px;font-size:18px;line-height:1.7}
.hero-photo{padding:0}.hero-photo:after{display:none}
.hero-photo>img{aspect-ratio:auto;height:auto;border-radius:12px;background:transparent}
.booking-note{max-width:850px;margin:0 0 40px;padding-left:20px;border-left:3px solid #f27478}
.availability{margin-top:35px}.social-contact{margin-top:24px!important}
.status-tag{font-size:14px}.section-top p{max-width:540px}
@media(max-width:850px){.hero{grid-template-columns:1fr;gap:35px}.hero-copy{max-width:700px}.hero-photo{max-width:850px}.hero h1{font-size:clamp(44px,7vw,64px)}}
@media(max-width:600px){.hero .intro{font-size:17px}.hero-photo{max-width:none}.hero h1{font-size:48px}.preview{font-size:12px}}

/* Encounter pages: structure preview before final copy and films. */
.back-link{font-size:15px;text-decoration:none;border-bottom:1px solid #f27478;padding-bottom:4px}
.encounter-page{max-width:1120px;margin:auto;padding:25px 6% 0}
.detail-intro{max-width:790px;margin:0 auto 45px;text-align:center}
.detail-intro h1{font:500 clamp(42px,5vw,66px)/1.12 Fraunces,Georgia,serif;letter-spacing:-.035em;margin:20px 0}
.detail-description{font-size:19px;line-height:1.75}
.video-space{margin:0 0 65px;border-radius:12px;overflow:hidden;background:#f4f0ff}
.video-space img{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}
.video-space figcaption{padding:22px 26px}.video-space strong,.video-space span{display:block}.video-space span{font-size:15px;margin-top:5px;color:#705f85}
.detail-outline{display:grid;grid-template-columns:1fr;gap:0}.detail-outline section{padding:32px 0;border-top:1px solid #ded5ed;display:grid;grid-template-columns:45px 1fr 1fr;gap:25px;align-items:start}
.outline-number{color:#56329a;font-size:14px;padding-top:9px}.detail-outline h2{font-size:30px;margin:0}.draft-copy{margin:0;color:#705f85}
.detail-contact{max-width:700px;text-align:center;margin:55px auto 75px}.detail-contact h2{font-size:40px}
@media(max-width:600px){.detail-header{gap:20px}.back-link{font-size:14px}.detail-intro{text-align:left}.detail-description{font-size:17px}.detail-outline section{grid-template-columns:28px 1fr;gap:14px}.detail-outline .draft-copy{grid-column:2}.video-space figcaption{padding:18px}.detail-contact h2{font-size:34px}}

/* Let the invitation read as a sentence, with the introduction below. */
#encuentros .section-top{display:block;margin-bottom:42px}
#encuentros .section-top h2{max-width:850px;text-wrap:balance}
#encuentros .section-top p{max-width:800px}


/* Two alternatives, individual and group. */
.services{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px}.service h3{max-width:450px}@media(max-width:600px){.services{grid-template-columns:1fr;gap:36px}}

/* Preserve all three information sections without sequence numbers. */
.detail-outline section{grid-template-columns:1fr 1fr}
@media(max-width:600px){.detail-outline section{grid-template-columns:1fr}.detail-outline .draft-copy{grid-column:auto}}


/* Category previews grow into the product selection as photos arrive. */
.catalog-page{max-width:1250px;margin:auto;padding:30px 6% 80px}.catalog-heading h1{font:500 clamp(46px,5vw,68px)/1.1 Fraunces,Georgia,serif;margin:10px 0 22px}.catalog-heading p{max-width:620px;font-size:19px}
.category-links{display:flex;gap:28px;flex-wrap:wrap;padding:15px 0;margin:20px 0;border-bottom:1px solid #ded5ed}.category-links a{text-decoration:none;padding-bottom:7px}.category-links a[aria-current]{border-bottom:3px solid #f27478;color:#56329a;font-weight:600}
.catalog-note{max-width:710px;margin:24px 0 36px}.catalog-item{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:55px;align-items:center;max-width:1000px}.catalog-item img{width:100%;height:auto;max-height:510px;object-fit:contain;background:#f2eff7;border-radius:12px}.catalog-item h2{font-size:36px}.catalog-item .quiet{margin:15px 0 25px;max-width:450px}
@media(max-width:600px){.catalog-item{grid-template-columns:1fr;gap:25px}.catalog-item img{max-height:420px}.catalog-heading p{font-size:17px}.category-links{gap:24px}.catalog-page{padding-top:20px}}

/* Silent motion with the still image as its loading fallback. */
.hero-photo .hero-motion{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:contain;object-position:center;border-radius:12px;opacity:0;pointer-events:none;background:transparent}
.hero-photo .hero-motion.is-playing{opacity:1}
@media(prefers-reduced-motion:reduce){.hero-motion{display:none}}

/* Styled product images and short symbolic descriptions. */
.catalog-grid{display:grid;gap:64px}.catalog-item{padding-bottom:48px;border-bottom:1px solid #ded5ed}.catalog-item img{max-height:480px;aspect-ratio:4/5;object-fit:contain;background:#f4f0ff}.product-meaning{font-size:18px;line-height:1.7;max-width:490px}.catalog-item .quiet{font-size:15px;line-height:1.6;color:#6d607a}.catalog-closing{font:500 26px/1.4 Fraunces,Georgia,serif;margin:50px 0 20px;max-width:650px}.care-note{font-size:14px;max-width:650px}.catalog-item .button{white-space:normal;text-align:left}@media(max-width:600px){.catalog-grid{gap:36px}.catalog-item{padding-bottom:32px}.catalog-item h2{font-size:30px}.product-meaning{font-size:17px}}

/* Expanded collection: all previous entries retained. */
.catalog-search{margin:24px 0 36px;max-width:600px}.catalog-search label{display:block;font-weight:600;margin-bottom:10px}.catalog-search input{font:inherit;width:100%;box-sizing:border-box;border:1px solid #b6a3d3;border-radius:8px;padding:14px 16px;background:#fff;color:#392653}.catalog-search input:focus{outline:3px solid #c9b7ef;outline-offset:2px}.catalog-search p{font-size:14px;color:#6d607a;margin:10px 0}.catalog-item[hidden],#no-products[hidden]{display:none!important}
@media(min-width:900px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 42px}.catalog-item{display:flex;flex-direction:column;align-items:stretch;gap:24px;max-width:none;padding-bottom:36px}.catalog-item img{height:auto;max-height:none;aspect-ratio:4/5;object-fit:contain}.catalog-item>div{display:flex;flex-direction:column;flex:1}.catalog-item h2{font-size:30px;line-height:1.2}.catalog-item .button{align-self:flex-start;margin-top:auto}.catalog-item .product-meaning{font-size:17px}.catalog-item .quiet{font-size:14px}}

/* Clear section transitions and a readable path through the collection. */
#historia,#encuentros,#cultivar,#contacto{scroll-margin-top:20px}
#encuentros{border-top:7px solid #e8d6d8}
#cultivar{border-top:7px solid #bca5d7}
#contacto{border-top:7px solid #f0d1c4}
.social-invite{margin:0 0 36px;max-width:760px;color:#564366}
.social-invite a{color:#56329a;text-underline-offset:4px;white-space:nowrap}
.products{margin-top:42px}
.product h3{margin:0 0 16px}
.product img{margin-bottom:20px}
.product-contact{margin:52px auto 0;max-width:650px;text-align:center;padding-top:28px;border-top:1px solid #bca5d7}
.product-contact p{font:500 25px/1.4 Fraunces,Georgia,serif}
.video-space{background:transparent}
@media(max-width:600px){
  #historia .section,#encuentros,#cultivar .section,#contacto{padding-top:70px;padding-bottom:70px}
  #encuentros .section-top{margin-bottom:30px}
  #cultivar .section-top{margin-bottom:0}
  #cultivar .section-top p{max-width:none;margin-bottom:0}
  .products{margin-top:48px;gap:54px}
  .product{padding-top:12px;border-top:1px solid #bca5d7}
  .product h3{font-size:34px;margin-bottom:20px}
  .product-contact{margin-top:58px}
  .product-contact p{font-size:24px}
}
