
:root{--navy:#052d61;--blue:#0aa4ee;--ink:#102a4c;--light:#f4f9fd;--line:#dbe8f2;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:white;line-height:1.55}
a{text-decoration:none;color:inherit}.container{width:min(1180px,92%);margin:auto}
.top{background:white}.topbar{display:flex;align-items:center;gap:24px;padding:15px 0}.brand{display:flex;align-items:center;gap:16px;min-width:420px}.brand img{width:105px;height:105px;object-fit:contain}.brand h1{font-size:44px;line-height:.9;margin:0;color:#06265a}.brand h1 span{color:#149fe4}.brand p{margin:8px 0 0;font-weight:700}.contact{margin-left:auto;font-size:14px}.contact b{display:block;color:#06265a}.lang{font-weight:700;color:#0a63a8}
nav{background:linear-gradient(90deg,#052b5b,#08669e);color:white;position:sticky;top:0;z-index:10}nav .container{display:flex;align-items:center;gap:2px;overflow:auto}nav a{padding:17px 14px;white-space:nowrap;font-size:13px;font-weight:700}nav a:hover{background:#0aa4ee}
.hero{min-height:520px;background:linear-gradient(90deg,rgba(0,31,69,.95),rgba(0,48,93,.62),rgba(0,0,0,.12)),url('maquette-reference.png') center/cover;display:flex;align-items:center;color:white}.hero .copy{max-width:700px;padding:70px 0}.eyebrow{text-transform:uppercase;letter-spacing:5px;font-size:12px}.hero h2{font-size:54px;line-height:1.02;margin:18px 0}.hero h2 span{color:#18adf5}.hero p{font-size:19px;max-width:630px}.btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-block;padding:14px 22px;border-radius:7px;font-weight:700;border:1px solid white}.btn.primary{background:#0aa4ee;border-color:#0aa4ee;color:white}.btn.dark{background:#052d61;color:white;border-color:#052d61}
section{padding:64px 0}.section-title{font-size:34px;color:#052d61;margin:0 0 10px}.lead{font-size:18px;color:#48627e;max-width:820px}.grid{display:grid;gap:18px}.services{grid-template-columns:repeat(3,1fr);margin-top:28px}.card{border:1px solid var(--line);border-radius:12px;padding:24px;background:white;box-shadow:0 8px 24px rgba(8,55,93,.06)}.card h3{color:#052d61;margin-top:8px}.icon{font-size:30px}.alt{background:var(--light)}
.products{grid-template-columns:repeat(4,1fr);margin-top:28px}.product{min-height:170px;border-radius:12px;padding:22px;color:white;display:flex;align-items:flex-end;background:linear-gradient(160deg,#0a76b7,#052d61)}.product h3{margin:0}
.split{display:grid;grid-template-columns:1.2fr .8fr;gap:34px;align-items:start}.values{grid-template-columns:repeat(2,1fr)}.statbar{background:#052d61;color:white;padding:26px 0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center}.stats b{font-size:22px;display:block}
.pagehero{background:linear-gradient(120deg,#052d61,#0a79b8);color:white;padding:70px 0}.pagehero h2{font-size:46px;margin:0 0 10px}.content h3{color:#052d61}.content ul{padding-left:20px}.cta{background:#eaf6fd;border-radius:16px;padding:32px;margin-top:30px}
form{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:25px}input,select,textarea{width:100%;padding:13px;border:1px solid #bdd0df;border-radius:7px;font:inherit}textarea{min-height:130px;grid-column:1/-1}.full{grid-column:1/-1}button{border:0;cursor:pointer}
footer{background:#031d3e;color:#dbe9f7;padding:45px 0 20px}footer .foot{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}footer h4{color:white}footer small{display:block;border-top:1px solid #31506f;margin-top:30px;padding-top:20px}
@media(max-width:800px){.topbar{align-items:flex-start}.brand{min-width:0}.brand h1{font-size:30px}.brand img{width:75px;height:75px}.contact{display:none}.hero h2{font-size:38px}.services,.products,.stats,.split,footer .foot{grid-template-columns:1fr}.values{grid-template-columns:1fr 1fr}form{grid-template-columns:1fr}.full,textarea{grid-column:1}}

.activity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:28px}.activity-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 8px 24px rgba(8,55,93,.07)}.activity-card img{width:100%;height:180px;object-fit:cover;display:block}.activity-card .body{padding:20px}.activity-card h3{margin:0 0 8px;color:#052d61}.activity-card p{margin:0;color:#48627e}@media(max-width:800px){.activity-grid{grid-template-columns:1fr}.activity-card img{height:210px}}


/* RTFDE Professional responsive activity pages */
:root{--navy:#062b5c;--blue:#0b91d9;--text:#17324f;--muted:#5b7188;--border:#d9e5ef;--soft:#f5f9fc}
.pro-wrap{width:min(1180px,92%);margin:auto}
.pro-intro{max-width:860px;margin:0 auto 34px;text-align:center}
.pro-intro h2{font-size:34px;color:var(--navy);margin:0 0 12px}
.pro-intro p{font-size:17px;color:var(--muted);margin:0}
.pro-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.pro-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--border);border-radius:14px;overflow:hidden;box-shadow:0 8px 24px rgba(6,43,92,.07);transition:transform .18s ease,box-shadow .18s ease;min-width:0}
.pro-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(6,43,92,.12)}
.pro-media{position:relative;aspect-ratio:16/9;overflow:hidden;background:#eaf1f7}
.pro-media img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.pro-body{padding:20px 20px 22px;display:flex;flex-direction:column;flex:1}
.pro-body h3{font-size:19px;line-height:1.25;color:var(--navy);margin:0 0 10px}
.pro-body p{font-size:15px;line-height:1.6;color:var(--muted);margin:0}
.pro-kicker{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--blue);margin-bottom:7px}
.pro-cta{margin-top:36px;padding:28px;border-radius:14px;background:linear-gradient(120deg,#062b5c,#0875ad);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:22px}
.pro-cta h3{margin:0 0 5px;color:#fff}.pro-cta p{margin:0;color:#dbefff}
@media(max-width:980px){.pro-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.pro-grid{grid-template-columns:1fr;gap:18px}.pro-intro{text-align:left}.pro-intro h2{font-size:28px}.pro-body{padding:17px}.pro-cta{align-items:flex-start;flex-direction:column}.pagehero h2{font-size:34px}}

/* Homepage concise layout — detailed activity photography lives only inside menu pages */
.home-core{padding:0;background:#fff}
.home-services{display:grid;grid-template-columns:repeat(6,1fr);border-bottom:1px solid #dbe8f2}
.home-service{text-align:center;padding:22px 12px;border-right:1px solid #dbe8f2;min-height:165px}
.home-service:last-child{border-right:0}.home-service:hover{background:#f5faff}
.home-icon{font-size:35px;color:#07377b;font-weight:700;height:45px}
.home-service h3{font-size:14px;line-height:1.2;color:#07377b;margin:8px 0}
.home-service p{font-size:12px;line-height:1.4;color:#506b87;margin:0}
.products-strip{padding:18px 0 24px;background:linear-gradient(90deg,#0757a0,#0a7fc2);color:#fff}
.products-head{display:flex;align-items:center;gap:22px;margin-bottom:14px}.products-head h2{margin:0;font-size:25px}.products-head p{margin:auto;font-size:12px;letter-spacing:.04em}.products-head a{border:1px solid #fff;border-radius:6px;padding:9px 14px;font-size:12px;font-weight:700}
.home-products{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}
.hp{background:#07336a;border:1px solid rgba(255,255,255,.55);padding:16px 12px;min-height:82px;display:flex;flex-direction:column;justify-content:end}
.hp b{font-size:13px}.hp span{font-size:11px;color:#d9ecfb;margin-top:4px}
@media(max-width:980px){.home-services{grid-template-columns:repeat(3,1fr)}.home-products{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.home-services{grid-template-columns:repeat(2,1fr)}.home-products{grid-template-columns:1fr 1fr}.products-head{align-items:flex-start;flex-direction:column}.products-head p{margin:0}.home-service{min-height:145px}}

/* Faithful homepage based on approved RTFDE reference */
.faith-hero{min-height:352px;background:linear-gradient(90deg,rgba(0,31,70,.94) 0%,rgba(0,46,88,.58) 44%,rgba(0,0,0,.05) 78%),url('hero-home.jpg') center/cover no-repeat;color:#fff}
.faith-hero-inner{min-height:352px;display:flex;align-items:center;justify-content:space-between}
.faith-copy{padding:30px 0;max-width:610px}.faith-eyebrow{font-size:11px;letter-spacing:5px;margin-bottom:16px}
.faith-copy h1{font-size:39px;line-height:1.04;margin:0 0 22px}.faith-copy h1 span{color:#11a9f4}.faith-copy p{font-size:16px;line-height:1.45}
.faith-world{text-align:center;color:#052d61;align-self:flex-start;margin-top:30px;font-size:21px}.faith-world i{display:block;width:36px;border-top:3px solid #052d61;margin:12px auto 38px}.faith-world strong{font-size:15px}
.faith-services{background:#fff}.fs-grid{display:grid;grid-template-columns:repeat(6,1fr)}
.fs-grid a{text-align:center;padding:17px 10px 20px;border-right:1px solid #d7e2ed;min-height:157px}.fs-grid a:last-child{border-right:0}.fs-grid a:hover{background:#f5faff}
.fs-grid span{display:block;height:43px;font-size:34px;color:#063783;font-weight:bold}.fs-grid b{display:block;color:#063783;font-size:13px;line-height:1.15;margin:6px 0 8px}.fs-grid small{font-size:11px;line-height:1.35;color:#506b87}
.faith-products{background:linear-gradient(90deg,#07569c,#0a7dbf);padding:13px 0 10px;color:#fff}.fp-head{display:flex;align-items:center;gap:20px;margin-bottom:10px}.fp-head h2{font-size:21px;margin:0}.fp-head p{font-size:10px;letter-spacing:.04em;margin:auto}.fp-head a{font-size:10px;border:1px solid #fff;border-radius:5px;padding:7px 11px;font-weight:bold}
.fp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.fp-grid>a{background:#07366f;border:1px solid rgba(255,255,255,.75);overflow:hidden}.fp-grid img{width:100%;height:87px;object-fit:cover;display:block}.fp-grid div{padding:7px 8px;min-height:52px}.fp-grid b{font-size:11px;line-height:1.08;display:block}.fp-grid small{font-size:9px}
.faith-about{display:grid;grid-template-columns:34% 38% 28%;background:#fff;min-height:205px}.fa-city{position:relative;overflow:hidden}.fa-city img{width:100%;height:100%;object-fit:cover}.fa-city>div{position:absolute;left:0;right:0;bottom:0;padding:17px 35px;background:linear-gradient(transparent,rgba(3,35,71,.88));color:#fff}.fa-city b,.fa-city small{display:block}
.fa-copy,.fa-values{padding:18px 24px}.fa-copy{border-right:1px solid #d7e2ed}.fa-copy h2,.fa-values h2{color:#052d61;margin:0 0 11px;font-size:20px}.fa-copy p{font-size:12px;line-height:1.35;margin:7px 0}.fa-copy .btn{padding:8px 16px;font-size:10px;float:right}
.fa-values>div{display:grid;grid-template-columns:1fr 1fr}.fa-values b{text-align:center;color:#079ce7;font-size:29px;padding:8px;border-right:1px solid #d7e2ed}.fa-values small{display:block;color:#063783;font-size:11px;margin-top:5px}
.faith-stats{display:grid;grid-template-columns:repeat(6,1fr);background:#042c60;color:#fff}.faith-stats>div{padding:12px 14px;border-right:1px solid #1c4b7e;text-align:center}.faith-stats b,.faith-stats small{display:block}.faith-stats b{font-size:12px}.faith-stats small{font-size:9px;color:#d9e8f7}
@media(max-width:980px){.faith-world{display:none}.fs-grid{grid-template-columns:repeat(3,1fr)}.fp-grid{grid-template-columns:repeat(4,1fr)}.faith-about{grid-template-columns:1fr 1fr}.fa-city{display:none}.faith-stats{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.faith-copy h1{font-size:31px}.faith-copy p br{display:none}.fs-grid{grid-template-columns:repeat(2,1fr)}.fp-head{align-items:flex-start;flex-direction:column}.fp-head p{margin:0}.fp-grid{grid-template-columns:repeat(2,1fr)}.faith-about{grid-template-columns:1fr}.fa-copy{border-right:0}.faith-stats{grid-template-columns:repeat(2,1fr)}}

/* Final uniform activity imagery */
.pro-grid{align-items:stretch}
.pro-card{height:100%}
.pro-media{aspect-ratio:16/9;background:#edf3f8}
.pro-media img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.pro-body{min-height:175px}

html:lang(zh-CN) body{font-family:Arial,"Microsoft YaHei","PingFang SC","Noto Sans CJK SC",sans-serif}html:lang(zh-CN) .pro-body p{line-height:1.85}html:lang(zh-CN) .pro-body h3{line-height:1.5}html:lang(en) .pro-body h3{overflow-wrap:break-word}html:lang(zh-CN) .pagehero h2{line-height:1.3}@media(max-width:600px){html:lang(zh-CN) .pagehero h2,html:lang(en) .pagehero h2{font-size:32px}html:lang(zh-CN) .topbar,html:lang(en) .topbar{flex-wrap:wrap}html:lang(zh-CN) .lang,html:lang(en) .lang{margin-left:auto}}
