/* Home page — luminous Sri Lankan coast */
.home-page { --home-navy:#082d41; --home-teal:#087ba9; --home-paper:#fbfffd; --home-muted:#426475; background:var(--home-paper); color:var(--home-navy); font-family:Inter,Aptos,"Segoe UI",Arial,sans-serif; }
.home-container { width:min(1240px,calc(100% - 80px)); margin-inline:auto; }
.home-page main { overflow:clip; }
.home-page h1,.home-page h2 { color:var(--home-navy); font-family:Georgia,"Times New Roman",serif; font-weight:400; letter-spacing:-.055em; text-wrap:balance; }
.home-page h2 { font-size:clamp(40px,4vw,62px); line-height:1.05; }
.home-page h2 em { color:#078bc1; font-weight:400; }
.home-page h3 { letter-spacing:-.035em; }
.home-label { display:flex; align-items:center; gap:11px; color:#087ba9; font-size:10px; line-height:1.6; font-weight:800; letter-spacing:.18em; text-transform:uppercase; }
.home-label:before { content:""; width:26px; height:2px; flex:none; border-radius:2px; background:#30AFFF; }
.home-section { position:relative; padding:112px 0; scroll-margin-top:100px; }
.home-section h2 { margin-top:20px; }
.home-button { display:inline-flex; align-items:center; justify-content:space-between; gap:34px; min-height:56px; padding:15px 20px 15px 23px; border:1px solid #159fe3; border-radius:999px; background:#30AFFF; color:#062c41; box-shadow:0 12px 30px rgba(48,175,255,.22); font-size:12px; font-weight:800; transition:background .25s,transform .25s,box-shadow .25s; }
.home-button:hover { background:#64c5ff; transform:translateY(-3px); box-shadow:0 18px 38px rgba(48,175,255,.3); }
.home-button>span,.home-link>span { color:#078bc1; font-family:Arial,sans-serif; font-size:20px; line-height:1; transition:transform .25s; }
.home-button>span { color:#062c41; }
.home-link { display:inline-flex; align-items:center; justify-content:space-between; gap:24px; padding:12px 0; border-bottom:1px solid rgba(8,45,65,.25); color:#082d41; font-size:12px; font-weight:800; }
.home-link:hover>span { transform:translate(3px,-3px); }
.home-link-light { color:#082d41; border-color:rgba(8,45,65,.25); }
.home-page a:focus-visible,.home-page button:focus-visible { outline:3px solid #30AFFF; outline-offset:5px; }

/* Hero */
.home-hero { position:relative; min-height:780px; min-height:min(900px,100svh); display:flex; flex-direction:column; justify-content:center; overflow:hidden; isolation:isolate; background:#eafafe; color:#082d41; }
.home-hero:before { content:""; position:absolute; z-index:-1; width:540px; height:540px; right:-130px; top:-180px; border:1px solid rgba(48,175,255,.36); border-radius:50%; box-shadow:0 0 0 95px rgba(146,238,255,.12),0 0 0 190px rgba(216,255,197,.12); animation:home-orbit 9s ease-in-out infinite; }
.home-hero:after { content:""; position:absolute; inset:0; z-index:-2; background:linear-gradient(90deg,rgba(251,255,253,.99) 0%,rgba(251,255,253,.96) 36%,rgba(251,255,253,.55) 59%,rgba(146,238,255,.08)),linear-gradient(0deg,rgba(216,255,197,.48),transparent 42%); }
.home-hero-image { position:absolute; inset:0; z-index:-3; width:100%; height:100%; object-fit:cover; object-position:72% center; animation:home-image-in 1.6s cubic-bezier(.2,.7,.2,1) both; }
.home-hero-content { padding-top:175px; padding-bottom:130px; }
.home-hero .home-label { color:#087ba9; }
.home-hero h1 { max-width:720px; margin:25px 0 24px; font-size:clamp(60px,6.8vw,101px); line-height:.94; }
.home-hero-copy { max-width:480px; color:#426475; font-size:15px; line-height:1.8; }
.home-hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:28px; margin-top:32px; }
.home-hero-bottom { position:absolute; bottom:28px; left:0; right:0; display:flex; justify-content:space-between; align-items:center; border-top:1px solid rgba(8,45,65,.14); padding-top:22px; }
.home-hero-bottom p,.home-hero-bottom a { display:flex; align-items:center; gap:12px; color:#4d7181; font-size:9px; font-weight:700; letter-spacing:.1em; }
.home-hero-bottom a { text-transform:uppercase; }.home-hero-bottom a>span { color:#078bc1; font-size:18px; margin-left:15px; }.home-coordinates { color:#76909b; margin-left:20px; font-size:8px; }.home-origin-dot { display:inline-block; flex:none; width:7px; height:7px; border-radius:50%; background:#30AFFF; box-shadow:0 0 0 6px rgba(48,175,255,.15); }

.home-assurance { background:linear-gradient(90deg,#92EEFF,#D8FFC5); color:#234f63; border:0; }
.home-assurance .home-container { display:grid; grid-template-columns:repeat(4,1fr); }
.home-assurance p { display:flex; align-items:center; justify-content:center; gap:18px; padding:28px 12px; border-right:1px solid rgba(8,45,65,.12); font-size:11px; font-weight:700; }.home-assurance p:first-child { border-left:1px solid rgba(8,45,65,.12); }.home-assurance p>span { display:grid; place-items:center; width:25px; height:25px; border-radius:50%; background:rgba(255,255,255,.55); color:#087ba9; font-size:8px; }

/* Introduction */
.home-intro { background:#fbfffd; }
.home-intro:before { content:""; position:absolute; left:-130px; top:80px; width:360px; height:360px; border-radius:50%; background:rgba(216,255,197,.34); filter:blur(8px); }
.home-intro-grid { position:relative; display:grid; grid-template-columns:1fr 1fr; column-gap:100px; row-gap:48px; }
.home-intro-copy { padding-top:34px; }.home-intro-copy>p { max-width:500px; color:#426475; font-size:15px; line-height:1.9; }.home-intro-copy .home-link { margin-top:16px; }
.home-stat { display:flex; gap:30px; align-items:center; padding:27px 28px; border:1px solid rgba(48,175,255,.15); border-radius:22px; background:linear-gradient(135deg,rgba(146,238,255,.18),rgba(216,255,197,.28)); transition:transform .28s ease,box-shadow .28s ease; }.home-stat:hover { transform:translateY(-6px); box-shadow:0 22px 55px rgba(22,110,146,.12); }.home-stat strong { font-family:Georgia,serif; font-size:66px; font-weight:400; letter-spacing:-.05em; line-height:1; }.home-stat strong>span { color:#078bc1; font-size:38px; vertical-align:top; }.home-stat p { max-width:180px; color:#426475; font-size:12px; line-height:1.6; }

/* Collection */
.home-collection { background:linear-gradient(180deg,#f1fbfc,#f8fffa); }
.home-section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:40px; margin-bottom:48px; }.home-section-heading>.home-link { flex-shrink:0; margin-bottom:5px; }
.home-products { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px; }.home-product { min-width:0; }.home-product-image { position:relative; aspect-ratio:4/5; overflow:hidden; border:1px solid rgba(48,175,255,.13); border-radius:24px; background:linear-gradient(135deg,#92EEFF,#C4F7CA); box-shadow:0 15px 40px rgba(22,110,146,.09); }.home-product-image:after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(8,45,65,.28),transparent 45%); pointer-events:none; }.home-product-image img { width:100%; height:100%; object-fit:cover; transition:transform .75s cubic-bezier(.2,.65,.3,1); }.home-product:nth-child(4n+1) img { object-position:10% center; }.home-product:nth-child(4n+2) img { object-position:62% center; }.home-product:nth-child(4n+3) img { object-position:78% center; }.home-product:nth-child(4n+4) img { object-position:92% center; }.home-product a:hover img { transform:scale(1.055); }.home-product-number { position:absolute; z-index:1; top:16px; left:16px; display:grid; place-items:center; width:38px; height:38px; border-radius:50%; background:rgba(251,255,253,.88); color:#082d41; font-size:9px; font-weight:800; }.home-product-cta { position:absolute; z-index:1; bottom:15px; right:15px; display:grid; place-items:center; width:42px; height:42px; border:0; border-radius:50%; color:#082d41; background:#92EEFF; box-shadow:0 8px 22px rgba(8,45,65,.14); font-size:21px; transition:background .25s,transform .25s; }.home-product a:hover .home-product-cta { background:#D8FFC5; transform:rotate(8deg); }.home-product-body { padding:21px 3px 4px; }.home-product-body .home-label { font-size:8px; }.home-product h3 { margin:9px 0; color:#082d41; font-size:20px; line-height:1.25; font-weight:650; }.home-species { color:#6b838d; font-family:Georgia,serif; font-style:italic; font-size:12px; }.home-collection-note { display:flex; justify-content:space-between; align-items:center; gap:28px; margin-top:42px; padding-top:23px; border-top:1px solid rgba(8,45,65,.14); }.home-collection-note>p { max-width:540px; color:#426475; font-size:12px; line-height:1.7; }.home-collection-note .home-link { flex-shrink:0; }

/* Process */
.home-process { background:#fbfffd; }.home-heading-copy { max-width:330px; padding-bottom:5px; color:#426475; font-size:14px; line-height:1.8; }.home-steps { display:grid; grid-template-columns:repeat(4,1fr); gap:0; padding:0; margin:50px 0 0; list-style:none; }.home-steps li { min-height:235px; padding:28px; border:1px solid rgba(48,175,255,.13); border-left:0; background:rgba(241,251,252,.55); transition:transform .28s ease,background .28s ease,box-shadow .28s ease; }.home-steps li:first-child { border-left:1px solid rgba(48,175,255,.13); border-radius:22px 0 0 22px; }.home-steps li:last-child { border-radius:0 22px 22px 0; }.home-steps li:hover { position:relative; z-index:1; transform:translateY(-8px); background:#fff; box-shadow:0 22px 55px rgba(22,110,146,.13); }.home-step-top { display:flex; justify-content:space-between; align-items:center; color:#078bc1; }.home-step-top>span { font-size:10px; font-weight:800; }.home-step-top>i { font-size:20px; font-style:normal; }.home-steps h3 { margin:34px 0 14px; color:#082d41; font-family:Georgia,serif; font-weight:400; font-size:30px; }.home-steps li>p { color:#426475; font-size:13px; line-height:1.8; }

/* Export network */
.home-network { background:linear-gradient(135deg,rgba(146,238,255,.58),rgba(196,247,202,.54)); color:#082d41; }.home-network:before { content:""; position:absolute; inset:18px; border:1px solid rgba(48,175,255,.14); border-radius:34px; pointer-events:none; }.home-network-grid { position:relative; display:grid; grid-template-columns:1fr 1.05fr; align-items:center; gap:48px; }.home-network .home-label { color:#087ba9; }.home-network h2 { color:#082d41; }.home-network-copy>p:not(.home-label) { margin-top:25px; max-width:460px; color:#426475; font-size:14px; line-height:1.85; }.home-markets { display:flex; flex-wrap:wrap; gap:10px 18px; margin:28px 0 20px; }.home-markets>span { display:flex; align-items:center; gap:8px; padding-bottom:9px; border-bottom:1px solid rgba(8,45,65,.13); color:#315e70; font-size:10px; }.home-markets b { color:#087ba9; font-size:8px; }.home-globe-panel { position:relative; min-width:0; padding:20px; border:1px solid rgba(48,175,255,.2); border-radius:28px; background:rgba(255,255,255,.56); box-shadow:0 24px 70px rgba(22,110,146,.12); }.home-page .home-globe { position:relative; inset:auto; width:100%; height:440px; overflow:hidden; opacity:1; animation:none; }.home-globe-caption { display:flex; align-items:center; gap:9px; padding-top:19px; border-top:1px solid rgba(8,45,65,.12); color:#607d89; font-size:8px; letter-spacing:.1em; }.home-globe-caption>span:last-child { margin-left:auto; }

/* Story */
.home-story { background:#fbfffd; }.home-story-grid { display:grid; grid-template-columns:1.08fr .92fr; gap:86px; align-items:center; }.home-story-photo { position:relative; margin:0; }.home-story-photo:before { content:""; position:absolute; inset:-15px 18px 20px -15px; border:1px solid rgba(48,175,255,.25); border-radius:28px; }.home-story-photo>img { position:relative; z-index:1; width:100%; aspect-ratio:1.05; height:auto; object-fit:cover; border-radius:28px; box-shadow:0 24px 70px rgba(22,110,146,.13); }.home-story-photo figcaption { display:flex; justify-content:space-between; gap:16px; margin-top:18px; color:#557789; font-size:8px; letter-spacing:.12em; }.home-story-photo figcaption>span { color:#6b838d; }.home-story-copy>p:not(.home-label) { max-width:460px; margin-top:22px; color:#426475; font-size:14px; line-height:1.85; }.home-story-copy>.home-link { margin-top:22px; }.home-story-signature { margin-top:34px; padding-top:25px; border-top:1px solid rgba(8,45,65,.14); }.home-story-signature>span { color:#087ba9; font-family:Georgia,serif; font-style:italic; font-size:24px; }.home-story-signature>p { margin-top:8px; color:#6b838d; font-size:10px; }

.home-enquiry { position:relative; overflow:hidden; padding:78px 0; background:linear-gradient(110deg,#92EEFF,#D8FFC5); }.home-enquiry:after { content:""; position:absolute; right:-120px; top:-230px; width:470px; height:470px; border:1px solid rgba(8,45,65,.13); border-radius:50%; box-shadow:0 0 0 65px rgba(255,255,255,.13),0 0 0 130px rgba(255,255,255,.1); }.home-enquiry-inner { position:relative; z-index:1; display:flex; justify-content:space-between; align-items:center; gap:50px; }.home-enquiry h2 { margin-top:20px; }.home-enquiry-inner>div:last-child>p { margin-bottom:24px; color:#315e70; font-size:14px; line-height:1.8; }

/* Entrance and scroll motion */
.home-entrance { animation:home-rise .9s cubic-bezier(.2,.7,.2,1) both; }.home-hero h1 { animation-delay:.08s; }.home-hero-copy { animation-delay:.16s; }.home-hero-actions { animation-delay:.24s; }.home-reveal { opacity:1; transform:none; }
@media (prefers-reduced-motion:no-preference) { .home-motion .home-reveal { opacity:0; transform:translateY(28px); transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1); }.home-motion .home-reveal.is-visible { opacity:1; transform:none; }.home-products .home-reveal:nth-child(4n+2),.home-steps .home-reveal:nth-child(2) { transition-delay:.07s; }.home-products .home-reveal:nth-child(4n+3),.home-steps .home-reveal:nth-child(3) { transition-delay:.14s; }.home-products .home-reveal:nth-child(4n+4),.home-steps .home-reveal:nth-child(4) { transition-delay:.21s; } }
@keyframes home-rise { from { opacity:0; transform:translateY(24px); } to { opacity:1; transform:none; } } @keyframes home-image-in { from { opacity:.65; transform:scale(1.055); } to { opacity:1; transform:scale(1); } } @keyframes home-orbit { 0%,100% { transform:translate3d(0,0,0); } 50% { transform:translate3d(-18px,22px,0); } }

@media (max-width:1100px) { .home-container { width:calc(100% - 56px); }.home-intro-grid { column-gap:55px; }.home-products { gap:18px; }.home-product h3 { font-size:18px; }.home-story-grid { gap:46px; }.home-network-grid { gap:26px; }.home-page .home-globe { height:380px; } }
@media (max-width:760px) {
  .home-container { width:calc(100% - 36px); }.home-section { padding:74px 0; }.home-hero { min-height:760px; }.home-hero-content { padding-top:150px; padding-bottom:140px; }.home-hero-image { object-position:68% center; }.home-hero:after { background:linear-gradient(90deg,rgba(251,255,253,.97),rgba(251,255,253,.66)),linear-gradient(0deg,rgba(216,255,197,.68),transparent 66%); }.home-hero h1 { max-width:580px; font-size:clamp(51px,9vw,72px); }.home-hero-copy { max-width:420px; font-size:14px; }.home-hero-actions { gap:16px 24px; }.home-hero .home-label { flex-wrap:wrap; font-size:8px; letter-spacing:.12em; }.home-coordinates { display:none; }.home-hero-bottom p,.home-hero-bottom a { font-size:7px; }.home-assurance .home-container { grid-template-columns:1fr 1fr; }.home-assurance p { justify-content:flex-start; padding:20px 10px; border-bottom:1px solid rgba(8,45,65,.1); }.home-assurance p:first-child { border-left:0; }.home-assurance p:nth-child(even) { border-right:0; padding-left:25px; }.home-intro-grid { gap:32px; }.home-intro-grid>div:first-child,.home-intro-copy { grid-column:1/-1; }.home-intro-copy { padding-top:0; }.home-stat { flex-direction:column; align-items:flex-start; gap:14px; padding:22px 18px; }.home-stat strong { font-size:56px; }.home-section-heading { align-items:flex-start; flex-direction:column; gap:20px; margin-bottom:32px; }.home-products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px 16px; }.home-product h3 { font-size:18px; }.home-product-body { padding-top:16px; }.home-collection-note { align-items:flex-start; flex-direction:column; gap:12px; }.home-steps { grid-template-columns:1fr 1fr; gap:14px; margin-top:34px; }.home-steps li,.home-steps li:first-child,.home-steps li:last-child { min-height:0; padding:22px 18px; border:1px solid rgba(48,175,255,.13); border-radius:20px; }.home-steps h3 { margin-top:22px; }.home-network:before { inset:9px; border-radius:25px; }.home-network-grid,.home-story-grid { grid-template-columns:1fr; gap:38px; }.home-globe-panel { border-radius:22px; }.home-page .home-globe { height:380px; max-width:520px; margin:auto; }.home-story-photo>img { aspect-ratio:1.2; border-radius:22px; }.home-story-photo:before { border-radius:22px; }.home-enquiry { padding:62px 0; }.home-enquiry-inner { flex-direction:column; align-items:flex-start; gap:28px; }
}
@media (max-width:420px) { .home-hero { min-height:780px; }.home-hero h1 { font-size:47px; }.home-hero-actions { flex-direction:column; align-items:flex-start; }.home-products { gap:26px 11px; }.home-product-image { border-radius:18px; }.home-product h3 { font-size:16px; }.home-product-body .home-label { font-size:7px; }.home-page .home-globe { height:310px; }.home-globe-caption { font-size:7px; }.home-steps { grid-template-columns:1fr; } }
@media (prefers-reduced-motion:reduce) { .home-page,.home-page * { scroll-behavior:auto!important; }.home-page *,.home-page *:before,.home-page *:after { animation:none!important; transition:none!important; } }

/* Blue glass refinement — higher blue tint and blur, minimal green. */
.home-hero:before { box-shadow:0 0 0 95px rgba(146,238,255,.19),0 0 0 190px rgba(48,175,255,.1); }
.home-hero:after { background:linear-gradient(90deg,rgba(250,254,255,.98) 0%,rgba(237,249,255,.91) 36%,rgba(224,246,255,.5) 59%,rgba(48,175,255,.12)),linear-gradient(0deg,rgba(146,238,255,.52),transparent 44%); }
.home-assurance { background:linear-gradient(90deg,#30AFFF,#92EEFF); }
.home-intro:before { background:rgba(48,175,255,.19); filter:blur(42px); }
.home-stat {
  border-color:rgba(48,175,255,.34);
  background:linear-gradient(135deg,rgba(255,255,255,.48),rgba(146,238,255,.3));
  box-shadow:0 24px 68px rgba(15,116,166,.17),inset 0 1px rgba(255,255,255,.9);
  backdrop-filter:blur(32px) saturate(155%);
  -webkit-backdrop-filter:blur(32px) saturate(155%);
}
.home-product-image { border-color:rgba(48,175,255,.3); background:linear-gradient(135deg,rgba(48,175,255,.44),rgba(146,238,255,.68)); box-shadow:0 22px 62px rgba(22,110,146,.16),inset 0 1px rgba(255,255,255,.78); }
.home-product a:hover .home-product-cta { background:#30AFFF; }
.home-steps li {
  border-color:rgba(48,175,255,.28);
  background:linear-gradient(145deg,rgba(255,255,255,.56),rgba(146,238,255,.2));
  box-shadow:inset 0 1px rgba(255,255,255,.86);
  backdrop-filter:blur(28px) saturate(150%);
  -webkit-backdrop-filter:blur(28px) saturate(150%);
}
.home-steps li:first-child { border-left-color:rgba(48,175,255,.28); }
.home-network { background:radial-gradient(circle at 82% 18%,rgba(48,175,255,.34),transparent 32rem),linear-gradient(135deg,rgba(218,246,255,.96),rgba(146,238,255,.68)); }
.home-globe-panel {
  border-color:rgba(48,175,255,.38);
  background:linear-gradient(135deg,rgba(255,255,255,.46),rgba(146,238,255,.3));
  box-shadow:0 32px 90px rgba(15,116,166,.23),inset 0 1px rgba(255,255,255,.92);
  backdrop-filter:blur(36px) saturate(160%);
  -webkit-backdrop-filter:blur(36px) saturate(160%);
}
.home-enquiry { background:radial-gradient(circle at 85% 10%,rgba(255,255,255,.36),transparent 22rem),linear-gradient(110deg,#30AFFF,#92EEFF); }
@media (max-width:760px) { .home-hero:after { background:linear-gradient(90deg,rgba(250,254,255,.97),rgba(222,246,255,.7)),linear-gradient(0deg,rgba(146,238,255,.68),transparent 66%); } }
