.cca-root{--ivory:#FAF6EF;--blush:#F3DFDC;--dusty:#D9A5A0;--rose:#B76E79;--forest:#1E4634;--black:#141414;font-family:'Jost',system-ui,-apple-system,sans-serif;color:var(--black);line-height:1.6;background:var(--ivory);}.cca-root *{box-sizing:border-box;}.cca-root img{max-width:100%;}.cca-wrap{max-width:1280px;margin:0 auto;padding-left:48px;padding-right:48px;}.cca-narrow{max-width:880px;}.cca-center{text-align:center;}.cca-ivory{background:var(--ivory);}.cca-blush{background:var(--blush);}.cca-section{padding:104px 0;}.cca-band{padding:88px 0;}.cca-band-blush{background:var(--blush);}.cca-forest{background:var(--forest);}.cca-ivory-text{color:var(--ivory);}.cca-eyebrow{font-size:.92rem;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--rose);margin:0 0 18px;}.cca-h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:clamp(2.1rem,4vw,3.2rem);line-height:1.12;margin:0 0 16px;color:var(--black);}.cca-h3{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:1.7rem;margin:0 0 20px;color:var(--black);}.cca-sub{font-size:1.22rem;color:#3f3f3f;margin:24px 0 0;}.cca-btnrow{display:flex;flex-wrap:wrap;gap:16px;margin-top:36px;}.cca-center-row{justify-content:center;}.cca-btn{display:inline-block;font-family:'Jost',sans-serif;font-weight:500;font-size:1.05rem;letter-spacing:.02em;padding:16px 38px;border-radius:999px;text-decoration:none;line-height:1.3;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,color .2s ease;}.cca-btn-rose{background:var(--rose);color:#fff;}.cca-btn-rose:hover{background:#a35f6a;color:#fff;transform:translateY(-2px);box-shadow:0 12px 26px rgba(183,110,121,.30);}.cca-btn-outline{border:2px solid var(--forest);color:var(--forest);background:transparent;}.cca-btn-outline:hover{background:var(--forest);color:var(--ivory);transform:translateY(-2px);}.cca-hero{background:var(--ivory);padding:60px 0 110px;overflow:hidden;}.cca-hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:72px;align-items:center;}.cca-lockup{height:60px;width:auto;margin-bottom:34px;}.cca-h1{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:clamp(2.9rem,5.6vw,5rem);line-height:1.06;letter-spacing:-.01em;color:var(--black);margin:0;}.cca-h1-line{display:block;}.cca-h1 em{font-style:italic;color:var(--rose);}.cca-hero .cca-sub{max-width:36ch;}.cca-arch{position:relative;max-width:520px;margin-left:auto;}.cca-arch-photo{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:999px 999px 28px 28px;box-shadow:0 30px 60px rgba(30,70,52,.16);}.cca-arch-logo{position:absolute;left:-84px;top:54px;width:140px;height:auto;filter:drop-shadow(0 14px 26px rgba(30,70,52,.20));}.cca-mission{font-family:'Playfair Display',Georgia,serif;font-size:clamp(1.6rem,3.2vw,2.6rem);font-weight:500;color:var(--forest);margin:0;line-height:1.4;}.cca-mission em{font-style:italic;color:var(--rose);}.cca-syl-list{margin:44px 0 8px;}.cca-syl-list p{font-family:'Playfair Display',Georgia,serif;font-size:clamp(1.35rem,2.6vw,1.95rem);line-height:1.5;margin:0 0 22px;color:var(--black);}.cca-close{font-family:'Playfair Display',Georgia,serif;font-size:clamp(1.45rem,2.8vw,2.1rem);margin:52px 0 0;color:var(--black);}.cca-script{font-family:'Alex Brush',cursive;font-weight:400;font-size:1.55em;color:var(--rose);}.cca-rooms{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;margin-top:60px;}.cca-room{background:#fff;border:1px solid #f3e4dc;border-radius:22px;padding:38px 28px;display:flex;flex-direction:column;box-shadow:0 18px 40px rgba(30,70,52,.07);}.cca-room-no{font-family:'Alex Brush',cursive;font-size:1.75rem;color:var(--rose);margin:0 0 6px;line-height:1.2;}.cca-room h3{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:1.42rem;margin:0 0 12px;color:var(--black);line-height:1.25;}.cca-room p{font-size:1rem;color:#4c4c4c;margin:0 0 22px;flex:1;}.cca-room a{color:var(--rose);font-weight:600;text-decoration:none;border-bottom:2px solid var(--dusty);padding-bottom:3px;align-self:flex-start;}.cca-room a:hover{color:var(--forest);border-color:var(--forest);}.cca-panels{display:grid;grid-template-columns:1fr 1fr;gap:56px;margin:60px auto 0;max-width:1060px;}.cca-panel{background:#fff;border-radius:26px;overflow:hidden;box-shadow:0 24px 60px rgba(30,70,52,.10);display:flex;flex-direction:column;}.cca-panel img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;}.cca-panel-body{padding:42px 40px 50px;display:flex;flex-direction:column;flex:1;text-align:center;align-items:center;}.cca-panel h3{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:1.9rem;margin:0 0 12px;color:var(--black);}.cca-small{color:#555;margin:0 0 30px;flex:1;font-size:1.05rem;}.cca-forest .cca-sub{color:rgba(250,246,239,.88);}.cca-quiz-card{background:var(--ivory);color:var(--black);border-radius:22px;padding:60px 48px;margin-top:48px;min-height:230px;display:flex;align-items:center;justify-content:center;font-size:1.15rem;box-shadow:0 24px 60px rgba(0,0,0,.18);}.cca-journey-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;margin-top:60px;align-items:start;}.cca-video{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;border-radius:20px;box-shadow:0 24px 50px rgba(30,70,52,.12);background:#000;}.cca-video iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:0;}.cca-insta{display:flex;flex-direction:column;align-items:center;text-align:center;background:#fff;border:1px solid #f3e4dc;border-radius:20px;padding:60px 40px;text-decoration:none;color:var(--black);box-shadow:0 24px 50px rgba(30,70,52,.10);height:100%;justify-content:center;}.cca-insta:hover{box-shadow:0 30px 60px rgba(183,110,121,.18);}.cca-insta-handle{font-family:'Playfair Display',Georgia,serif;font-size:1.65rem;margin:18px 0 10px;color:var(--black);}.cca-insta-text{color:#555;margin:0 0 30px;max-width:32ch;}.cca-invite-sec{padding-top:0;}.cca-invite-card{background:#fff;border-radius:26px;padding:68px 76px;box-shadow:0 24px 60px rgba(30,70,52,.10);}.cca-invite{font-size:1.18rem;line-height:1.9;margin:0;color:#363636;}.cca-invite strong{font-family:'Playfair Display',Georgia,serif;font-size:1.45em;font-weight:500;display:block;margin-bottom:14px;color:var(--black);line-height:1.3;}.cca-invite a{color:var(--rose);font-weight:600;text-decoration:underline;text-decoration-color:var(--dusty);text-underline-offset:3px;}.cca-invite a:hover{color:var(--forest);text-decoration-color:var(--forest);}@media (max-width:1020px){.cca-rooms{grid-template-columns:repeat(2,1fr);}.cca-hero-grid{grid-template-columns:1fr;gap:68px;}.cca-arch{margin:0 auto;}.cca-journey-grid{grid-template-columns:1fr;gap:60px;}.cca-panels{grid-template-columns:1fr;max-width:580px;}}@media (max-width:640px){.cca-wrap{padding-left:24px;padding-right:24px;}.cca-section{padding:76px 0;}.cca-band{padding:68px 0;}.cca-hero{padding:44px 0 80px;}.cca-rooms{grid-template-columns:1fr;}.cca-arch-logo{width:104px;left:-38px;top:30px;}.cca-invite-card{padding:44px 30px;}.cca-btnrow .cca-btn{width:100%;text-align:center;}.cca-lockup{height:52px;}}
.cca-root .cca-quiz-card{margin-top:22px;text-align:left}
.cca-root .cca-quiz-progress{letter-spacing:.14em;text-transform:uppercase;font-size:.75rem;color:#D9A5A0;font-weight:600;margin:0 0 10px;text-align:center}
.cca-root .cca-quiz-q{font-family:'Playfair Display',Georgia,serif;font-weight:400;font-size:1.5rem;line-height:1.25;color:#FAF6EF;margin:0 0 18px;text-align:center}
.cca-root .cca-quiz-opts{display:flex;flex-direction:column;gap:10px}
.cca-root .cca-quiz-opt{background:transparent;border:1px solid rgba(250,246,239,.55);color:#FAF6EF;border-radius:999px;padding:13px 22px;font-family:'Jost',sans-serif;font-size:1rem;font-weight:300;cursor:pointer;text-align:center}
.cca-root .cca-quiz-opt:hover{background:rgba(250,246,239,.12);border-color:#D9A5A0}
.cca-root .cca-quiz-t{color:#FAF6EF;font-weight:300;text-align:center;margin:0 0 14px}
.cca-root .cca-quiz-btn{display:block;width:fit-content;margin:20px auto 6px;background:#B76E79;color:#fff;text-decoration:none;border-radius:999px;padding:13px 28px;font-weight:500}
.cca-root .cca-quiz-restart{color:#D9A5A0;font-size:.92rem}

/* === Owner fixes Oct 16: quiz readability + hovers === */
.cca-root .cca-forest{background:#24513B !important}
.cca-root .cca-quiz-card .cca-quiz-q{color:#FAF6EF !important}
.cca-root .cca-quiz-card .cca-quiz-t{color:#FAF6EF !important}
.cca-root .cca-quiz-card .cca-quiz-progress{color:#F3DFDC !important}
.cca-root .cca-quiz-card .cca-quiz-opt{border-color:#F3DFDC !important;color:#FAF6EF !important;background:transparent}
.cca-root .cca-quiz-card .cca-quiz-opt:hover{background:rgba(243,223,220,.18) !important;border-color:#F3DFDC !important}
.cca-root .cca-quiz-card .cca-quiz-btn{background:#B76E79 !important;color:#fff !important}
.cca-root .cca-quiz-card .cca-quiz-btn:hover{background:#9E5561 !important;color:#fff !important}
.cca-root .cca-quiz-card .cca-quiz-restart{color:#F3DFDC !important}
.cca-root .cca-btn{transition:background .18s ease,color .18s ease,border-color .18s ease}
.cca-root .cca-btn-rose:hover{background:#9E5561 !important;color:#fff !important}
.cca-root .cca-btn-outline:hover{background:#F3DFDC !important;color:#141414 !important;border-color:#D9A5A0}
.cca-root .cca-hero .cca-btn-rose{color:#141414 !important}
.cca-root .cca-hero .cca-btn-rose:hover{background:#F3DFDC !important;color:#141414 !important}
.cca-root .cca-band .cca-btn-rose:hover{background:#FFFFFF !important;color:#141414 !important}

/* === Logo badge fix Oct 16: rose logo seated in an ivory medallion, lower-left of the arch (matches About) === */
.cca-root .cca-arch-logo{left:-24px !important;top:auto !important;bottom:34px;width:140px !important;height:140px !important;object-fit:contain;background:#FAF6EF;border-radius:50%;padding:8px;box-shadow:0 14px 34px rgba(20,20,20,.16);filter:none !important}
@media(max-width:860px){.cca-root .cca-arch-logo{left:12px;width:104px !important;height:104px !important}}

/* === Homepage quiz band heading fix Oct 16 (v1.4.0): band headings + subline ivory on forest === */
.cca-root .cca-forest h2,.cca-root .cca-forest .cca-sub,.cca-root .cca-forest p{color:#FAF6EF !important}
.cca-root .cca-forest .cca-script{color:#F3DFDC !important}
.cca-root .cca-quiz-card{background:transparent !important}

/* === Hero widening Oct 16 (v1.5.0): owner saw too much negative space on desktop === */
.cca-root .cca-hero .cca-wrap{max-width:1480px}
.cca-root .cca-hero-grid{grid-template-columns:.95fr 1.05fr;gap:84px}
.cca-root .cca-arch{max-width:640px}
.cca-root .cca-arch-photo{aspect-ratio:6/6.4}
.cca-root .cca-hero{padding-bottom:88px}
@media(max-width:1020px){.cca-root .cca-arch{max-width:560px}}

/* === v1.6.0: hero button pair, curved arrow, doors (owner notes Oct 16) === */
.cca-root .cca-hero .cca-btn-outline{border-color:#D9A5A0 !important;color:#141414 !important;background:transparent !important}
.cca-root .cca-hero .cca-btn-outline:hover{background:#F3DFDC !important;color:#141414 !important;border-color:#D9A5A0 !important}
.cca-root .cca-arrow{display:flex;justify-content:center;margin:-56px auto -64px;padding-left:17%;position:relative;z-index:3;pointer-events:none}
.cca-root .cca-arrow svg{width:200px;height:auto;animation:ccaBob 3.4s ease-in-out infinite alternate}
@keyframes ccaBob{from{transform:translateY(0)}to{transform:translateY(7px)}}
.cca-root .cca-room{border-radius:999px 999px 16px 16px !important;padding:54px 28px 34px !important;position:relative;border-bottom:5px solid #F3DFDC !important;transition:transform .25s ease,box-shadow .25s ease}
.cca-root .cca-room:nth-child(even){background:#FDF4F1}
.cca-root .cca-room::after{content:"";position:absolute;inset:12px;border:1px solid rgba(217,165,160,.55);border-radius:999px 999px 10px 10px;pointer-events:none}
.cca-root .cca-room::before{content:"";position:absolute;right:17px;top:57%;width:11px;height:11px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#EFC3C6,#B76E79);box-shadow:0 2px 6px rgba(183,110,121,.45);z-index:2}
.cca-root .cca-room h3,.cca-root .cca-room p{padding-right:22px}
.cca-root .cca-room:hover{transform:translateY(-5px);box-shadow:0 26px 48px rgba(183,110,121,.16)}
@media(max-width:640px){.cca-root .cca-arrow{padding-left:0;margin-top:-40px}.cca-root .cca-arrow svg{width:150px}}

/* === v1.7.0: panel buttons (owner spec) + quiz result un-squished with inner boxes === */
.cca-root .cca-panel .cca-btn-rose{background:#F3DFDC !important;color:#141414 !important}
.cca-root .cca-panel .cca-btn-rose:hover{background:#9E5561 !important;color:#ffffff !important}
.cca-root .cca-quiz-card{display:block !important;padding:46px 42px !important;text-align:center}
.cca-root .cca-quiz-card .cca-quiz-t{background:rgba(250,246,239,.09);border:1px solid rgba(243,223,220,.38);border-radius:16px;padding:20px 24px;max-width:64ch;margin:0 auto 16px !important;text-align:center}
.cca-root .cca-quiz-card .cca-quiz-btn{margin:26px auto 10px !important}
.cca-root .cca-quiz-card .cca-quiz-restart{display:block;margin-top:20px;text-align:center}

/* === v1.8.0: arrow removed; doors stand on a blush wall; book section back to ivory === */
.cca-root .cca-rooms-sec{background:#F3DFDC}
.cca-root .cca-room{background:#ffffff !important;border-bottom:5px solid #D9A5A0 !important}
.cca-root .cca-room:nth-child(even){background:#FFFBF6 !important}

/* === v1.9.0: doors text centered, calls to action aligned at the door bottoms === */
.cca-root .cca-room{text-align:center !important;align-items:center}
.cca-root .cca-room .cca-room-no{flex:0 0 auto}
.cca-root .cca-room h3{padding-right:0}
.cca-root .cca-room p{padding-right:12px;padding-left:12px}
.cca-root .cca-room p:last-child{flex:0 0 auto;margin-bottom:0}
.cca-root .cca-room a{align-self:center}

/* === v1.10.0: peony garland divider + mobile polish === */
.cca-root .cca-garland{position:relative;height:0;line-height:0;z-index:6}
.cca-root .cca-garland img{position:absolute;left:50%;top:0;transform:translate(-50%,-50%);width:min(1680px,100vw);height:auto;display:block;pointer-events:none}
@media(max-width:640px){
.cca-root .cca-garland img{width:600px}
.cca-root .cca-quiz-card{padding:34px 20px !important}
.cca-root .cca-hero-grid{gap:44px}
.cca-root .cca-arch{max-width:340px}
.cca-root .cca-panels{gap:36px}
.cca-root .cca-room{padding:48px 20px 30px !important}
.cca-root .cca-close{margin-top:38px}
.cca-root .cca-btnrow .cca-btn{padding:15px 22px}
}

/* === v1.11.0: mobile repair pass (from the owner's phone photos) === */
.cca-root{overflow-x:hidden}
.cca-root .cca-insta img{border-radius:50%}
@media(max-width:640px){
.cca-root .cca-hero-grid{grid-template-columns:1fr !important;gap:40px !important}
.cca-root .cca-h1{font-size:2.6rem !important;line-height:1.12}
.cca-root .cca-arch{max-width:300px !important;margin:6px auto 0 !important}
.cca-root .cca-arch-logo{width:86px !important;height:86px !important;left:-12px !important;top:auto !important;bottom:22px}
.cca-root .cca-btnrow{gap:12px}
.cca-root .cca-btnrow .cca-btn{width:100% !important;padding:14px 20px !important;font-size:1rem !important}
.cca-root .cca-quiz-card .cca-quiz-q{font-size:1.55rem !important}
.cca-root .cca-quiz-opt{white-space:normal !important;text-align:center;line-height:1.45;padding:14px 18px !important}
.cca-root .cca-insta{padding:38px 24px}
.cca-root .cca-insta-handle{font-size:1.35rem}
.cca-root .cca-journey-grid{gap:40px}
}

/* === scroll reveal (v1.12.0): content is visible by default; JS arms the gentle slide/fade === */
.cc-rv{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .8s cubic-bezier(.22,.61,.36,1)}
.cc-rv-in{opacity:1 !important;transform:none !important}
@media (prefers-reduced-motion: reduce){.cc-rv{opacity:1;transform:none;transition:none}}

/* === v1.13.0: garland pasted on the seams (top + bottom of the rooms), round medallion, hero lockup off where the header carries the logo === */
@media(max-width:1020px){.cca-root .cca-lockup{display:none}}
